Work · Selected engagements
I take on a few projects a year
I'm CPO at Supsindex. Outside that, I take a small number of outside engagements — the kind where the hard part is deciding what to build, not typing it. Product and UI/UX work, backends and APIs, and automation that removes a recurring cost. Everything below is code you can open and run.
What I do
Three kinds of work
If your problem doesn't sit in one of these, I'll say so and point you somewhere better — that's cheaper for both of us than finding out in week three.
Product & UI/UX
Information architecture, wireframes, then UI in Figma delivered with components, colour variables and a style guide — so the pages you build after I leave still look like the ones I made.
Backends & APIs
Python (FastAPI, Flask, Starlette), Node/Express, PostgreSQL. Integrations built so you can always tell what actually succeeded, not just what returned 200.
Automation & data
Scrapers, spreadsheet pipelines, classification models, Claude plugins. The test is simple: does it delete a recurring task from someone's week?
Selected work
Ten things, all open source
No screenshots-only case studies. Every item links to a repository you can clone, read and run.
Persian RAG Sales Agent
Persian AI sales advisor with one rule: live stock never enters the vector store. RAG cites its source, a typed SQL tool answers availability, and off-topic questions get refused. Runs with no API key.
Health Risk Classifier
Diagnostic classification on a medical dataset. Full scikit-learn pipeline, cross-validation, ROC-AUC around 0.99, with ROC curve and confusion matrix in the output.
IoT Digital-Twin Dashboard
Live sensor dashboard in vanilla HTML/CSS/JS — hand-built Canvas chart, live stat cards, threshold alert feed, fully responsive. Zero dependencies, zero console errors.
Research Registry (DeSci)
Solidity contract that registers, timestamps and proves ownership of research artefacts by content hash. Events, custom errors for gas, full Hardhat test suite.
Nutrient Interaction Checker
Library and CLI that flags interactions between foods, supplements and drugs. Data-driven rule engine, synonym normalisation, full pytest suite, no external dependencies.
Notes REST API
REST API in Python (Starlette/ASGI) with Pydantic. Full CRUD, input validation, correct status codes, 17 passing tests, and a structure that survives being extended.
Responsive SaaS Landing Page
Production-grade landing page in vanilla HTML/CSS/JS — mobile menu, live Canvas chart, client-side validated contact form, smooth scroll. No framework, no console errors.
Web Scraper to CSV
Configurable scraper (requests + BeautifulSoup) that turns HTML into CSV or JSON. Offline test fixtures, real error handling, and polite request behaviour by default.
Excel / CSV Automation
pandas + openpyxl tool that turns messy spreadsheets into one tidy workbook with a summary sheet and a chart. Built for the report someone rebuilds by hand every month.
Telegram To-Do Bot
Task bot in Python with the business logic separated from the transport and fully tested — so the rules can change without touching the bot. Add, list, complete, clear.