COMPLETEDAI AutomationCOMPLETEDRunning Coach AIA personal AI running coach that plans daily runs, logs workouts from chat, and answers progress questions from training history.n8nAirtableSupabase Vector StoreOpen Case File →
IN PROGRESSCurrent BuildIN PROGRESSAxionA Python-first RAG exploration project built to understand retrieval systems from the inside out.PythonMySQLQdrantOpen Case File →
COMPLETEDProductCOMPLETEDRoast a person based on PlaylistA Spotify OAuth application that reads playlist data and generates a playful roast from songs and artists.PythonFastAPISQLiteOpen Case File →
COMPLETEDPrototypeCOMPLETEDWikipedia SpeedrunnerA prototype that tries to move from one Wikipedia page to another using links, scraping, and embedding similarity.PythonBeautifulSoupSentence TransformersOpen Case File →
COMPLETEDToolingCOMPLETEDNextLeeA LeetCode problem selector that recommends the next problem from difficulty and topic commands.PythonGraphQLRequestsOpen Case File →
COMPLETEDAI ResearchCOMPLETEDMARTA Multi-Agent Research Team that plans, retrieves, stores, and refines research into structured reports.PythonStreamlitGroq APIOpen Case File →
ARCHIVEDProductARCHIVEDNutriKnowA food label analysis app that scans ingredients and gives feedback based on dietary needs and restrictions.PythonFastAPIGemini APIOpen Case File →
COMPLETEDToolingCOMPLETEDNews Article SummarizerA lightweight article summarizer that fetches news from a link and estimates article polarity.PythonTextBlobTkinterOpen Case File →
Running Coach AIStrava logged the runs, but remembering the plan, deciding what to run next, and making sense of progress still took manual effort.Use n8n to orchestrate chat workflows, Airtable to store running data, Supabase Vector Store to retrieve personal running history, and an LLM to generate context-aware coaching responses.Personal workflow in useAI agent with retrieved running contextn8n, Airtable, Supabase Vector Store, LLMs, Workflow Automation
AxionTutorial RAG builds did not feel close enough to production RAG, so the project started as a deeper exploration of every moving part.Build the retrieval workflow directly with Python, MySQL, Qdrant, and bge-m3 sentence-transformer embeddings while avoiding heavy orchestration frameworks.Under developmentFully human codedPython, MySQL, Qdrant, Sentence Transformers
Roast a person based on PlaylistTurn personal playlist data into a funny generated experience while learning how real OAuth flows behave.Use FastAPI, SQLite, Spotify Developer API access, cookies, refresh tokens, and Groq API generation.Not deployedFully developed by handPython, FastAPI, SQLite, Spotify API, OAuthGitHub
Wikipedia SpeedrunnerRecreate the Wikipedia speedrun challenge as a machine-driven navigation experiment.Scrape page links with BeautifulSoup and requests, compare semantic similarity with sentence-transformers, and prototype the flow in Tkinter.Not deployedFully developed by handPython, BeautifulSoup, Sentence Transformers, TkinterGitHub
NextLeeJob hunting and LeetCode practice made choosing the next useful problem harder than expected.Query LeetCode's exposed GraphQL endpoints with Python requests and cache results locally for fast problem selection.Not deployedFully developed by handPython, GraphQL, Requests, Disk CacheGitHub
MARTResearch across web, papers, PDFs, DOCX files, and technical sources needs a coordinated workflow instead of one-off searching.Combine Streamlit, Groq, FAISS, sentence-transformers, LangChain, async scraping, document parsing, and reviewer/summarizer agent loops.Not deployedAI assisted with human planning and thinkingPython, Streamlit, Groq API, FAISS, LangChainGitHub
NutriKnowUseful ingredient analysis apps were hard to access locally or were behind paywalls.Use FastAPI, Gemini API, EasyOCR, and Pydantic to read ingredient labels, explain ingredients, and tailor feedback.Deployed earlier and later taken downAI assisted frontend and backendPython, FastAPI, Gemini API, EasyOCR, PydanticGitHub
News Article SummarizerQuickly understand long news articles and whether their tone is positive or negative.Fetch article content with Newspaper, summarize it, and estimate polarity with TextBlob in a Tkinter interface.Not deployedFully human writtenPython, TextBlob, Tkinter, NewspaperGitHub