Skip to content
Featured

JTV: All-In-One karaoke System

Jcomp
· 2 min read
Screenshot of the karaoke room in JTV.

Karoake is a music-focused karaoke system that lets you sing a song without the need for a microphone. It is a user-friendly and visually appealing interface that allows you to search for any song on YouTube, generate a karaoke version, and start singing in seconds.

Overview

This is a scalable, comprehensive karaoke system that allows you to search for any song on YouTube, generate a corresponding karaoke version, and start singing in seconds.

Architecture

The system is built with a decoupled microservices approach to handle heavy media processing without lagging the user interface.

Core Components

  • Frontend UI (ui/): A Next.js web application where users can search, select, and play karaoke tracks.
  • Web Server (api/): The central hub that serves the frontend and handles backend API requests (user management, song metadata, and job triggering).
  • Scheduler & Worker (karaoke/): Powered by Apache Airflow. This component manages the generation job queue, tracks job status (Processing/Finished/Failed), and distributes intensive tasks (like AI vocal separation) to available workers.

๐Ÿ›  Tech Stack

ComponentTechnology
FrontendNext.js, Tailwind CSS
APIPython / Flask
OrchestrationApache Airflow
ContainerizationDocker, Docker Compose
ProcessingFFmpeg, AI Vocal Remover Models

Conclusion

With JTV, you can easily find and sing karaoke versions of any song on YouTube. Whether youโ€™re a music lover or just looking for a fun way to sing along, this system is the perfect solution for your karaoke needs.