I’m a junior at the College of William & Mary pursuing a B.S. in Computer Science. I work as a software engineer for the DisinfoLab at William & Mary, where I contribute to research on tracking and analyzing misinformation. Outside of academics, I’m an avid board game enthusiast, with favorites including Chess, Everdell, and Root.
A high-performance, lightweight chess engine built in modern C++, with support for both native desktop and WebAssembly builds. Its search is powered by a minimax core enhanced with iterative deepening, Alpha-beta pruning, move ordering, quiescence search, transposition tables with Zobrist hashing, and multithreading, achieving an estimated playing strength of around 2100 Elo.
HistoricalSpots is a full-stack web application built with Node.js, Express, and MongoDB that lets users explore, add, and review historical sites across the United States. The site uses EJS templates with Bootstrap for layout and styling, and integrates MapTiler to provide an interactive map view of all listed locations. User authentication is handled with Passport.js, while Cloudinary is used for image storage. The application includes full CRUD functionality, allowing registered users to create, update, and delete their own historical site entries, as well as leave reviews on others’ submissions.
An interactive fish animation built in C++ with SDL2, featuring smooth swimming arcs, natural edge avoidance, and articulated body movement. You can interact with him by grabbing his nose and dragging him around. Compiled to WebAssembly for seamless browser performance.
Interactive web app mapping fact-checking articles worldwide, built with OpenLayers for a smooth, responsive user experience. I led front-end development and created web scrapers to collect RSS feeds from UK fact-checking organizations.
A WhoHacks hackathon project that ingests academic syllabi, uses Perplexity’s API to parse them into structured JSON, and automatically creates calendar events via the Google Calendar API with OAuth 2.0 authentication.
A twist on Wordle where the game actively works against you. Instead of aiming to reveal the hidden word, it gives feedback designed to keep as many possible answers in play for as long as possible.
An interactive map of William & Mary that finds the quickest route between two buildings. Winner of the "Best Map & Data Hack" for TribeHacks 2024. I designed the back end, building a BFS-based graph traversal algorithm to calculate the shortest paths between academic buildings and integrated it with the front-end.
An analysis of the Indian public’s social media responses to horrific incidents involving women’s safety in the workplace. The study examined two events, comparing how online reactions changed over time. I developed web scrapers using Selenium to collect comments from social media platforms and assisted in data analysis.