Everything. Ideas: -- Replace cl-markdown with 3bmd down the line? -- Use cl-inotify or similar for notifications instead of timers? -- plugins -> lastfm widget, analytics, rss/atom, disqus, akismet, etc. ;; TODO: ;; consider add-to-index/setf-index, create-index, create-post. ;; then ensure the indices API is okay and GET GOING. ;;;; DYNAMIC ;;;; STATIC ;;;; implement head-inject/body-inject/navigation! ;;;; implement start-coleslaw, stop-coleslaw! ;;;; non-disqus comment support? ;;; indexes ;; what should it really look like, keeping in mind the API should be mostly ;; identical between the static and dynamic backend? ;;; 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, escaping is insufficient and there are collisions by title. ;; -- What are alternatives? ;;;; PLUGINS ;;;; implement disqus support ;;; import ;; add output to HTML files when static-p is true ;; add comment handling ... (when comments ...) ;; support old URLs via use of post-aliases? ;;;; 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)