mini-database

GitHub  ·  Full writeup

A relational database engine built from scratch in Java. Supports typed columns (INTEGER/DOUBLE/STRING/BOOLEAN), CSV-based persistence, and a SQL-like query language (SELECT, INSERT, DELETE, UPDATE) with WHERE clauses supporting AND/OR/NOT. Implements two index types, a HashMap-based index for O(1) equality lookups and a TreeMap-based index for sorted, range-based queries. Also includes a snapshot-based transaction system supporting commit and rollback. Actively in development.

SnapTranslate

GitHub

A Chrome/Edge (Manifest V3) browser extension that lets you drag-select a rectangular region of any webpage, capture it as an image, run it through OCR (via Tesseract.js), and translate the extracted text through the DeepL API. Built around a multi-context extension architecture: a background service worker, content script, popup, and an offscreen document that hosts the OCR worker. Configurable per-user DeepL API key, target language, and selectable OCR language packs.

social-network

GitHub

A social network engine modeling users and their connections as a weighted, undirected graph in Java. Supports graph persistence in a custom plaintext file format, BFS/DFS traversal, shortest weighted paths via Dijkstra's algorithm, mutual-friend-based friend suggestions, and community detection using connected components and label propagation.

HTTP/1.1 Web Server

GitHub

A multithreaded HTTP/1.1-compatible web server written in Java from raw sockets, with manually implemented HTTP request parsing and response construction. Supports GET/POST/PUT/DELETE, MIME-type-aware static file serving, and request routing that distinguishes 404 (no matching path) from 405 (method not allowed). Concurrent connections are handled via a thread pool. Still in active development, see the GitHub repo for current limitations.

chicago-traffic & worst-commute-finder

chicago-traffic on GitHub  ·  worst-commute-finder on GitHub

chicago-traffic is a Python package that fetches live and historical traffic-speed data and crash records from the City of Chicago's public data portal (Socrata SODA API). It's purely a data-ingestion library. Typed data models, pagination handling, and automatic routing across the city's split 2018-2023 / 2024-present historical datasets with no analysis built in. worst-commute-finder builds on top of it, using that data to surface the worst arterial routes/segments in the city during commute times.

CameraDynamics

GitHub

An earlier project (high school engineering course) building a panoramic video stitcher from scratch in Python. Combines three camera feeds into a single wide-angle video using homography-based projective transformations, with a Tkinter GUI for configuring camera angle, field of view, and baseline distance. Built in a team of two, working directly with school sports directors to gather requirements.