Christian Kamalu — websites and web apps for people and small businessesCHRISTIANKAMALU
flip the board
Websites & web apps for people & small businesses·Design through deploy
I design, build, and ship websites — and the apps behind them when a site isn’t enough. Hand-written, quick to load, and yours to own outright. Two client sites are live below, and the games further down are playable right on this page.
I build websites and web apps for people and small businesses — design through deploy, hand-written, no page-builder bloat. Behind that: 7+ years as a full-stack engineer in React, TypeScript, and Node.js, and an AI-first workflow that lets me learn a new business fast and ship fast without cutting the corners that matter — speed, accessibility, and something you can actually keep updated.
You get one person, start to finish — the first sketch, the copy, the build, the domain, the forms that land in your inbox, and the handoff that leaves you able to change your own words. No agency layers, no template you’ll outgrow, no monthly rent on your own website.
And when you need more than a site — accounts, a database, a booking flow, an admin screen, an integration with something you already run — I build that too. Same person, same hand-written approach, a different size of job. Say so early and I’ll scope it.
Taking on website and web app work — personal sites, small business, rebuilds of sites that have aged out, and the custom app when a site isn’t enough
Recently shipped: thetoddharris.com and buildingstrongwomen.com
Always: an LLM in the loop — it’s how this site got built, too
Client work
Sites I’ve built for other people.
Both are live right now — the green dot means deployed. Yours could be next.
Todd Harris
Sports commentator — full rebuild
Live
Rebuilt an Emmy-winning Olympic commentator’s site from scratch on Astro: a reel player that switches video host from one config line, a photo gallery he can refill himself, career credits that read in fifteen seconds, and a booking form straight to his inbox. Sitemap, metadata and IndexNow submission so the producers hiring him actually find it.
Marketing site and store for a community empowering women and girls — in sport and in life — built out from the brand identity they already had: palette, quote-card motif and pamphlet copy carried across intact. Newsletter, product-interest and contact forms wired up, and products flip from “Notify me” to “Buy” with one flag when checkout goes live.
Where the techniques come from. The dashed boxes are playable, right here on the page.
Pigeon
A carrier pigeon for files — it only flies home
In daily use
Self-hosted file and photo app, built because sftpgo was the wrong tool: one Docker container on a home server, reached over Tailscale, installable on a phone. Devices pair with a short code and are held to one folder. Chunked, resumable uploads that keep a photo’s capture date; a gallery by day; on-box face grouping that never uploads anything; duplicate finding; video remuxed by ffmpeg as it streams. Nothing is ever deleted — only trashed.
Conductor
Claude Code across every project — inbox to merged PR
In daily use
Desktop app that runs Claude Code over every project in a folder, on a schedule or on demand. Code review, bug hunts, audits and tasks you write in plain language file their findings into a triage inbox; approve one and it is built in an isolated worktree, pushed, judged by a second agent against the item, and merged from the app. Embedded terminals that survive restarts, a browser the sessions can drive, live previews, on-device dictation, and the whole thing from a phone over Tailscale. This site is maintained through it.
Foilet
A phone blocker — from bare metal to the app stores
In beta
Opt-in self-restriction for adults: a small BLE device locks your most distracting apps while the toilet lid is up; a Bed Foilet is next on the same protocol. Built end to end — embedded C firmware on a TI CC2340R5 with a 5+ year battery budget, custom PCB and enclosure, over-the-air updates, a SwiftUI iOS app on the Screen Time API and its Kotlin Android twin — plus a screen-time layer (pause before opening, daily limits, schedules, leaderboards) that needs no device at all.
Full-stack AI app: a React Native/TypeScript client and Node.js + PostgreSQL backend with LLM-driven meal planning behind a provider-agnostic layer. Hybrid retrieval-and-ranking pipeline, evaluation and cost controls, photo → meal logging, and text → image meal previews.
What the planner serves
Salmon poke bowl
620 kcal · 42g protein · ready in 15m
planner pick
Bank
Push-your-luck dice, live with friends
Live
Real-time multiplayer dice game — PIN lobbies, anonymous auth, and optimistic Firestore writes so every roll lands on every screen instantly. Configurable bust rules, doubles, and anonymous banking. Try the pocket version here, then host a real game.
Playable — one turn of Bank
Pot: 0Banked: 0grace: 3 safe rolls left
Dice show 3 and 5. Pot 0, banked 0. 3 safe rolls left in the grace window.
Live lobbies, synchronized rounds with a shared board, word challenges, round review and scoring — all on a single Firestore document per game. There are words hiding in this very board: trace adjacent tiles to find one.
Playable — 25 words hide in this board
No tiles selected.Tap adjacent tiles — try S→H→I→P
Led architecture and delivery across a two-product startup effort (2020–2022): integrated Thomson Reuters’ CLEAR API to turn large external data flows into an analytical platform, and built a client-facing marketplace from the ground up. Both products have since been retired.
Experience
Where I’ve shipped.
Independent2026 — present
Freelance Web Designer & Developer
Design and build websites and web apps for people and small businesses end to end — first sketch, copy, build, domain, deploy, and a handoff that leaves the owner able to edit their own words.
Shipped thetoddharris.com, an Astro rebuild for an Emmy-winning Olympic commentator, and buildingstrongwomen.com, a brand site and storefront built out from an existing identity.
Delinea2022 — 2026
Software Engineer
Built and maintained the company’s shared React component library — reusable UI shipped across its full suite of applications, partnering with product teams to standardize patterns.
Used AI tooling to ramp on unfamiliar areas of a large codebase quickly — a habit that’s central to how I deliver.
Litiscape & TradeAngel2020 — 2022
Software Lead
Led a two-product engineering effort as technical lead, owning architecture and delivery in a fast-moving startup.
Integrated Thomson Reuters’ CLEAR API to turn large external data flows into an analytical platform, and built a client-facing marketplace from the ground up.
DentalQore2019 — 2020
Associate Engineer & Technical Support
Rebuilt hundreds of client dental websites, adapting quickly across a high volume of varied requests.
Worked directly with customers in 1-on-1 support, translating non-technical needs into shipped improvements.