Every project
The full list, newest first.
Talk532
FeaturedA realtime chat app with no server of its own
A chat you enter with a six-character code. There is no server of my own: the browser talks to Supabase directly, so the whole security boundary is a set of RLS policies written in SQL. Realtime covers whoever is online, and an edge function pushes to whoever is not.
- Role
- Solo project — schema, UI and operations
- Next.js
- React
- TypeScript
- Supabase
- PostgreSQL RLS
- Web Push
Read the case studyLive site — Talk532Atlas
FeaturedA design system six product teams share
Forty-odd components with accessibility baked in and dark mode assumed from day one. Change a token once and every product picks it up.
- Role
- Lead — architecture and build
- TypeScript
- React
- Tailwind CSS
- Storybook
- Vitest
Read the case studySource — AtlasPulse
FeaturedAn analytics dashboard whose first chart lands in under a second
Rebuilt around streaming rendering and server-side aggregation so millions of event rows still feel instant. LCP went from 4.1s to 1.3s.
- Role
- Frontend owner
- Next.js
- React
- D3
- PostgreSQL
- Vercel
Read the case studyLive site — Pulsetokens-cli
Ship Figma variables straight to CSS custom properties
A designer changes a token in Figma and a pull request opens. Built to kill the manual step in our design-system loop, now open source.
- Role
- Solo project
- TypeScript
- Node.js
- Figma API
- GitHub Actions
Signal Map
A live map of how crowded the Seoul metro is
A weekend project putting an open API onto a canvas map. Rendering is hand-managed to hold 60fps across sixty thousand points.
- Role
- Solo project
- Canvas
- TypeScript
- Vite
One-Step Checkout
FeaturedCollapsing a three-step checkout into one
Redesigned the checkout funnel of a 3M-session-a-month store. Validation, payment methods and error recovery all on one screen, for an 11% lift in mobile conversion.
- Role
- Frontend engineer
- React
- Redux
- Node.js
- Playwright
Read the case studyCampaign Microsites
Eighteen campaign sites, none below a Lighthouse 90
Two years of agency brand campaigns. I built shared interaction presets and a build template so each one did not start from scratch.
- Role
- Web developer
- JavaScript
- GSAP
- Three.js