setup
Uses
The tools that survive daily use — the frontend stack I ship in, the pieces that build this site, and the AI-run second brain behind it. A living list, updated as the setup evolves.
this site: Astro →Tailwind →Base UI →MDX →Pages
frontend
01The stack I ship in every day.
- React 19 + TypeScript the day-job stack — typed components end to end
- Tailwind CSS v4 utility-first styling, design tokens via @theme
- shadcn/ui on Base UI component registry, themed to my own violet tokens
- Vite the bundler under everything — fast HMR
- Next.js app-router React for the console — SSR to the edge
- TanStack Start, Query, Router, Table, Form — data, routing and tables
- Zustand small, unceremonious client state
- Radix + Base UI headless primitives under the component kit
- Zod + Axios schema-validated data over typed HTTP
- Cloudflare Workers where the apps deploy — edge runtime
- Turborepo + pnpm the monorepo that holds every app and the UI kit
- Voximplant + WebRTC voice AI and in-app video — the call center and video calling
daily drivers
02The editor, API and comms tools I live in.
- VS Code the editor
- Postman poking APIs before wiring them up
- Slack where the team coordinates
- Git + GitHub version control and reviews
- Claude Code pair-builds with me daily
this site
03What this page you’re reading is built with — static, zero JS by default.
- Astro static output, ships zero JS unless a component asks for it
- MDX blog posts — markdown with components when needed
- GitHub Pages + Actions push to main → build → deploy, no manual step
- satori → resvg build-time OG images seeded from the knowledge-graph motif
- Shiki dual-theme syntax highlighting in posts
knowledge & ai
04The second brain, and what keeps it current.
- Obsidian the vault — plain markdown, git-synced
- Claude Code operates the vault and builds with me daily
- MCP how AI clients reach the vault as tools
- Python vault tooling — health checks, retrieval evals
models & agents
05What I reach for across models, providers and agent tooling.
- Claude my daily driver for building and writing
- Many providers OpenAI, Google, DeepSeek, Copilot, OpenRouter — matched to the task
- Ollama local models on my own box — Llama, Gemma
- Agent CLIs Claude Code, OpenCode, Kilo Code, OpenCLAW and friends
- MCP + skills tools, agent skills and workflows wired into daily work
- n8n (self-hosted) automation on my own DigitalOcean box
- Context engineering the real skill — the right context in front of the model, every time
workflow
06How it all runs — the habits, not the hardware.
- Git-synced vault one knowledge base, every surface, synced over git
- AI-first notes written for a machine to read first — preamble, links, sources
- Scheduled agents jobs that maintain the vault on a cadence — nothing deleted, only added
- Mobile capture quick thoughts on the go via a Telegram bot, processed later
- Retrieval eval search quality is a number I can move, not a vibe