Skip to content

Projects

All projects

Research, experiments and small tools I've built outside client work. The code for each one is on GitHub.

World Models for Robot Navigation on Unitree Go2 preview

World Models for Robot Navigation on Unitree Go2

Master's capstone. An RSSM world model trained on 617K simulated and 10.8K real Go2 transitions, with a CEM planner and a proximity gate for safe navigation without a map.

GPT-2 (124M) from Scratch preview

GPT-2 (124M) from Scratch

A PyTorch rebuild of GPT-2 following Andrej Karpathy's Zero to Hero series: tokenizer, micrograd autograd engine, training loop, and SFT/RLHF/DPO experiments. There is a live demo.

Apsara AI Desktop Assistant preview

Apsara AI Desktop Assistant

Desktop assistant built with Electron, React and Python. It takes voice commands, can see the screen, and runs tasks on the computer through LangChain tools.

AI Website Generator preview

AI Website Generator

Describe a website and an LLM writes it. You can keep editing it with prompts, preview it live in a sandbox, and export the code.

Gemini Power Extension preview

Gemini Power Extension

Chrome extension that uses the Gemini API to read and summarise pages, work with clipboard content, and help with browser tasks.

Add2Calendar preview

Add2Calendar

Turns a plain-English event description into an .ics file and one-click Google Calendar or Outlook links.

Face Recognition Attendance System preview

Face Recognition Attendance System

Marks attendance from a camera feed by matching faces against stored embeddings using dlib and OpenCV, then logs each record.

Gesture Volume Controller preview

Gesture Volume Controller

Controls system volume with hand gestures, using MediaPipe hand landmarks and OpenCV.

Face Mask Detection preview

Face Mask Detection

A TensorFlow/Keras classifier using transfer learning to detect whether people in a video feed are wearing masks, with a Flask front end.

NodeMCU Smart Car preview

NodeMCU Smart Car

A WiFi-controlled car built on an ESP8266, written in C++ and driven from the Blynk app.