Writing

Blog

Notes on Svelte, TypeScript, and building fast, maintainable web apps.

Jun 29, 2026 3 min read

Angular Signal Forms — a beginner's guide

Angular v22 makes Signal Forms stable — build forms straight from a signal with a typed model, declarative validators, and reactive field state, no FormControl boilerplate. Here's how to build your first one.

Angular Forms Signals Tutorial
Read post
Jun 28, 2026 2 min read

What's new in Angular v22

Signal Forms, Angular Aria and async reactivity go stable, OnPush becomes the default, plus @Service, injectAsync, template upgrades and an @boundary preview.

Angular Signals TypeScript Signal Forms
Read post
Jun 28, 2026 4 min read

How to configure the Angular CLI MCP server

Wire Angular's built-in MCP server into Claude Code, Cursor or VS Code so your AI assistant generates project-aware code, searches the real docs and runs migrations.

Angular MCP AI Tooling
Read post
Jun 28, 2026 4 min read

How to add skills in Angular

Add Angular's official Agent Skills to Claude Code, Gemini CLI and other AI agents so your assistant generates idiomatic, up-to-date Angular instead of guessing from stale training data.

Angular Skills AI Tooling
Read post
Jun 20, 2026 1 min read

Building this portfolio with SvelteKit

The stack, the tradeoffs, and why I picked SvelteKit 2 + Svelte 5 runes, Tailwind v4, and Vercel for my personal site.

SvelteKit Svelte Tailwind CSS
Read post
May 12, 2026 1 min read

Why Svelte 5 runes clicked for me

Runes make reactivity explicit and portable. A quick tour of $state, $derived, and $effect — plus a live component embedded in this markdown.

Svelte TypeScript
Read post