Introduction
Songs2YT turns a cover image and one or more audio files into YouTube-ready videos, then uploads them to your channel.
What you can do
- Combine one image with multiple tracks in a batch
- Set per-video metadata (title, description, tags, privacy, resolution)
- Optionally add videos to YouTube playlists (Pro)
- Use the hosted app or self-host with Docker / source
Hosted app
Use the cloud product at songs2yt.com. Sign in with Google; YouTube upload scopes are requested during OAuth.
Self-host
Follow Getting started to run the Next.js app, Postgres, Redis, and the BullMQ worker on your machine.
Pro REST API
Programmatic uploads and job creation for Pro subscribers. Start with API overview.
Stack
- Next.js 15 (App Router, TypeScript, Tailwind)
- PostgreSQL + Prisma
- Redis + BullMQ
- NextAuth (Google OAuth with YouTube scopes)
- FFmpeg for encoding
- YouTube Data API v3