Authogonal
This application was made over the course of a year as a coursework project. It may not seem like much, but I had to implement many algorithms and structures that you would usually import from external crates. I implemented SHA1, SHA256, and SHA512 hashing algorithms all from the ground up, as well as a hash table and a sort-by-key merge sort. The program supports more 2FA configuration options than most authentication programs, including count-based codes, all 3 aforementioned SHA algorithms, and timeframes other than 30s.
I'd been learning Rust using the Rust Book and the Rustlings course instead of paying attention to being taught Python for the tenth time, so it felt appropriate to write the project in it. This was an interesting choice because I was aware that my markers had no experience reading the language, although it did let me showcase some complex techniques not possible using Python. This meant that I had extra work to do for the writeup, which ended up being 160 pages long! In the end, I was given full marks for the project, so it was worth the hundreds of hours I devoted to it.
After exams were done, I decided to revisit the application for a public release. I updated the dependencies, which fortunately fixed an issue where the application refused to run on my linux machine. I then came up with a name (previously it was simply called TOTP), created an embeddable icon for the executable, and compiled it for the 3 major operating systems.