SikSak
ai · agents · fastapi · next.js
ChatGPT, Claude and the rest are great at getting things done. They're not built to make you better at anything. SikSak is an AI tutor optimised for learning: it plays mentor rather than assistant, keeps a memory of you to shape each session, and carries learning-specific tools that make it agentic instead of just chatty. There's a bit of special sauce in how it drills you, borrowed from how people prepared before AI existed.
Python and FastAPI on the back, Next.js on the front. In progress, and the project I think about most.
mentor persona · long-term memory · learning tools · agent loop
Claude Project Downloader
chrome extension · on the web store
Export the Claude.ai projects you already have access to: the knowledge-base files, the chats, or the whole project as one ZIP. PDFs and images come out untouched; formats that can't be read back losslessly get an honest choice instead of a silently broken file. Everything runs locally in your browser.
files · chats · zip · markdown conversion · local only
Mass Unfollow for Instagram
chrome extension · javascript
Reads your following and followers lists and sorts everyone into three tabs: not following you back, everyone you follow, and fans you could follow back. Tick who you like, fire, and it hands you a CSV of who it touched so you can undo your own mind. No password, no server, runs in your logged-in session. The README spends most of its length warning you that Instagram doesn't like this, because it doesn't.
bulk unfollow · follow back · csv export · rate caps
TrickleType
chrome extension · google docs
Types a draft you already have into a Google Doc at a human pace, over anywhere from one minute to four hours, instead of dropping the whole wall of text in at once. Paste, pick a duration, press start, and review it as it lands. Free, no account, and your text never leaves the browser.
Poison bottle
python · a riddle
A senior engineer gave me this one: a thousand bottles of wine, one is poisoned, you have ten prisoners and one night. Find the bottle. The answer is binary, and this script simulates it, with flags for how many bottles, how many prisoners, and which bottle is the bad one. Runs straight from curl.
curl -fsSL <raw url> | python3 - --bottles 512 --prisoners 9
World Cup 2026 predictor
numerical methods · python · westcliff bsit 400
Who wins the 2026 World Cup? A logistic regression trained on 49,000 international matches going back to 1872, then ten thousand Monte Carlo simulations of the tournament. No scikit-learn: the linear algebra is an LU solver, the regression is gradient descent, the decision threshold comes out of a Newton-Raphson root finder, and the features are ELO ratings computed from scratch.
Run main.py and it prints the top ten championship probabilities and saves the plots. Final project for Numerical Methods, and the reason I now actually understand what a solver does.
lu decomposition · gradient descent · newton-raphson · elo · monte carlo
Spotify valence explorer
ml · recommender · streamlit
When you like a track, finding others with the same feel is tedious and playlist radios are biased by popularity. This app takes a song and returns the ones closest to it in audio-feature space: valence, energy, acousticness, tempo. A nearest-neighbour index over a Kaggle dataset, with radar and heatmap views to see why two songs sit together. No Spotify API on purpose, to keep the focus on the model.
feature scaling · nearest neighbours · radar plots · eda notebooks
Invisible
cloud · aws · wireguard
A personal VPN on WireGuard, provisioned on AWS EC2. Made because commercial VPNs were slow, and because I had just earned my Solutions Architect Associate and wanted to use it.
free-tier friendly · fast · easy setup · zero logs