// writing
Writing — Page 13
A mix of technical deep-dives, career reflections, and dispatches from the road.

obsidianJul 3, 2026· 3 min
Obsidian Bases: Native Database Views Without Dataview
Bases is Obsidian's built-in core plugin for turning notes and their properties into live tables and cards.
read more →

developmentJul 2, 2026· 3 min
Invoker Commands: Wiring Buttons to Dialogs and Popovers Without JavaScript
The Invoker Commands API lets a button declare what it controls with command and commandfor, replacing modal and popover glue code with plain HTML.
read more →

developmentJul 2, 2026· 3 min
CSS field-sizing: Auto-Growing Textareas Without a Line of JavaScript
The auto-growing textarea has been a JavaScript rite of passage for years. A single CSS declaration now does the whole job, and it works on inputs and…
read more →

developmentJul 1, 2026· 4 min
Fallow: A Codebase Truth Layer for Agent-Written Code
Fallow is a Rust-native tool that maps your whole TS/JS codebase to catch dead code, duplication, and architecture drift.
read more →

obsidianJun 30, 2026· 3 min
Obsidian for Developers: Make Your Vault Work Like Your Codebase
Obsidian is plain-text markdown all the way down, which means the same tools you use on code work on your notes.
read more →

developmentJun 29, 2026· 3 min
Building a Claude Code Status Line With Usage Bars and a Clickable Repo
A walkthrough of a custom Claude Code status line that renders context and rate-limit usage as colored bars and turns your repo name into a clickable link.
read more →

developmentJun 29, 2026· 3 min
The Navigation API: Stop Wrestling with history.pushState
The Navigation API hit Baseline in early 2026, giving SPAs a single, purpose-built place to intercept and manage routing.
read more →

developmentJun 28, 2026· 3 min
Grimicorn Neon: When a Calm Theme Goes Loud
The high-voltage variant of Grimicorn keeps every semantic role and swaps in eight electric hexes. Here's what changes, what doesn't, and the contrast…
read more →

developmentJun 28, 2026· 3 min
scheduler.yield(): The One-Liner That Fixes Your INP
A practical look at scheduler.yield(), the browser API that breaks up long tasks and keeps the main thread responsive without the setTimeout penalty.
read more →
// the newsletter