HomeLogo
English

Projects

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

Case studies

Resomix

Dec 2024 - Present

Production beta

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.

  • Python
  • FastAPI
  • React
  • TypeScript
  • Celery
  • Redis
  • MariaDB
  • MongoDB

Read the case study

WordPress to Astro rebuild

Jan 2026 - Mar 2026

Delivered

An Elementor-based WordPress site rebuilt in plain Astro with Tailwind and TypeScript, matched closely at every breakpoint so visitors would not notice.

  • Astro
  • TypeScript
  • Tailwind CSS
  • JavaScript
  • WordPress

Read the case study

Sortive

Jan 2026 - Feb 2026

In production

A productivity and personal finance app I designed, built and published to Google Play. Fully usable offline, and synced across devices when back online.

  • Flutter
  • Dart
  • Isar
  • Firebase
  • Cloud Firestore
  • Riverpod
  • go_router

Read the case study

Ariha

Nov 2024 - Jul 2025

Delivered

A suite of fifteen voice and chat applications, built as one coordinated set so that a client could compare interaction models against one shared backend.

  • Python
  • FastAPI
  • Flask
  • Vosk
  • Llama 3
  • Groq
  • gTTS
  • JavaScript

Read the case study

University alumni portal

Feb 2022 - Feb 2023

In production

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.

  • Laravel
  • PHP
  • Vue
  • TypeScript
  • Vuex
  • MySQL
  • Bootstrap

Read the case study

Other work

Beatport Scraper

Nov 2024 - Dec 2024

Delivered

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.

  • Python
  • Selenium
  • Requests
  • Web Scraping

View project

HR web application front end

May 2024 - Sep 2024

Delivered

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.

  • Vue
  • JavaScript
  • Frontend

View project

EGT Digital X-Ride Miner

Jul 2024 - Aug 2024

Delivered

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.

  • Python
  • Selenium
  • Playwright
  • OCR

View project

Titanium

Apr 2023 - Sep 2023

Delivered

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.

  • Python
  • Flask
  • Selenium
  • JavaScript
  • HTML
  • CSS
  • Tkinter

View project

Hospital falls analysis

Aug 2023 - Aug 2023

Delivered

A healthcare data analysis of patient fall incidents for a hospital, delivered inside a fixed one week window against a private brief.

  • Python
  • Pandas
  • Data Analysis

View project

Delivered

A geospatial analysis ranking Philadelphia billboards by proximity to competitor outlets, so advertising spend lands within sight of the right customers.

  • Python
  • Pandas
  • Google Maps API
  • Geospatial Analysis

View project

BIXI Analysis

Apr 2021 - Oct 2021

Delivered

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.

  • Python
  • Matplotlib
  • Pandas

View project

Delivered

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.

  • Python
  • Pandas
  • Matplotlib
  • Geospatial Analysis

View project

Early work

Earlier projects, kept for the record. Short engagements and student work from 2020 to 2022.

Instagram Location Validator

Jun 2022 - Jul 2022

Delivered

A verification tool that checks whether Instagram posts really originate inside the US, resolving missing coordinates from city or country before deciding.

  • Python
  • shapely
  • requests
  • Selenium

View project

Linked Company Scraper

May 2022 - Jun 2022

Delivered

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.

  • Python
  • Selenium
  • JavaScript
  • HTML
  • CSS
  • Web Scraping

View project

COVID-19

Dec 2020 - May 2022

Delivered

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.

  • Python
  • typescript
  • javascript
  • vue
  • bootstrap

View project

Weather News Channel

Feb 2022 - Feb 2022

Delivered

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.

  • Python
  • Tkinter
  • PyInstaller

View project

Weather Slideshow

Feb 2022 - Feb 2022

Delivered

A tool that renders a folder of images into an MP4 video, built as part of the weather channel's broadcast content pipeline.

  • Python
  • ffmpeg

View project

Awake

Oct 2021 - Nov 2021

Delivered

A Windows utility that keeps a machine awake while unattended, with scheduled start and stop and a configurable interval. Rebuilt from Python into VBScript.

  • Python
  • Visual Basic Script

View project

Eviction Notices Analysis

Apr 2021 - Oct 2021

Delivered

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.

  • Python
  • Matplotlib
  • Pandas

View project

Grocery Purchase Analysis

Apr 2021 - Oct 2021

Delivered

A recipe suggestion analysis over a dataset of recipe ingredients, plus purchasing statistics by retailer, built as the first stage of a larger application.

  • Python
  • Matplotlib
  • Pandas

View project

McDonalds Ideal Calorie Menu

Apr 2021 - Oct 2021

Delivered

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.

  • Python
  • Pandas
  • Numpy
  • Matplotlib

View project

CSV Data Randomizer

Oct 2021 - Oct 2021

Delivered

A data anonymisation tool for CSV exports: keep a random sample of rows, randomise the values inside them, and discard everything else.

  • Python
  • Pandas
  • CSV
  • Numpy

View project

CSV Data Encrypter

Oct 2021 - Oct 2021

Delivered

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.

  • Python
  • Cryptography
  • Fernet
  • CSV

View project

Paperswithcode Scraper

Sep 2021 - Sep 2021

Delivered

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.

  • Python
  • Requests
  • BeautifulSoup
  • Web Scraping

View project

Personal project

A bike management system backend, built as a personal exercise in API blueprints and SQLAlchemy rather than for a client.

  • Python
  • Flask
  • SQLAlchemy
  • API blueprints
  • Postman

View project

Url Authenticator

Jul 2021 - Jul 2021

Delivered

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.

  • Python
  • Requests
  • Pandas
  • SSL

View project

Sitemap Generator

Sep 2020 - Oct 2020

Personal project

A small Python tool that generates a sitemap for a site, validates the result, and submits it to Google.

  • Python

View project

Student Management System

Oct 2020 - Oct 2020

Personal project

A first-semester C++ project: a student management system, built to put the language's fundamentals to work on something with real structure.

  • PHP
  • VueJs
  • MySQL

View project