This project is a Next.js + Remotion app for generating programmatic videos, including:
- Reddit Story Generator (available at /reddit-story): Turn Reddit stories into narrated videos with subtitles and dynamic backgrounds.
- FakeChat Videos (available at /fakechat): Create viral fake chat conversations as engaging videos.
- Split Screen Videos (available at /splitscreen): Effortlessly generate split-screen videos for comparisons and reactions.
Built with Remotion, Next.js App Router, TailwindCSS, Zustand, Google TTS and TanstackQuery.
- Reddit Story to Video: Paste a Reddit story, customize voice, background, and subtitle style, and generate a video.
- FakeChat Video: Compose chat messages, pick a template (iOS, WhatsApp, Instagram), and render a chat animation.
- Split Screen Video: Upload two videos, add a caption, and create a split-screen comparison with animated subtitles.
- Text-to-Speech (TTS): Uses Google Cloud TTS for AI narration.
- Customizable Subtitles: Choose font, color, outline, and more.
- Animated Subtitles: All subtitles/messages fade in smoothly.
-
Install dependencies:
npm install
-
Start the Next.js dev server:
npm run dev
Visit http://localhost:3000
-
Open Remotion Studio:
npm run remotion
This opens the Remotion editor for live preview and editing.
-
Render a video locally:
npm run render
This renders all main compositions (FakeChat, RedditStory, SplitScreen) to "/out" folder in root directory.
- Go to
/reddit-story - Enter Reddit username, post title, and story script
- Customize subtitle style, background, and voice
- Preview and download the generated video
- Go to
/fakechat - Compose chat messages, pick a template (iOS, WhatsApp, Instagram)
- Preview and download the chat video
- Go to
/splitscreen - Upload/select two videos, add a caption
- Customize subtitle style and voice
- Preview and download the split-screen video
- Subtitle Style: Choose font, color, outline, and more for subtitles in all video types
- Voice: Select AI voice for narration (Google Cloud TTS)
- Background: Set custom video/image backgrounds
- Templates: Choose chat/video templates for different looks
src/app/- Next.js app routes and pagessrc/components/- UI components and stepper formssrc/remotion/- Remotion compositions and video logicsrc/store/- Zustand stores for form statesrc/apicalls/- API integrations (TTS, etc.)public/- Static assets (videos, audios, thumbnails)types/- TypeScript types and schemas
- For issues, use the GitHub Issues page
- For Remotion help, join the Remotion Discord
- For feature requests or bugs, open an issue or PR
This project uses Remotion, which may require a company license for some use cases. See Remotion License for details.