Noise2Notes is a Python CLI tool that converts an MP3
recording into MIDI and then into readable music notation. It builds on
libraries like Aubio, music21 and
SoundFile, originally prototyped in Google Colab.
The idea came from my relative pitch and the frustration of trying to
share musical ideas with people who don’t read or improvise the same way.
Instead of trying to remember every riff I play, I can record myself and
let the tool generate the notes as a starting point for sharing and editing.
This mobile Snake game was built for a
Mobile App and Cloud assignment on my Computing degree.
The front end uses Dart with Flutter, while the backend
uses PHP APIs to handle authentication and score
persistence against a MySQL database running on Ubuntu.
I also created supporting HTML/PHPMyAdmin views with user restrictions to
make backend administration safer. Longer-term, I’d like to polish this and
ship it as a downloadable Android APK.
I wanted to build a shed and quickly discovered that most floor plan tools
were either too clunky or too restrictive. So I wrote my own modelling tool
in plain JavaScript.
The goal is to make it easy to sketch a 2D layout with accurate dimensions
directly in the browser. A future iteration will integrate
OpenAI to automatically suggest or generate a 3D model
from the 2D plan.
View this live
Eden Pharmacy is a live website I developed for a
community pharmacy in Portadown. The site gives customers a clear place to
find prescription information, healthcare services, opening details and
ways to contact or visit the pharmacy.
The project focused on making the website feel trustworthy, easy to use,
and practical for real customers rather than over-designed. It also includes
dedicated service pages, including weight-loss support, so visitors can
quickly understand what the pharmacy offers before getting in touch.
Visit Eden Pharmacy
A friend of mine (a barber) was frustrated with subscription costs for
booking software. Ulster Fades was a bespoke booking
platform I built using Ruby on Rails with plenty of
JavaScript woven through the UI.
It was hosted on Render with a managed database, and used
AWS S3 for image storage to keep things flexible and cost
effective. Everything from auth to scheduling was crafted from scratch with
long-term maintainability in mind.
This project is no longer live, but it remains a useful example of building
a real booking workflow for a small business from the ground up.
This site started as a simple static page on
GitHub Pages and has evolved into a more considered
portfolio focused on clarity, UX, and a modern look and feel.
I use it as a sandbox to experiment with layout, interaction, and visual
design, while also keeping a living record of where I am in my career and
what I’m building.