Collaborative YouTube Jukebox Backend API
Overview
A Node.js backend API for a collaborative YouTube “jukebox”, a shared music-queue service, built on the AdonisJS framework. An early-career backend project exploring authenticated REST APIs, an SQL ORM, and mobile push notifications.
Why It Exists
A shared jukebox lets a group queue YouTube tracks to a common playlist, which needs a server to hold the queue, authenticate users, and notify clients of changes. This repo is that backend, built to learn AdonisJS end to end.
What We Built
An AdonisJS API application structured into app, config, database (migrations and seeds), and start modules, with server.js and the ace CLI. It is pre-wired with body parsing, authentication, CORS, and the Lucid ORM over SQLite, and integrates the Expo server SDK to push notifications to mobile clients as the shared queue changes.
Technologies & Approach
AdonisJS for an opinionated MVC API, Lucid ORM with SQLite for persistence and migrations, and Expo’s push service for real-time mobile updates, a coherent, batteries-included backend stack for a small social app.
Outcome / Impact
A functional backend build that exercised authenticated REST APIs, relational modeling with migrations, and push notifications, solid early-career grounding in full backend service design.
Capabilities Demonstrated
- Building authenticated REST APIs with AdonisJS
- Relational data modeling and migrations via Lucid ORM
- Mobile push-notification integration (Expo)
- Structuring a backend into config, database, and app layers