Everything. Ideas: -- Replace cl-markdown with 3bmd down the line? -- Use cl-inotify or similar for notifications instead of timers? TODO: ;;;; STATIC ;;;; implement head-inject/body-inject/navigation! ;;;; implement start-coleslaw, stop-coleslaw! ;;;; implement render-site!!! ;;;; implement atom feed. RSS too? ;;;; implement non-disqus comment support? ;;;; What do post update semantics look like? i.e. edit file to change tags. ;;; indices ;; what should it really look like, keeping in mind the API should be mostly ;; identical between the static and dynamic backend? ;; indexes should be id/name, title + posts. rewrite indices to use them. ;;; posts ;; Make find-by-date, post-url not suck. ;; -- re: find-by-date, aside from the subseq+string= grossness, the posts it ;; -- returns are not in reverse chronological order. Fix it! ;; -- re: post-url, improve escaping. ;;;; PLUGINS ;;;; implement: analytics, crossposting, disqus, mathjax, pygments, recaptcha, s3 ;;;; support input or output dirs being git repos + have git hooks? ;;; import ;; add output to HTML files when static-p is true ;; add comment handling ... (when comments ...) ;; support old URLs via use of post-aliases? ;;;; DYNAMIC ;;;; implement the whole damn backend! ;;;; make sure it has an admin interface! ;;;; -- spend two years trying to make it secure without HTTPS+SSL. fail. ;;;; rendering hooks (pygmentize, xposting) via :around/:before/:after methods ;; get run on rendered html before "storage" ;; xposting may be a rendering hook but may necessitate publishing hooks ;; again, these should be methods on a generic function ;;;; template hooks *ARE* pre-rendering-hooks. or methods on GFs. ;;;; they're methods on GFs you fool! work on the classes/constructors for post+indices ;;;; that's the only thing that makes sense. (eg 'disqus, 'mathjax) ;; run before the template is called to generate html or javascript includes ;; for a given template property (eg. comments, includes). they should probably be ;; methods on a generic function (eg. blog-comments, blog-includes)