home about projects resume ↗ write back

Things I've built.

A mix of paid work, school projects, and things I built because I wanted them to exist. The first four have live sites — open them in a tab. The rest live on GitHub.

JavaScript Web Audio Live site

Conductor's Metronome

A neumorphic metronome using traditional tempo markings. Links each BPM to classical works with embedded recordings, and supports custom subdivisions, time signatures, and user-added pieces.

JavaScript Web Audio Live site

Pitcher Online

A musical drone and tuning tool for musicians. Play sustained tones with multiple timbres and tuning systems, right in the browser.

HTML JavaScript Live site

Border

A small browser tool for adding clean borders to images. Useful for photography and preparing prints or social posts.

HTML JavaScript Live site

D&D Battle Tracker

A web-based initiative and combat tracker for tabletop sessions. Manage turn order, HP, conditions, and more — all in the browser.

JavaScript Chrome Extension

Twitch Detox

Chrome extension to detox the Twitch experience. Hides recommended channels, auto-playing streams, and homepage distractions while keeping followed channels visible.

JavaScript Chrome Extension

Reddit Detox

Chrome extension to detox the Reddit experience. Removes recommendations, promoted posts, and adds friction overlays to help stay intentional.

JavaScript Chrome Extension

YouTube Detox

Chrome extension to detox the YouTube experience. Hides Shorts, recommendations, and autoplay, and adds friction delays to keep browsing intentional.

Python Kokoro TTS

pdf2audio

Converts PDFs to audiobooks with chapter-by-chapter audio output using Kokoro TTS. Drop in a PDF, get a full narrated audiobook back.

Python RL PyTorch

Adaptive Strategy RL

Strategy-conditioned RL — teaching one neural network multiple play-styles via strategy-vector conditioning. Proof of concept on LunarLander, targeting Rocket League.

Python Image Processing

Color Wheel Histogram

Python script that visualizes the color distribution of an image on an HSV color wheel. Useful for color analysis and photography.

Python ML Spotify API SQL

Million Spotify Playlists

Led a team predicting playlist success on a 36 GB dataset of 20M songs. Built a sequential cache for 10× faster data access. 89% accuracy using ensemble methods (Random Forests, Logistic Regression, Ridge).

PyTorch CNN Google Cloud

GeoGuessr AI

CNN that identifies GPS coordinates from Google Street View images. Collected 50K images via custom data mining and trained the model to 85% accuracy on large coordinate bins.

PyTorch GAIL RL

AbiGAIL

Inverse Reinforcement Learning bot for Rocket League. Uses GAIL to imitate expert behavior, trained on thousands of high-level matches via the RLBot API.

Python ChatGPT DALL-E 3 Discord API

Gnomebot

Discord bot I've maintained for 4+ years. Uses GPT and DALL-E 3 for conversations and image generation. Tracks quotes, monitors air quality, integrates with Google APIs. Self-updating and always live.

Java OpenAI API Android Spotify API

AI Playlist Generator

Android app with Google Assistant integration. Describe a vibe ("music for walking on the beach") and it generates a Spotify playlist using ChatGPT to pick the songs.

PyTorch Transformers GAIL / VAIL

Transformers for IRL

Research project using GAIL and VAIL with Transformer-based reward networks for Inverse RL. Tested on LunarLander-v4. Transformers gave more stable training but converged slower than linear networks.

Python TCP Sockets PyGame Android

Codenames Online

Full implementation of Codenames using TCP sockets and Pygame. Plays like the real thing. Comes with an Android companion app for local multiplayer.

Python NEAT RL Numpy

Tetris RL

Built a Tetris engine from scratch and trained agents using hand-implemented genetic algorithms and NEAT. The models learned to survive for several lines but lacked long-term strategy.

Unity AR C#

D&D AR Battle Map

AR app that places and moves player tokens on real-world surfaces for D&D. Replaces physical miniatures — players can scale and reposition characters for tabletop play.

Python SIMIO Simulation

SFO Passenger Traffic Sim

Discrete-event simulation of passenger flow at SFO's international terminal. Used real TSA and flight data to model de-boarding, gate assignments, and wait times.

That's the index. Write back if you want to talk about any of them.
Noam