Click on a project for more details!
A rating predictor allows you to view your rating in a DMOJ contest immediately instead of having to wait until the contest is over. Based on your previous rating and volatility, as well as your ranking in the contest, it predicts your new rating and volatility.
A small library to generate test cases for use in online programming competitions. The library is easy to use, while still being powerful enough for generating complicated test data. It also features custom generators, such as a
GraphGenerator, which can generate various types of graphs, a
StringGenerator, and an
Easy installation via PIP:
pip install testcase-generator
Discord integration for Django, supporting error reporting via webhooks. The integration consists of two handlers,
DiscordMessageHandler which includes a partial traceback along with the error, and
SimpleDiscordMessageHandler which only displays the error.
A simple GUI to-do/task manager with CalDAV support, supporting servers such as Nextcloud Tasks and Radicale.
A repository for solutions to problems on various online judges, including the DMOJ, AtCoder, and SPOJ.
The repository also includes solutions to problems from:
APIO, BOI, Bubble Cup, CCC/CCO, COCI, DWITE, ECOO, Facebook Hacker Cup, ICPC, IOI, JOI.
A personal multi-purpose Discord bot featuring a plethora of commands and features, including, but not limited to, swear tracker, awake time tracker, built-in minesweeper, quote tracker, and Minecraft server status checker.
A vertical platformer game built on top of a choose your own adventure for my ICS final project. This game was built in Java using JavaFX as its GUI library, and Apache Maven for project management.
A problem/contest judge system through Discord, inspired by the DMOJ. Features rated contests, and problems, as well as the ability to modify problems, contests, judges, users, and submissions, all through the Discord interface.
An implementation of the classic code-breaking board game, Mastermind, in Java.
A chess program (no AI) written in C++ from scratch. It allows two players to play against each other, and displays the board accordingly depending on which player's turn it is.
A Docker setup for the DMOJ: Modern Online Judge site. It contains Dockerfiles for all of the DMOJ's essential services, as well its nice-to-have services, such as texoid and mathoid. All services are managed with a
docker-compose.yml, and images are rebuilt and pushed weekly to the Docker Hub.
Xournal++ plugin for mapping Huion H610 Pro tablet buttons to Xournal++ actions.