Building a Music Mentoring Platform: The Journey So Far
From TikTok live streams to 333,000 lines of code — the story of how James Music Academy came to be.
Where It Started
Music has been my life for over three decades. Playing, producing, teaching — it's who I am. When I started streaming on TikTok, I didn't expect what happened next.
People started asking questions. Real questions about their music, their struggles, their dreams. They weren't looking for another YouTube tutorial. They wanted someone to actually listen to their work and help them get better.
That's when I realised: the problem isn't a lack of information. It's a lack of guidance.
The Problem with Online Music Education
The online education industry has a completion problem. Research from MIT and Harvard found that only 3-6% of students who enrol in MOOCs actually complete them. A study by researchers at the University of Edinburgh found a median completion rate of just 12.6%.
We researched existing platforms — Duolingo, Khan Academy, Wyzant, Preply — and found they all separate sessions from progress tracking. Students have to piece together their learning journey across different pages and interfaces. That felt wrong.
I wrote more about this in Why Goals, Not Courses.
What We Built Different
James Music Academy isn't a course platform. It's a mentoring system built around you.
The approach is based on Goal Setting Theory by psychologists Edwin Locke and Gary Latham. Their research shows that specific, challenging goals lead to higher performance than vague goals like "do your best."
We've built something we haven't seen anywhere else: a unified timeline that shows your complete learning journey — sessions, goal updates, and milestones all in one scrollable view. No more switching between pages to understand your progress.
Three Weeks, Five Major Versions
Building this platform has been intense. The numbers tell the story:
- 800+ files across the codebase
- 333,000+ lines of TypeScript
- 5 major versions shipped in three weeks
- 146 requirements validated and completed
v1.0: The Foundation
Goal-based mentorship with UK safeguarding compliance, Stripe payments, and personalised student dashboards. 53 requirements completed.
v1.1: Service Orders
Added one-time purchases for mixing, mastering, and production services. Implemented a deposit/balance workflow with human-readable order numbers.
v1.2: Self-Service Booking
Complete booking system with availability management, recurring sessions, self-service rescheduling, and calendar feeds. 31 requirements in one sprint.
v1.3: Multi-Mentor Platform
Transformed from a solo-mentor platform to one that can support multiple mentors. Role-based access control, mentor profiles, and public directory.
v1.4: Polish & Accessibility
Accessible UI components with ARIA compliance, keyboard navigation, and reduced motion support. Fixed production issues and improved mobile responsiveness.
What's Coming: v1.5
We're now working on a complete student dashboard overhaul. Research from John Hattie's meta-analysis shows that teacher-student relationships have an effect size of 0.52 — well above the 0.4 threshold for significant impact. We're designing the new dashboard to strengthen that relationship.
New features will include:
- Activity feed as the primary landing (mentor comments + goal updates)
- Visual journey timeline with mentor-marked milestones
- Sessions integrated into the timeline (no more separate sessions page)
- Modern dark UI with accessibility built in
Why We're Building in Public
Building in public has become a movement in the startup world, championed by founders like Pieter Levels and communities like Indie Hackers. The idea is simple: share your journey openly, build trust through transparency, and let your audience be part of the story.
This blog is where I'll share the real journey — the wins, the challenges, and the lessons learned. Whether you end up as a student, a fellow mentor, or just someone following along — welcome.
Want to be part of this journey?
Join the waitlist and get early access when we launch.
Join the Waitlist →