Flexible Lisp Blogware. Fork for personal use. Mirrored from https://github.com/kingcons/coleslaw originally.

TODO 2.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. Everything.
  2. THE OVERHAUL:
  3. Where is the data? (mongodb, postgresql, flat files, lisp data persisted with cl-store or similar, etc)
  4. What views are supported? (tag-based, reverse-chronological, single-post, etc)
  5. How is the data edited? (web-admin-interface-p)
  6. Who serves the data? (S3, Lisp server (hunchentoot/etc), System HTTPD (lighttpd/apache/etc)
  7. How are comments handled? (Cloud service (disqus/etc), Stored and generated locally, disabled)
  8. Old Coleslaw: Allow choices.
  9. New Coleslaw: Screw choices!
  10. "You can have it in any color as long as its black."
  11. What views are supported? tag-based, reverse-chronological, single-post
  12. Where is the data? git
  13. How is the data edited? git status/inotify
  14. Post generation? Static
  15. What is the post format? (markdown, plaintext, rst, etc, anything with a parser plugin!)
  16. How are comments handled? They're not supported.
  17. What about themes? Templates are themes. DUH.
  18. Plugins? Injection support for HEAD and BODY. What about predicate-based injection?
  19. How is it served? Hunchentoot, Lighttpd, S3, whomever!
  20. Historical Shifts
  21. It's interesting to note two things.
  22. 1) Blogs went from static->dynamic->static being hip.
  23. -- Some of this was motivated by technological fashion.
  24. 2) Comments went from being inessential->essential->inessential.
  25. -- This latter point is largely related to shifts in social networks.
  26. -- No more livejournal, RSS feeds don't promote communities.
  27. -- Blogs are platforms designed for content syndication/publishing, not intelligent discourse.
  28. Ideas:
  29. -- Replace cl-markdown with 3bmd down the line?
  30. -- Use cl-inotify or similar for notifications instead of timers?
  31. TODO:
  32. ;;;; STATIC
  33. ;;;; implement start-coleslaw, stop-coleslaw!
  34. ;;;; implement cl-store use+init, once every 24 hours?
  35. ;;;; implement update-site, parse-file support.
  36. ;;;; how many globals can we move into *storage* as keywords? ALL OF THEM!
  37. ;;;; --what about accessing them?
  38. ;;;; write a proper version of escape considering wild pathnames and valid URL issues
  39. ;;;; implement atom feed. RSS too?
  40. ;;;; implement non-disqus comment support?
  41. ;;;; What do post update semantics look like? i.e. edit file to change tags. what about post-removal?
  42. ;;;; PLUGINS
  43. ;;;; add activate-plugin, deactivate-plugin, :active-plugins?
  44. ;;;; implement: analytics, crossposting, disqus, mathjax, pygments, recaptcha
  45. ;;;; support input or output dirs being git repos + have git hooks?
  46. ;;; import
  47. ;; add comment handling ... (when comments ...)
  48. ;; support old URLs via use of post-aliases?