This is my blog

This blog is built using Clojure, using Babashka and Bootleg. Source code can be found in bb-src.

Dependencies

Common workflows

Building the blog:

make site

Continously build blog and serve on localhost:3000:

overmind s

Rebuild

  • github action to commit back to repo: https://github.com/marketplace/actions/add-commit

  • rebuild rss https://epiccastle.io/blog/generating-xml-with-bootleg/

  • deploy from directory instead of boot fileset via basic clj invocation

  • github action to build site and commit it

  • commit generated site to Git repo

  • github action to add uuid

  • Randomly Chosen portraits as small opengraph Image

  • Integrate snippet of text into opengraph view

  • Unstyled archive page

  • hide some posts from "Other posts" list

  • Put permalinks into metadata to make it final

  • Don’t do redirects, just maintain URLs of old posts

  • GitHub action to add permalink if missing

  • Drafts are published at their UUID location with metadata to not be indexed

  • https://pushover.net for visibility

  • There could be a hidden edit button leading to prose.io

  • A preprocessing step could turn raw links to YouTube or twitter into more useful embeds/views

  • Preprocessing step could replace add combinations of tachyons classes to matching nodes

  • revisit blockquote styling https://www.martinklepsch.org/posts/living-small.html

  • make headings bold

AWS User Policy

{
	"Version": "2012-10-17",
	"Statement": [
		{
			"Sid": "",
			"Effect": "Allow",
			"Action": "s3:*",
			"Resource": [
				"arn:aws:s3:::{BUCKET_NAME}/*",
				"arn:aws:s3:::{BUCKET_NAME}"
			]
		},
		{
			"Sid": "",
			"Effect": "Allow",
			"Action": "cloudfront:CreateInvalidation",
			"Resource": [
				"*"
			]
		}
	]
}