#web
Blog
- Type Systems as Documentation
How a good type system replaces half your documentation and all of your runtime errors.
- Progressive Enhancement Still Matters
Build for the baseline first. Layer on enhancements. Your users on flaky connections will thank you.
- CSS Is More Powerful Than You Think
Modern CSS can do things that used to require JavaScript. It's time to update your mental model.
- Set a Performance Budget
If you don't measure performance, you can't manage it. A budget gives your team a shared target.
Notes
- TIL: CSS color-mix() is production-ready
- Container queries change everything
- Astro content collections are genuinely good
- Semantic HTML is still underrated
- View Transitions API first impressions
- The :has() selector is a game changer
- Native CSS nesting is here
- Always respect prefers-reduced-motion
- The Popover API replaces a lot of JS
- CSS cascade layers solve specificity wars
- Bun's test runner is surprisingly good
- The <dialog> element handles modals properly
- The Temporal API is coming to replace Date
- CSS Anchor Positioning is wild
- Web Components finally make sense
- JSDoc types as a TypeScript alternative
- @scope is the CSS scoping we always wanted
- The light-dark() CSS function simplifies theming
- htmx makes SPAs feel unnecessary
- Edge computing isn't always faster
- Signals are taking over frontend reactivity
- CSS subgrid aligns nested grids perfectly
- Streaming HTML is underappreciated
- Testing Library's philosophy is right
- Scroll-driven animations in pure CSS
- Deno 2 goes all-in on Node compatibility
- WebAssembly components are the future of plugins
Projects
- Personal Website
A typography-focused personal space built with Astro.
- Type Scale Calculator
Interactive calculator for fluid typography scales using CSS clamp().
- Theme Builder
Visual tool for creating CSS custom property theme systems with OKLCH colors.
- Static Search
A zero-dependency client-side search engine for static sites.
- Minimal RSS Reader
A clean, keyboard-driven RSS reader built as a progressive web app.
- Reading Log
A simple app to track books read, with notes and ratings.
- OG Image Generator
Automatically generate Open Graph images for blog posts using Satori.
- Markdown Editor
A minimal, distraction-free Markdown editor built for focused writing.
- Link Garden
A curated collection of bookmarks, organized by topic and tagged for searchability.
- JSON Explorer
A fast, searchable JSON viewer for large files with syntax highlighting.
- Habit Tracker
A GitHub-contribution-style habit tracker as a static site.
- Focus Mode
A browser extension that blocks distracting sites during work sessions.
- DNS Lookup Tool
A simple web tool for querying DNS records with a clean interface.
- Contrast Checker
WCAG contrast ratio checker with support for OKLCH and modern color formats.
- Color Palette Generator
Generate accessible color palettes from a single seed color using OKLCH.