Open Source Studio app to create and manage content fast.
Website
·
Discord
·
Issues
·
Kanban
Open Studio is a powerful open-source tool designed for Youtube Studio and video studio users. It streamlines your comment management, video management, audio management, thumbnail management and subtitles management helping you achieve wider reach swiftly with features like comment analytics, audience management, video management and AI assistance. Enhance your studio experience without replacing your client!
The initial focus is automating responses to youtube comments. Perfect for those that are often receiving zillions of comments.
- Comment Analytics: Track your comment activity with daily, weekly, and monthly stats.
- Audience Management: Easily manage and block your audiences.
- New Senders: Identify and block new spam senders.
- Unreplied Comments: Keep track of comments awaiting responses.
- AI Auto-Responder: Automate responses for common queries.
- AI Comment Assistant: Auto-approve, report, and reply comments based on set rules.
Explore our upcoming features and improvements on our Roadmap. Your feedback and feature requests are always welcome!
Roadmap features include:
- Youtube Studio anayltics - we already provide basic analytics
- Auto Thumbnail and Subtitle Generation for videos - using AI we can keep your youtube studio clean and move less important comments out of your own comments section.
- Easy Edit - Trim all your unwanted part of your video with an easy editing option.
- Video Generation
- Audio Generation
You can make additional feature requests.
Initially the aim is that people will use Open Studio side-by-side their existing youtube studio client and develop Open Studio over time into a full fledged Your Youtube Content Management Platform (Youtube Studio Client).
We have a public Kanban available here. Join our Discord to discuss tasks and check what's being worked on.
- Node.js >= 18.0.0
- pnpm >= 8.6.12
- Docker desktop (optional)
Here's a video to be added later on how to set up the project. It covers the same steps mentioned in this document. But goes into greater detail on setting up the external services.
The external services that are required are:
We use Postgres for the database.
You can run Postgres & Redis locally using docker-compose
docker-compose up -d # -d will run the services in the backgroundCreate your own .env.local file:
cp apps/web/.env.example apps/web/.env.local
cd apps/web
pnpm installSet the environment variables in the newly created .env. You can see a list of required variables in: apps/web/env.mjs.
The required environment variables:
NEXTAUTH_SECRET-- can be any random string (try usingopenssl rand -hex 32for a quick secure random string)GOOGLE_CLIENT_ID-- Google OAuth client ID. More info hereGOOGLE_CLIENT_SECRET-- Google OAuth client secret. More info hereTINYBIRD_TOKEN-- Admin token for your Tinybird workspace (be sure to create an instance in the GCPus-east4region. This can also be changed via your.envif you prefer a different region).OPENAI_API_KEY-- OpenAI API key.UPSTASH_REDIS_URL-- Redis URL from Upstash.UPSTASH_REDIS_TOKEN-- Redis token from Upstash.
To run the migrations:
pnpm prisma migrate devTo run the app locally:
pnpm run devOr from the project root:
turbo devOpen http://localhost:3000 in your browser. To upgrade yourself to admin visit: http://localhost:3000/admin.
You need to enable these scopes in the Google Cloud Console:
https://www.googleapis.com/auth/userinfo.profile,
https://www.googleapis.com/auth/userinfo.email,
https://www.googleapis.com/auth/youtubepartner-channel-audit,
https://www.googleapis.com/auth/yt-analytics-monetary.readonly,
https://www.googleapis.com/auth/yt-analytics.readonly,
https://www.googleapis.com/auth/youtubepartner,
https://www.googleapis.com/auth/youtube.force-ssl,
https://www.googleapis.com/auth/youtube.channel-memberships.creator,
https://www.googleapis.com/auth/youtube.upload,
https://www.googleapis.com/auth/youtube,
https://www.googleapis.com/auth/youtube.readonly,
https://www.googleapis.com/auth/contacts
Follow the instructions here to setup the pipes and datasources.
Optional: If you want to store AI usage stats in Tinybird too, then do the same in /packages/tinybird-ai-analytics.
To run in development ngrok can be helpful:
ngrok http 3000To request a feature open a GitHub issue. If you don't have a GitHub account you can request features here. Or join our Discord.