1 min read
Welcome to the new site. This post doubles as a test page for the blog, so it uses every kind of block a post can contain.
I build complete products: mobile apps, web apps and the backends behind them. The old resume only told half of that story, so this site puts the projects, the stack and the writing in one place.
| Layer | Tools |
|---|---|
| UI | Flutter, React |
| API | Node.js, WebSockets |
| Data | Supabase, Firebase |
| Delivery | GitHub Actions, Fastlane |
Posts get syntax highlighting that follows the site theme, plus a copy button:
export function readingTime(text: string, wordsPerMinute = 220) {
const words = text.trim().split(/\s+/).filter(Boolean).length
return Math.max(1, Math.round(words / wordsPerMinute))
}Inline code like npm run dev works too.
Ship small, ship often, and keep the whole stack in your head.