Projects
Smaller things: internal tooling, side projects and open-source fixes.
At KONA
Smaller pieces of work at KONA that support the systems in the case studies.
Running and deploying KONA's agent stack
One command to build, check, start and stop the agent stack on a laptop, a harness for testing logins end to end, a Claude Code skill for the team, and deploy jobs that fail when the old process is still running.
Python · Bash · YAML · Next.js · React 19 · TypeScript · JWT · JWKS · Jenkins · Claude CodePasskey login for KONA's identity provider
An OAuth2 and OpenID Connect server on Spring Authorization Server, with passkey (WebAuthn) login and Okta federation. I co-built the server and wrote its React passkey client.
Java · Spring Boot · Spring Authorization Server · Spring Security · OAuth2 · OpenID Connect · WebAuthn · Okta · ReactPersonal
Things I build for myself, mostly around AI tools and apps.
LMCanvas: branching Claude Code chats
A fork of an MIT-licensed canvas where each Claude Code chat is a tree you can branch. I added context-size tracking, one-click and automatic compaction, retries with less context, a model per question, and private access over Tailscale.
TypeScript · React 19 · Electron · Claude Agent SDK · Tailscale Serve · WebSocket · BunTools I built around Claude Code
I use Claude Code every day, so I built tools around it: a local dashboard that keeps my usage history after Claude Code deletes old transcripts, and a rewritten status line that shows rate limits, context and session tokens at a glance.
TypeScript · Next.js 15 · React 19 · SQLite · Recharts · Zod · Vitest · launchd · Bash · jqAdda: a bilingual party game
A party game for friends in the same room, with word decks in Bangla and English. Each game room runs as its own Cloudflare Durable Object, and one Svelte 5 web app also ships as iOS and Android apps. A solo project with about 296 tests.
TypeScript · Svelte 5 · Vite · PartyKit · Cloudflare Workers · Durable Objects · Capacitor · PWA · PlaywrightOpen source
Small fixes to projects I use. The larger whichllm fix has its own case study.
Earlier work
From my time at BJIT.
DeliveryExpress
An Ethereum courier dApp I built as a trainee software engineer at BJIT, with React, Next.js, Node.js and Solidity.
React · Next.js · Node.js · Solidity · Ethereum