A collection of scripts that implement and attack the famous Mersenne Twister PRNG (included in many standard libraries) and several variants.
Proof-of-concept of a simple end-to-end encrypted chat program. Currently supports two-way communication with elliptic curve key exchange.
Performant natural language generator using Markov chains. Can also be used to generate sequences of letters. Includes a Flask-based web frontend.
Secure command-line password manager written in C++. Allows users to create, save, and load encrypted (AES-256) password lists locally.
Responsive portfolio website built with industry-standard frameworks. Previously PHP-based, now runs on Flask. Hosted on a GCP instance.
Linux Snap for Dogecoin Core (the official Dogecoin wallet), available on the Snap Store. Packages official binaries for easy installation.
AI-powered tic-tac-toe game with a graphical user interface. Uses the minimax algorithm and alpha-beta pruning. Can be modified to play other games as well.
Innovative social media platform for families. Allows user to create "trees" for their family and populate the "leaves" with knowledge, anecdotes, or media.
Script to archive all of a browser's (Chromium-based or Firefox) bookmarks to the Internet Archive. Does not require registration, up to 100k pages/day.
COVID-19 tracker that uses public APIs to calculate how many cases are within a certain distance of any address in Ontario. Includes self-assessment tool.
Flexible web monitoring tool for websites with no built-in notification system. Configured with YAML and supports desktop/email notifications and file logging.
Website for my robotics team, Audeamus 8574. Uses Jekyll to generate site from markdown files. Also integrates with MailChimp to send monthly newsletters.
Multi-platform Worldle clone implemented with Java's standard library GUI methods. Integrates country database and calculations for distance and bearing.
Financial tracker that can track stocks, cryptocurrencies, currencies, and other assets with simple configuration and a terminal-based GUI.
Created for the SHAD program, this 15x15cm tile that showcases my interests and passions also doubles as a solderable breadboard. Created with KiCad.
High-speed Python implementation of the famous cellular automaton. Turing-complete, it can theoretically simulate any computer algorithm in existence.
Archive to hold all of my competitive programming solutions. Contains solutions and some explanations for CCC, Codeforces, DMOJ, CSES, and other sites.
Open-source platform for hosting cybersecurity challenges and contests. Comprehensive test suite included. Used in production by the MGCI CTF Club.
Repository of my solutions to the cryptopals cryptography challenges. Incomplete, but I occasionally work on them for a while. Also contains several useful scripts.
Coursework for the 2021 CS50ai: Introduction to Artificial Intelligence with Python course offered by Harvard University. Wide variety of algorithms.
Object-oriented implemention of RC4-drop[n], a modification of the simple and speedy RC4 stream cipher that defends against several attacks.
Coursework for the 2021 CS50x: Introduction to Computer Science course offered by Harvard University. Wide variety of languages and technologies.
Tool for archiving code submissions to a wide variety of competitive programming sites in bulk. Available on PyPi. Useful for creating solution archives.