Blog
- Generated with 11ty
- Posts written in Markdown
- Built and hosted by Cloudflare Pages (because it’s faster than Vercel or GitHub), images served out of an R2 bucket
- I don’t give anybody
Cloudflareany money to host this - Based technically and intellectually on Emily Horsman’s blog
- My friends runs on the same stack, more-or-less1
Image pipeline
This is kind of a mix of things I came up with and built, and how Emily Horsman does it on her blog.
- Take pictures
- Start writing, usually I throw in image names into the markdown of the article before the photos come off the camera so I can write while doing the thing (eg being on the train)
- Photos come off the camera, edited in Lightroom
- Exported and dropped into the folder for the post.
- At build time (on my machine, it knows this from an environment variable) 11ty processes the images using eleventy-img into webps. For local preview, it dumps them into a
passthrough/cdn
folder that gets copied into the build output (locally only). - I commit to git
- I run a script that scoops up all the processed images out of the
passthrough/cdn
folder, runs a simple name-diff to figure out what’s new, and dumps those into another R2 bucket (cdn.natalie.lol), where they will be served from. - Push to git (source images go to a cloudflare R2 bucket acting as a git lfs server). This triggers a Cloudflare Pages build, where images are ignored (there’s a hard 25MB limit on Pages sites) and replaced with their CDN url.
Gear
- I mostly shoot on my Fuji X-T30 II or my iPhone Pro Max (what a stupid name). Sometimes I shoot with a Nikon D3400.
- I record sounds with a Zoom H1n hand recorder, sometimes with a (homemade) induction mic.
Coming soon, I promise ↩︎