- Siri Thought Capture"Hey Siri, thought" — dictate, hit a URL, it's in the logs. Grep later, turn into journal entries. Works from the watch with a crown action.
- Schema-Filtered ReadsThe schema declares @pii. The reader applies the filter. Same file, different view per consumer. Access control lives in the reader, not the storage.
- Per-Repo VaultOne encrypted file per repo. One script to show credentials. openssl and a password. No secrets manager, no service, no monthly cost.
- MCP Log ReaderAn MCP server that reads CloudFront logs from S3. Query events, verify deploys, check comments — all from the chat without running CLI commands.
- jmuxA Python terminal multiplexer. Two panes — Kiro CLI and a live markdown preview. SSH in, jmux journal.md, resume where you left off. The state is in git.
- GitHub as CMSA custom GUI that commits to the repo. GitHub is the backend. No CMS server, no database. The WordPress experience without WordPress.
- Contact FormSame pattern as comments. A form that hits /events/contact/submit. CloudFront logs it. You grep when you want. The log is the inbox.
- Compose QueriesGraphQL fragments compose into one query. @defer means they don't have to come back at the same time. Parallel fetches to different files, progressive rendering. No server.
- CleanupSmall things skipped in the flow. Batch them later.
- Business CardAn SVG business card — the logo and a URL. That's all you need when the site is the portfolio.
- Bluesky HandleSetting up thetube.today as a Bluesky handle. Your domain is your identity — no platform namespace required.
- 9P at Internet ScalePlan 9 and NFS had it right — files as the interface, namespace as the abstraction, stateless operations. HTTPS + CDN + JWT is the same model without the LAN constraint.
- Same Hooks, No ServerReact hooks with the same API as Apollo or urql — but the backend is files and a CDN. No GraphQL server. The hook hides the implementation.
- Real-Time CommentsSame as moderated. Add a Lambda. That's it. The architecture doesn't change. The form doesn't change. The logging doesn't change.
- Plugins Are Specs, Not CodeA plugin isn't code you install — it's a spec you combine with your platform spec. AI generates the implementation that fits your site. No compatibility issues.
- Moderated CommentsComments via batch events. You review, approve, they appear on next build. No spam, no real-time pressure. The log holds everything until you're ready.
- The URL Is the Log EntryThe browser fetches a URL with the event in the query string. CloudFront logs the request. No backend, no analytics service. The log is a side effect of the request existing.
- Don't Let Your Repo Be a Junk DrawerThe private repo started with fonts and ended up with Lambda code and CDK stacks. "Private" is not a concern — it's an access control label. The fork isn't a fix — it's an upgrade, and upgrades are cheap.
- Short URLs in the FrontmatterA short URL in a post's frontmatter, a CloudFront function generated at build time. No third-party service, no database, no link rot.
- Building theTubeHow I built this blog — static site, real auth, role-based content, no server.
- Copilot Commit MessagesUpdated VSCode the other day and noticed Copilot will now create git commit messages. Since most of mine are "did some stuff" I figured, what's the worst that could happen.