Work
Everything I've built, labelled honestly.
Each project carries a stage label: live, prototype, research, in progress or academic. I use AI coding tools heavily. I scope the problem, direct the build, review the code, and test it.
Case studies
The three projects I can show in the most depth.
A decision-support tool for the moment before you click, pay or share a code. It turns a suspicious message, link, document or payment request into claims, evidence, contradictions, unknowns, a risk level and the safest next step.
- Next.js
- TypeScript
- pnpm monorepo
- Zod
- Drizzle
- Vitest
- Manifest V3
Menzync explores affordable, private wellbeing support for university students in Pakistan. It runs as two separate tracks: emotion-recognition research, and a student check-in prototype.
- Python
- FastAPI
- SQLite
- React
- Vite
- XLM-RoBERTa
- scikit-learn
- pytest
- Vitest
A text-analysis app built for the CREATE X 2026 AI App Development Challenge. My part was the Express backend: Gemini calls constrained to structured JSON, input validation, logging, and fallbacks that keep the app usable when the model is unavailable.
- TypeScript
- Express
- Gemini API
- React 19
- Tailwind CSS
Product prototypes
Working builds that run locally. Integrations that haven't been tested against the real vendor are described as such.
ClientDesk
Approval-first client operations for freelancers on WhatsApp.
- Prototype
Triages inbound client messages and drafts replies that a person must approve. Client facts are stored only with a verbatim quote checked against the source message. Adds scope briefs, scope-change detection, proposals, follow-ups and invoices. WhatsApp runs through a local simulated provider; the real integrations have not been run against the vendors.
- FastAPI
- PostgreSQL (RLS)
- Celery
- Redis
- Next.js
- TanStack Query
Aidesk
Document-grounded customer support.
- Prototype
Answers customer questions from a company's own documents with citations. Local MiniLM embeddings and a per-tenant FAISS index, a confidence gate before the model is called, an extractive fallback when no API key is set, and a human escalation queue.
- FastAPI
- FAISS
- Sentence-Transformers
- Gemini
- Next.js
DocFlow AI
Document processing with a human review step.
- Prototype
A six-stage pipeline (preprocess, classify, extract, validate, route, export) where each stage is a retryable background task. Versioned extraction schemas, decimal-exact validation, a review workspace, and a swappable model provider.
- FastAPI
- SQLAlchemy
- PostgreSQL
- Celery
- Redis
- Next.js
- Radix UI
Beacon
Knowledge search with cited answers.
- Prototype
Indexes uploaded company documents and answers questions with a synthesised, cited answer instead of a list of links. Tenant isolation through Postgres row-level security, Qdrant for retrieval, Claude for synthesis and reranking.
- FastAPI
- PostgreSQL (RLS)
- Qdrant
- Celery
- Claude API
- Next.js
Vantra
Business management for small teams.
- Prototype
A multi-tenant workspace for customers, projects, Kanban tasks and invoicing. Invoice amounts are stored in integer minor units so totals round exactly. Includes an assistant that answers questions about the workspace's own data.

- Next.js
- React
- Tailwind CSS
- Prisma
- PostgreSQL
AI Sales & Lead Automation
Background lead scoring and outreach drafts.
- Prototype
Clients describe their target customer and import leads. Claude scores each lead and drafts outreach in background jobs, so the API never waits on a model call. Includes Stripe webhook idempotency, rate limiting and request tracing.
- FastAPI
- Celery
- Redis
- PostgreSQL
- Claude API
- Stripe
- Docker
Competitive Intelligence System
Structured competitor reports from grounded search.
- Prototype
Gemini with Google Search grounding researches recent competitor activity and returns a structured report and PDF. Schema fallback, exponential backoff and a concurrency cap keep it inside free-tier rate limits.
- FastAPI
- Gemini
- Supabase
- ReportLab
- Next.js
ORVIA
Trade operations platform.
- In progress
An early-stage platform for exporters, covering buyers, products, quotes, orders, documents and export readiness.
- Next.js
- React
- Prisma
- TypeScript
- Zod
- Vitest
Coursework & competitions
University projects and competition entries.
CreateX text analysis app
Sentiment and zero-shot categorisation.
- Academic
A Streamlit app using DistilBERT for sentiment and BART-Large-MNLI for zero-shot categories, with bulk CSV processing and a Plotly dashboard. Built for CreateX 2026 at UMT Sialkot.
- Python
- Streamlit
- Hugging Face Transformers
- SQLite
- Plotly
Netflix testing study
Software Quality Engineering course project.
- Academic
A test plan, manual and automated test cases, and bug reports for the Netflix website and app, written with Saud Baseer as coursework. Not affiliated with Netflix.
- Test planning
- Manual testing
- Bug reporting
Deep learning coursework
Proposal and experiments.
- Academic
A BiLSTM + 1D-CNN term-project proposal, and a transformer experiment on the FER2013 facial-expression dataset.
- Python
- PyTorch
- TensorFlow
Network security labs
Packet analysis coursework.
- Academic
Wireshark capture and filtering labs on TCP, HTTP and DNS traffic, plus a cybersecurity audit course project.
- Wireshark
- Networking
Student grade manager
C++ console application.
- Academic
Manages student records and GPA calculation with object-oriented design and file storage.
- C++
- OOP
Android task manager
Offline productivity app.
- Academic
Task categories, priorities and reminders with offline SQLite storage.
- Java
- Android Studio
- SQLite