eduvids:用文本提示词生成教学视频的开源项目
namanbnsl/eduvids
eduvids 是一个用文本提示词生成教学视频的开源项目,输入任意主题即可渲染出视频,也支持生成竖版 YouTube Shorts。视频渲染完成后会自动上传到 eduvids 的 YouTube 频道,链接同步发布在 eduvids 的 X 账号,在线版无需登录即可使用。
eduvids lets you create educational videos using just text prompts.
- 🌐 Try it here (no sign-in required): https://eduvids.app
- ▶️ Watch community creations: eduvids on YouTube
- X: https://x.com/eduvidsai
🚀 Using the Online Version
- Open eduvids.
- Enter any topic you'd like explained as a video, or press Video and enter the same. (you can also generate vertical YouTube Shorts)
- Wait while the servers render your video. (You can switch tabs, but don’t close it.)
- Once ready, the video will appear on the page, and you’ll get a notification.
💡 Tip: If you accidentally close the tab or want to revisit your video, check the eduvids YouTube Channel—your video will be uploaded there automatically. Links to all videos will also be available on the eduvids X account
🛠️ Running Locally
- Clone the repository:
# Clone the repository git clone https://github.com/namanbnsl/eduvids cd eduvids # Install dependencies (any of the following) npm install pnpm install yarn install bun install
-
Install the E2B CLI from here: https://e2b.dev/docs/cli
-
Build the E2B sandbox (requires Docker):
cd sandbox-templates/manim-ffmpeg-latex-voiceover-watermark # This is the latest template e2b template build --name manim-ffmpeg-latex-voiceover-watermark
-
Get your
GOOGLE_GENERATIVE_AI_API_KEYfrom https://aistudio.google.com/ -
Get your
E2B_API_KEYfrom https://e2b.dev or thee2b.tomlfile created after building the sandbox. -
Get your
KV_****API KEYS from https://vercel.com by creating an Upstash storage service. -
Get your
UPLOADTHING_****API KEYS from https://uploadthing.com by creating a new project. -
Rename
.env.exampleto.envand fill in with your environment variables. (YouTube keys are optional) -
Run the server:
# Start the development server
npm run dev- Visit http://localhost:3000 and start using the app.
📺 Setting up automatic YouTube uploads (optional)
- Visit Google Cloud Console and create an OAuth desktop service. Your
GOOGLE_CLIENT_IDandGOOGLE_CLIENT_SECRETwill be available here. - Edit
helper/get_google_refresh_token.mjswith yourCLIENT_IDandCLIENT_SECRETat the given places. - Getting your
GOOGLE_REFRESH_TOKEN:
# Visit the auth screen and allow permissions for your YouTube channel. The REFRESH_TOKEN will be visible on the console after that.
node helper/get_google_refresh_token.mjs- Edit your
YOUTUBE_PRIVACY_STATUSin.envbased on what you want as the visibility for your videos(public | unlisted | private). Default ispublic. If your refresh token predates previous-video linking, run the helper again so the new token includes channel and comment access.
📺 Setting up automatic X uploads (optional)
- Visit the X developer API console and fill in the required values in
.env
来源:GitHub · github.com