Blog
← BackBuilding pi-image-preview: Inline Image Previews with Kitty Graphics in tmux
How I built a Pi coding agent extension that renders inline image thumbnails using the kitty graphics protocol — with full tmux support via Unicode placeholder characters.
Building pi-git-worktrees: Parallel AI Agent Sessions with Git Worktrees
How I built a Pi coding agent extension that spawns multiple AI agents in isolated git worktrees, orchestrated from a single tmux session with live status widgets and floating popups.
How I Let My QA Tester Run Our Full Stack App Without Any Dev Experience
A bash script that checks prerequisites, installs missing tools, checks out the right branches, and spins up the entire frontend + backend stack — so non-technical QA testers can test locally with one command.
Fix Tailwind CSS Canonical Classes in Neovim with One Keymap
Automate fixing non-canonical Tailwind CSS classes across your entire buffer using Neovim's LSP diagnostics and a custom Lua function.
Building Nyx: A Tailwind CSS Formatter & Linter
How I built Nyx, a CLI tool that canonicalizes non-standard Tailwind CSS class names and sorts them using Tailwind's official ordering — powered by @tailwindcss/oxide.
Neovim Treesitter Highlighting with SQL Generic Types (TypeScript)
Fix Treesitter's SQL syntax highlighting for TypeScript generics, non-null assertions, and custom helper functions like tx.
Solana Raydium SDK Swap Example in TypeScript with Magic SDK
How to perform a token swap on Solana using the Raydium SDK in TypeScript, with Magic SDK for signing transactions.