How this site plans to grow
This site isn’t a portfolio. It’s a sandbox: whenever I want to learn a technology, I build something small and actually useful with it here.
The skeleton today:
@shiqi/pixel: a framework-free pixel drawing library: palette, reproducible random numbers, dithering, icons, and the wallpaper and doodle generators.@shiqi/ui: the component library. Every theme (Day, Night, 1984 Gold, Matcha) is a set of CSS variables, and components only read semantic variables, so adding a theme means adding one set of variables. See every component on the Components page.apps/web: server-side rendering with React Router. Pages arrive as HTML first, then become interactive React.- Server: a small cloud VM running the site, Redis and Caddy with Docker Compose; HTTPS certificates renew themselves.
What I want to build next:
- Course notes: one folder per course, written in MDX, with quizzes embedded right in them.
- Online quizzes: a question bank in Redis, tracking answers for spaced repetition.
- APIs:
/api/*is reserved already, starting with/api/health. - Kafka: once a bigger machine is in place, use it for event streams, like counting how often each toy gets played with (anonymously).
Slowly, and every step shipped in a state that can go live.