Things I've built,shipped, & the numbers behind them.
Each project here started as a complicated, manual, often unloved process, and ended as a system that quietly does its job. Click in for the long version.
- 2026 · Education TechnologyIn build
OurKeyin LMS
First-party LMS replacing Keyin’s Teams-and-spreadsheets workflow with built-in authoring, grading, and attendance.
Director of Product & Technical Delivery · native LMS
- 2025 · Integration / Workflow Automation~90%
Microsoft Teams Integration Layer
Long-running integration that pulls Teams data into Keyin’s systems and surfaces at-risk students weekly.
Product Manager · faster class setup
- 2025 · AI / Data PlatformDays→min
AI-Powered Internal Analytics
Natural-language analytics over operational data. Non-technical staff get answers in minutes, not engineering tickets.
Product Manager · to answer
- 2025 · Operational Platform40–60%
Micro-credentials Operational Hub
Single self-serve hub for micro-credential operations: registrations, billing, eligibility, retargeting, and audit.
Product Manager · less manual effort
- 2025 · Internal ToolsSelf-serve
Communications Platform
Self-serve communications platform for templates, audience targeting, scheduling, and notifications.
Product Manager · campaigns
- 2024 · Workflow AutomationOne-click
Admissions & Registration Pipeline
End-to-end student intake: application, document review, merge, registration, and provincial reporting.
Product Manager · provincial reporting
Side projects
Small tools, built for myself.
Things I build casually to scratch my own itch, then publish to GitHub in case they are useful to someone else. Mostly little AI tools and workflow glue.
- Chrome Extension · Manifest V3 · TypeScript
AI Prompt Copilot
A Chrome extension that adds a one-click “Improve Prompt” button to ChatGPT, Claude, Gemini, and Grok. It rewrites whatever you’ve typed into a sharper, more complete prompt before you send it, using your own API key, with nothing logged or routed through a third-party server. I built it because I kept hand-editing my own throwaway prompts and wanted the good-prompt habit baked into the input box.
- MCP · Cloudflare Workers · Obsidian
Obsidian MCP on Cloudflare
A remote MCP server, deployed on Cloudflare, that exposes my Obsidian vault to Claude on any device. It turns a folder of markdown notes into a knowledge base I can query, and have Claude maintain, from web and mobile instead of just my desktop. I built it because my notes were stuck on one machine and I wanted them to travel with me.
- PowerShell · Windows Terminal
WT Session Restore
A PowerShell tool that restores your Windows Terminal tabs after a reboot, each one back in its working folder and re-running its last command. It captures state quietly as you work and is built for forced or automatic shutdowns, where you never closed anything. I built it because I keep five to ten terminals open across different projects, mostly Claude and Codex sessions, and lost the whole layout every time Windows restarted.
- reMarkable · Obsidian · Automation
reMarkable to Obsidian
An automation that pulls my handwritten reMarkable notes into my Obsidian vault on their own, so the thinking I do on the tablet stops living in a silo and joins the rest of my knowledge base. I built it because the notes I valued most were the ones stuck on the device, and copying them over by hand never actually happened. Full writeup on Substack.
Earlier work
Older projects, kept for context.
Freelance WordPress builds, university desktop apps, and a couple of NodeJS side-projects from the years before product. Not representative of current work. Kept here because some of these still help someone find me.
- Archive◆
Kotha
WordPress - Archive◆
Yunus Sports Hub
WordPress - Archive◆
Yunus Environment Hub
WordPress - Archive◆
Asaf-Ud-Doulah
WordPress - Archive◆
Aiub Cyber Gaming Fest
WordPress - Archive◆
AfroDiasporaSF
WordPress - Archive◆
Abuur Fund
WordPress - Archive◆
Bridging Somaliland
WordPress - Archive◆
Nova Trade & Travels
WordPress - Archive◆
CharityHub
ConceptUML, ER, prototype. A prototype built to manage donations between donors and receivers, plus volunteer recruiting.
- Archive◆
Multiple Location Inventory Management
Web ApplicationPHP (Laravel), MySQL. Real-life inventory management system operable from two different locations.
- Archive◆
GhurteJai (NodeJS)
Web ApplicationNodeJS, Express, MySQL. Tour and hotel booking system with dashboards for hotel admins and clients.