indexBlog with git
2021-09-30
{:tags [:git :blog] :draft true}
Blogging with git
- Posts are markdown files in a git repository
- Each post has metadata that is expressed as one edn map at the begining of each post file
- A web application exposes the posts as html from a local git repository
- Posts are read to a datomic database each time the git repo is updated
- Posts publishing date is given in it's metadata.
- Posts without publishing date are considered drafts.
- RSS feed that lists published posts in the publishing date order
- Posts can be edited after publishing but this does not affect their publish date
- Authoring can be done in the github web user interface
- A command in the web application to pull from github
- A version history view with diffing functionality
- Implemented by parsing the log and diff output from git
- Each post has an id generated by (format "%x" (- (System/currentTimeMillis) 1446790411973))
- This is used in RSS guid -field and post urls
- The web application shows a new id when it's called with the url "/new-post-id".This id can then be copied to a new post file.
This site is generated with zetgen