Portfolio
My portfolio comprises work from two periods: recent projects, which are all Django and Wagtail-based, and past projects, which are all Drupal-based.
If you'd like further details about any project please let me know.

PoirotDb
Role: Full-stack development
Stack: Wagtail, Python, PostgreSQL, NGINX, Django Template Language (DTL), JavaScript, CSS
PoirotDb is a database site which documents works starring the fictional detective Hercule Poirot. Features include: user accounts and profiles, many custom Wagtail page (content) types (utilising abstract models, inline models, etc.), and a Wagtail/DRF-based API.

Ludoly
Role: Full-stack development
Stack: Django, Python, PostgreSQL, NGINX, Django REST Framework (DRF), Django Template Language (DTL), htmx, Alpine, JavaScript, CSS
Ludoly offers a free, daily collection of puzzles inspired by classic games such as sudoku and minesweeper. Features include: user accounts and profiles, a DRF-based API, puzzle generation, subscription-based access to an archive of past puzzles, and subscription management, billing, and payment integration via Stripe.

Django 95
Role: Frontend development
Stack: Django, Python, Django Template Language (DTL), JavaScript, CSS
Django 95 is a Django admin theme inspired by Windows 95.
Further projects
The following projects are all Drupal websites.
- Archetypes · Archetypes, Inc.
- Share My Lesson · The American Federation of Teachers
- Data Is The New · The British Library
- Jimi Hendrix · Sony Music
- Incubus · Sony Music
- American Idol Music · Sony Music
- Passion Pit · Sony Music
- The Fray · Sony Music
- Ciara · Sony Music
- Daughtry · Sony Music
- Manchester Orchestra · Sony Music
- Britney Spears · Sony Music
- Gogol Bordello · Sony Music
- Rod Stewart · Sony Music
- Derek Trucks · Sony Music
- David Cook · Sony Music
- John Legend · Sony Music
- Jordin Sparks · Sony Music
- Miranda Cosgrove · Sony Music
- Backstreet Boys · Sony Music
- Verity Records · Sony Music
- Wise Vacation · Bluetent