Chrome extension
Focus Guard
A focus helper that blocks distracting websites with a deliberate message so it is easier to return to intentional work.
Projects
An extended list of my public GitHub repositories, presented with brief product-style highlights.
Chrome extension
A focus helper that blocks distracting websites with a deliberate message so it is easier to return to intentional work.
Local RAG
Ask questions about your documents and see which sources support the answers. Upload files, explore cited passages, and save your conversations for later.
AI-assisted coding challenges
ContestCheck AI is a self-hosted application for evaluating Python programming submissions and drafting coding challenges with AI. It combines sandboxed code execution and PDF/XLSX reports with LangChain/LangGraph workflows, keeping teachers in control through explicit review and approval.
AI-powered story review
StoryCheck AI is a Java and Spring AI application that reviews user stories and suggests acceptance criteria, clarification questions, and test cases. It supports Ollama and OpenRouter model selection and validates structured AI responses before presenting the results.
Self-hosted AI chat
OpenNook AI is a self-hosted chat application built with Next.js, React, and the Vercel AI SDK. It supports streaming responses from selected OpenRouter models, rich rendering of code, mathematics and diagrams, and persistent conversations stored in PostgreSQL.
Offline predictive writing
TypeNudge is an offline desktop writing application that offers inline word and multi-word predictions as you type. Built with Electron, TypeScript, and SQLite, it uses local N-gram models, imported text sources, and optional learning from saved documents, without relying on cloud AI services.
AI-powered task planning
Task Flow AI is a self-hosted planner that turns goals into editable, time-boxed steps and tracks progress across multiple days. Built with Angular, NestJS, and PostgreSQL, it supports structured plan generation with Ollama or OpenRouter and optional Langfuse observability.
Planning poker
Estimate tasks together in real time. Create a room, invite teammates, vote privately, then reveal and discuss the results.
Local AI chat
Chat with AI models using Ollama, switch models, and keep your conversations in your browser. Follow responses as they appear, including formatted text, code, and diagrams.
Puzzle generator
Generate a new Queens puzzle with colorful regions and your preferred board size. Place one queen in each row, column and region, and see if you can solve the challenge.
Minesweeper
Play Minesweeper on your phone or computer with ready-made or custom boards. Reveal cells, flag suspected mines and clear the field — your first reveal is always safe.