2026
An AI-powered smart planner that turns your task list into a plan for the day.
My flagship project, built end to end: a Java/Spring Boot core API, a dedicated Python/FastAPI AI microservice that talks to Google Gemini, and a React/TypeScript app — containerized behind NGINX and running in production.
- SmartCheck AI: a standalone RAG microservice (FastAPI + Pydantic, ChromaDB for semantic retrieval, Gemini as the LLM) that analyzes your workload and generates an execution roadmap.
- Core REST API in Java/Spring Boot with a strict MySQL schema via Hibernate (JPA), secured with JWT and Spring Security.
- Docker Compose infrastructure with an NGINX API gateway and Let's Encrypt SSL, plus a GitHub Actions pipeline running JUnit/Mockito tests and building images.
- Java
- Spring Boot
- Python
- FastAPI
- Gemini
- ChromaDB
- React
- TypeScript
- Docker
- NGINX
2026
Matrix-free Krylov subspace solvers in Python — the code behind my maths thesis.
From-scratch implementations of CG (with preconditioning), GMRES, BiCG, CGS and BiCGSTAB, benchmarked on real sparse matrices from the SuiteSparse collection — structural engineering, fluid dynamics, oil reservoir simulation.
- Python
- NumPy
- SciPy
- Matplotlib
2026
An MCP server that lets Claude (or any MCP host) search, control and curate your Spotify.
A local Model Context Protocol server exposing the Spotify Web API as tools, resources and prompts — from “what am I listening to” to building a playlist from a YouTube mix's tracklist. Every architecture decision is logged in a public decision journal.
- 20+ typed MCP tools (search, playback, playlists, top tracks…) plus URI-addressed resources and reusable prompts, served over stdio.
- A separate FastAPI login helper for the OAuth2 Authorization Code + PKCE flow, with tokens in SQLite and transparent refresh.
- Honest about limits: known Spotify-side bugs and quota restrictions are documented per tool instead of hidden.
- Python
- FastAPI
- MCP
- OAuth2 PKCE
- SQLModel
2026
A real Linux terminal wrapped in scaffolding that explains, protects and teaches — and fades away as you learn.
Not a simulated terminal and not a chatbot with a command box: it runs your actual bash/zsh and adds a live danger semaphore, plain-language subtitles, translated errors, a filesystem map, a command diary and an optional AI copilot — each one something you can dial down as you outgrow it.
- The danger semaphore is deterministic rules, never AI: commands are parsed with tree-sitter-bash and classified by an exhaustively unit-tested classifier.
- The AI copilot (Gemini by default, Claude as a drop-in) turns natural language into commands — and every suggestion is re-validated by the same local rules before you see it.
- A real pty (node-pty) instrumented via OSC 133/OSC 7, `rm` previews with a freedesktop.org trash and undo, and 122 unit tests on strict TypeScript.
- TypeScript
- Electron
- React
- xterm.js
- tree-sitter
- Gemini
- Claude
2026
A multi-agent system that plans campervan routes — legal constraints, overnight spots and fuel costs.
A hub-and-spoke architecture built with LangGraph: a Gemini-based supervisor reads a shared route state and delegates to specialized agents until every field is filled, then returns a structured plan through a FastAPI endpoint.
- Supervisor with Pydantic structured outputs and conditional routing over a shared RouteState.
- RAG legal agent (ChromaDB over regulation PDFs), SQL agent for campsites and points of interest, and a math agent (NumPy/SciPy) for fuel and driving-time estimates.
- Python
- LangGraph
- Gemini
- FastAPI
- ChromaDB
- Docker
2026
A fast, SEO-friendly starter for landing pages and small business sites.
Astro islands with React and Tailwind CSS: a flash-free dark mode that survives view transitions, a booking calendar with slot selection, accordion FAQs and a contact form with submission states.
- Astro
- React
- Tailwind CSS
- TypeScript

