Coin Calculator
This short script (written in C) takes in an input for the amount of change due, and calculates the minimum number of coins required to return the change.
Caesar Encryption
This C script requires a user to provide a Caesar key via command line arguments when running the program, then prompts the user for some plain text. It encrypts the plain text using the Caesar key and returns the encrypted text.
Runoff Election
This script written in C can simulate a Runoff Election. A user provides candidates via the command line arguments, and is then prompted for the number of voters. Once the votes are cast, it determines and outputs the election winner.
Image Recovery
This C program scans a raw memory card image in 512-byte blocks to detect JPEG signatures and recover each image as a separate file.
Speller
This C program checks text for misspelled words by loading a dictionary into a hash table and using hash functions to efficiently search and validate each word.
DNA
This Python program analyzes a DNA sequence by counting the longest consecutive repeats of specific STR patterns, then compares those counts against a CSV file to identify whose DNA the sample most closely matches.
Fiftyville
This SQL investigation works through a multi-table SQLite database to trace a suspects actions using filtering and relational queries, ultimately identifying the thief, the city they fled to, and the accomplice who helped them escape. The ultimate Cluedo - for SQL.
Homepage
This project is a multi-page personal website using HTML, CSS, JavaScript, and Bootstrap. It focuses on clean structure, responsive design, custom styling, and small interactive features to create a simple but polished homepage.
Finance
CS50 Finance is a Flask web application that uses APIs to grab accurate stock prices to allow users to experiment without the risk of real money. It keeps hold of your "transaction history", and allows users to sign up or login via a SQL database.
Final Project
For my final CS50 project, I used Python to create a command line revision tool. Imagine a flashcard app mixed with a timed typing test — that's TypeWise. Multiple game modes, .txt imports, and beautifully styled with the Rich library.
File Organiser
A lightweight Python script that automatically sorts files from a folder into categorized subfolders based on file extensions, perfect for quick and easy file organisation.
Portfolio Website
A Flask based website that uses HTML, CSS, and JS to display all my projects and information in an easy-to-navigate way, created in under a week as preparation for a college interview.