Resomix
A music discovery platform that finds tracks by how they actually sound rather than by genre, popularity or metadata. Sole developer, 20 months and counting.
Selected work, most recent first. The case studies go into the parts that took months rather than the parts that took an afternoon.
Filter by type
No projects match that search.
A music discovery platform that finds tracks by how they actually sound rather than by genre, popularity or metadata. Sole developer, 20 months and counting.
An Elementor-based WordPress site rebuilt in plain Astro with Tailwind and TypeScript, matched closely at every breakpoint so visitors would not notice.
A productivity and personal finance app I designed, built and published to Google Play. Fully usable offline, and synced across devices when back online.
An AI travel assistant answering questions about real places from a dataset I built myself, over 35,000 records, rather than from the model's general knowledge.
A long-running automation system for a weather channel operator that composites broadcast graphics, plots live forecast data and posts alerts on a schedule.
A customer support and sales chatbot that answers from the client's own material rather than general knowledge, embeddable in any site with one script tag.
A Java and Excel driven Selenium framework rebuilt in Python as a browser-configured standalone executable that QA staff can run without installing an IDE.
The official alumni management system for Riphah International University, still in daily service today, built in Laravel and Vue as part of a small team.
The site you are reading. Astro with a two-layer token design system, internationalisation from the start, and eight guards that check the built output itself.
A habit tracker built as a role-playing game. Daily consistency earns experience, tracks level up over months, and a contribution heatmap makes a broken streak visible.
A client asked for a stripped-down version of an existing web application. The brief was scoped at one month and the engagement ran for seventeen.
A colour by number mosaic puzzle that runs entirely in the browser, with the grid, palette and solving state all handled client side and nothing to install.
A desktop tool that collects from a spreadsheet of profiles and reposts to groups, packaged behind a PIN so operators could run it without touching a terminal.
Collects verses, translations and metadata into a structured, queryable local set, with a command line interface over it and markdown conversion for the output.
Collects business listings across an entire city from map data, walking the area by region and category rather than by search term, so the coverage is complete.
Collects player data at scale and presents it as a filterable scouting grid, so a shortlist is built by narrowing attributes rather than by reading profiles.
A scraper that signs into Beatport and extracts charts, playlists, releases and hold bins, driven by a configurable list of sources rather than hard-coded ones.
Tracks around fifty accounts, collects their posts daily on a schedule and reports on them, engineered to run inside the cheapest API tier the vendor offers.
A markdown notes application with a Django REST API behind it, a React front end with a live editor, and sign-in through Google rather than another password to remember.
The Vue.js front end for an HR web application, built over roughly four months as the client's dedicated front end developer on the project.
A scraper and data miner for a live betting game, capturing each round's outcome to CSV on a fixed interval, with cleanup and analysis scripts on top.
Posts listings to Facebook Marketplace on a schedule from a config file rather than by hand. Public, and the most starred and most forked repository on my account.
A keyword-driven and data-driven test automation framework, rebuilt in Python from an older Java one, with a browser-based interface served by Flask.
Analysis, visualisation and predictive modelling on a hospital falls dataset, taking a clinical data problem from raw records through to a working prediction.
A geospatial analysis ranking Philadelphia billboards by proximity to competitor outlets, so advertising spend lands within sight of the right customers.
An analysis of Montreal BIXI bike-share ridership against date, weather, time of day, location and pricing, to model the optimal fleet size by season.
A site-selection model for a Vancouver coffee shop, reducing an intractable 432 billion comparison problem to an analysis that finishes in a matter of minutes.
Earlier projects, kept for the record. Short engagements and student work from 2020 to 2022.
Reconstructs a site's entire database by exhausting its keyword space, working around a hard cap of 225 results per response and the absence of any listing endpoint.
A task tracker that watches whether the things on the list actually got done, rather than only recording that they were planned, written in C++ as a desktop tool.
Parses several thousand irregular contact records out of one text file into a clean spreadsheet, keyed on a repeating delimiter rather than on absent fields.
An appointment system rebuilt on Laravel, taking an earlier plain PHP project and redoing it on a framework specifically to see what the framework was worth.
Collects a complete product catalogue including the detail page behind every listing, rather than only the fields visible on the listing rows themselves.
A database-backed web application built on plain PHP and MySQL with no framework underneath it, for the web engineering course, alongside the alumni portal internship.
A verification tool that checks whether Instagram posts really originate inside the US, resolving missing coordinates from city or country before deciding.
Collects market data on a schedule and writes it straight into Google Sheets, so the analysis lives in the tool the client already used rather than in a file to import.
A ten page site written in plain HTML and CSS with no framework, no preprocessor and no build step, as the front-end coursework for the web engineering module.
A scraper that signs into LinkedIn, runs a company search and extracts the full details of every company in the result set into a structured export.
A COVID-19 dashboard and data parser built to make the numbers legible to the public, with a live site and a feed researchers could pull from.
An unattended slideshow player for a weather channel: starts at boot, loops media to the hour, plays video with sound, and picks up new files on its own.
Turns a folder of supplied images into a broadcast-ready video slideshow, driven from a configuration file so the sequence can change without touching the code.
Replaced a converter that produced 96 dpi PDFs with one that produces 300 dpi on a fixed page size, using only free and open source components as the brief required.
A social platform built in house at AlphaSoftHub, covering accounts, posts, feeds and the interactions between them, built early in my time there before the CTO role.
A Windows utility that keeps a machine awake while unattended, with scheduled start and stop and a configurable interval. Rebuilt from Python into VBScript.
Downloads a single video or an entire playlist, or reads the metadata without downloading anything at all, from one command line entry point.
A bot that wins a daily booking slot which opens at six in the morning and is gone within minutes, run unattended every day for a client who could not be awake for it.
An analysis of San Francisco eviction notices from the city's open data: the most common reasons, the neighbourhoods most affected, and the trend by year.
A recipe suggestion analysis over a dataset of recipe ingredients, plus purchasing statistics by retailer, built as the first stage of a larger application.
A nutrition analysis of the McDonald's menu that recommends a meal from it based on a person's age and gender, with the macronutrient reasoning shown.
Renders confidential spreadsheets useless for disclosure by sampling columns and rows to a fixed cap, then overwriting what is left, including multi-index files.
A tool that encrypts the contents of a CSV against a separate key file, so the data cannot be read or recovered without the key that produced it.
A scraper for Papers with Code that extracts each paper's title, description, date and category, along with links to its repository, PDF and dataset.
A bike management system backend built on API blueprints and SQLAlchemy, written as an authenticated middleware layer with validation and developer documentation.
A link checker that reads URLs from a CSV, groups them by image type, verifies each one and reports the broken links. Run against over 54,000 links.
A data analysis tool built on hand-written AVL trees and linked lists rather than library containers, as the final project for the data structures course.
An early chatbot that added to its own answer set from the conversations it had, written in 2021 when building one meant writing the matching logic yourself.
A point of sale application for shops and pharmacies covering stock, sales and receipts, written in Java as a desktop tool for counters with no reliable connection.
Pulls Google Trends data and renders state-level maps of the United States for two periods, so the change between them reads at a glance instead of from a table.
The same student management system rewritten in Java with a graphical interface and CSV persistence, done deliberately to see what changes when the language changes.
A first semester C++ project: student records with file persistence, written to put the language's fundamentals to work on something with real structure behind it.
A Python tool that generates a sitemap for a site, validates the result against the specification, and submits it to Google, all from a single command line entry.