The band had previously paid another developer to build a React Native app, but it was abandoned halfway through. I took over from scratch, choosing Next.js for fast delivery, and built the entire platform solo — architecture, backend, frontend, DevOps, and ongoing maintenance.
The platform now manages over 60 musicians, sound engineers, and clients across 200–300 international events per year. It handles the full lifecycle from booking through to payment reconciliation, replacing what was previously a patchwork of spreadsheets and email chains.
Full Ownership
Sole engineer responsible for every decision — from data modelling and API design through to deployment and production support. I designed a dual API architecture: tRPC for the type-safe client-facing app, and React Admin with a Prisma data provider (extended with custom overrides for domain-specific logic) powering the back-office for the band manager. This separation keeps the admin tooling powerful without coupling it to the consumer experience.
Third-Party Integrations
Integrated PayPal for automated invoicing and real-time payment tracking via webhooks, Spotify for music selection, and built a canvas-based contract signing flow. Push notifications use VAPID keys and a service worker via a PWA — getting consistent cross-device behaviour without a native app was one of the toughest challenges I've solved.
Impact
- Replaced a failed React Native project and delivered a working platform in a fraction of the time
- Automated invoicing, payment reconciliation, and contract management for 200–300 events/year
- Admin dashboards with key metrics and daily summary emails keep the band manager on top of operations
- PWA with push notifications adopted by 60+ musicians as their primary communication channel
AI-Assisted Development
More recently I've used Claude Code to accelerate feature development and bug fixes on the platform. The vast majority of the codebase was hand-written by me over six years — AI tooling has been a force multiplier for iterating faster on an already mature product.
