Update README.md
This commit is contained in:
@@ -1,17 +1,15 @@
|
||||
# Songs2VID
|
||||
# 🎬 Songs2VID
|
||||
|
||||
Payment-free, self-hosted software that turns cover art and audio into YouTube videos
|
||||
(FFmpeg encoding + BullMQ jobs). Every deployment has full entitlements - there are no
|
||||
(FFmpeg encoding + BullMQ jobs). Every deployment has full entitlements — there are no
|
||||
plans, credits, purchases, subscriptions, paywalls, or Stripe.
|
||||
|
||||
Sign in with Google, open the dashboard, and create videos. Settings cover account,
|
||||
YouTube connection, and API keys only.
|
||||
|
||||
|
||||
|
||||

|
||||
|
||||
## Quick start (Docker)
|
||||
## 🚀 Quick start (Docker)
|
||||
|
||||
Published image: [`atakanozban/songs2vid:latest`](https://hub.docker.com/r/atakanozban/songs2vid)
|
||||
|
||||
@@ -38,22 +36,22 @@ Open http://localhost:3000 → sign in → dashboard.
|
||||
No Stripe keys, billing env vars, or edition flags are required. Watermarks are optional;
|
||||
OSS does not force a free-tier SaaS badge paywall.
|
||||
|
||||
## Features
|
||||
## ✨ Features
|
||||
|
||||
- Batch: one cover (or per-track covers) + many audio files → YouTube uploads
|
||||
- Classic letterbox and art-track layouts (blur backgrounds, typography, fine-tuning)
|
||||
- Custom watermarks (badge, text, or logo) and curated or uploaded fonts
|
||||
- YouTube playlists, privacy, tags, resolution, categories
|
||||
- REST API for automation (keys under **Dashboard → Settings → API key**)
|
||||
- Always-on self-hosted entitlements (no quota paywall)
|
||||
- 📦 Batch: one cover (or per-track covers) + many audio files → YouTube uploads
|
||||
- 🖼️ Classic letterbox and art-track layouts (blur backgrounds, typography, fine-tuning)
|
||||
- 💧 Custom watermarks (badge, text, or logo) and curated or uploaded fonts
|
||||
- ▶️ YouTube playlists, privacy, tags, resolution, categories
|
||||
- 🔌 REST API for automation (keys under **Dashboard → Settings → API key**)
|
||||
- 🔓 Always-on self-hosted entitlements (no quota paywall)
|
||||
|
||||
## API documentation
|
||||
## 📚 API documentation
|
||||
|
||||
- In-repo: [docs/api/overview.md](./docs/api/overview.md) and [docs/api/endpoints.md](./docs/api/endpoints.md)
|
||||
- Live site: [docs.songs2vid.com/docs/api/overview](https://docs.songs2vid.com/docs/api/overview)
|
||||
- Machine-readable discovery: `GET /api/v1` (no auth; no billing routes)
|
||||
|
||||
## Local development
|
||||
## 🛠️ Local development
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.dev.yml up -d
|
||||
@@ -66,18 +64,18 @@ npm run dev:all
|
||||
- App: http://localhost:3000
|
||||
- `dev:all` runs Next.js and the BullMQ worker
|
||||
|
||||
## Environment
|
||||
## ⚙️ Environment
|
||||
|
||||
See [`.env.example`](./.env.example) for the required and optional variables. Matching guide:
|
||||
[docs.songs2vid.com/docs/environment](https://docs.songs2vid.com/docs/environment).
|
||||
|
||||
## Legal (self-hosted)
|
||||
## ⚖️ Legal (self-hosted)
|
||||
|
||||
In-app **Privacy** and **Terms** pages describe self-hosted responsibility: the operator of
|
||||
each instance controls data and access; this software does not process payments. They are not
|
||||
the paid cloud terms for [songs2vid.com](https://songs2vid.com).
|
||||
|
||||
## Stack
|
||||
## 🧱 Stack
|
||||
|
||||
- Next.js 15, TypeScript, Tailwind
|
||||
- PostgreSQL and Prisma
|
||||
@@ -86,12 +84,13 @@ the paid cloud terms for [songs2vid.com](https://songs2vid.com).
|
||||
- FFmpeg
|
||||
- YouTube Data API v3
|
||||
|
||||
## Links
|
||||
## 🔗 Links
|
||||
|
||||
- Docs: [docs.songs2vid.com](https://docs.songs2vid.com)
|
||||
- Docker Hub: [atakanozban/songs2vid](https://hub.docker.com/r/atakanozban/songs2vid)
|
||||
- Source: [git.atakanozban.com/Songs2VID](https://git.atakanozban.com/Songs2VID)
|
||||
- Hosted SaaS (separate product): [songs2vid.com](https://songs2vid.com)
|
||||
|
||||
## License
|
||||
## 📄 License
|
||||
|
||||
[MIT](./LICENSE)
|
||||
Reference in New Issue
Block a user