Note: This is an internal debugging and testing tool for testing the core creation workflow of OpenStoryVideo.com
Latest Version: v0.6.0 - Character Confirmation Workflow
- π Character Confirmation Step: Dedicated character review and generation after AI story generation (NEW v0.6.0)
- π Character Regeneration: Hover over any character to regenerate (NEW v0.6.0)
- β‘ Batch Character Generation: One-click generation of all character reference images (NEW v0.6.0)
- π Parallel Generation: 5x for images, 3x for videos, 10x for audio concurrency, 2-4x speed improvement
- ποΈ Automatic Audio: Auto-generate voiceovers when generating videos, zero additional operations
- π¬ Real-time Preview: Merge video and audio in browser, instant preview before export
- π€ AI Story Generation: Generate complete stories from one sentence (characters, scenes, storyboards)
- βοΈ Global Configuration: 50+ LLM models, TTS voices, complete customization
- π Real-time Progress: Progress bars for all generation operations
- πΎ Persistent Configuration: localStorage automatically saves all settings
This is a streamlined replica of the Open Story Video creation workflow tool, including the main steps:
Story with Characters (AI Generated):
Content β Character Confirmation β Storyboard β Edit β Export
β β‘ β’ β£ β€
Story without Characters (Manual Creation):
Content β Storyboard β Edit β Export
β β‘ β’ β£
-
Content (Content Creation) - Create story content using JSON Schema forms
- β¨ AI one-sentence complete story generation
- Story title and summary
- Character definitions (supports character reference images)
- Scene and storyboard settings
-
Character Confirmation - π Dedicated character review and generation step
- π Review AI-generated characters (name, description, visual prompts)
- β‘ Batch generate all characters (one-click generate all reference images)
- π Individual character regeneration (hover to regenerate any character)
- π Real-time progress tracking (shows N/M progress bar)
- βοΈ Skip option (can choose to skip, generate later)
- Note: This step only appears when AI story generation includes characters
-
Storyboard - Generate storyboard images using Replicate AI
- π Parallel generation (5 images simultaneously, 4x speed improvement)
- π Real-time progress display
- π Automatically use character reference images (if generated)
- Automatically generate images based on descriptions
- Select images to animate
-
Edit (Editing) - Convert static images to animations
- π Concurrent video generation (3 simultaneously, 2.5x speed improvement)
- ποΈ Automatic audio generation (auto-create voiceovers after video completion)
- π¬ Individual preview (click any shot to preview merged effect)
- π Real-time progress tracking
- Use Stable Video Diffusion
- Preview animation results
-
Export - Compose and export final video
- π¬ Batch preview (preview complete video of all selected shots merged)
- Browser-side or Docker service export
- ποΈ Automatically merge video and audio
- Automatically add subtitles
- One-click download complete video
- Next.js 14 - React framework (App Router)
- TypeScript - Type safety
- MobX - Reactive state management
- react-jsonschema-form - Dynamic form generation
- AI Model Services:
- OpenRouter - 50+ LLM models (text generation)
- Replicate - Image and video generation
- FLUX.1 Schnell - Image generation
- Stable Video Diffusion - Image to video
- OpenAI TTS / ElevenLabs - Text-to-speech
- Video Processing:
- FFmpeg.wasm - Browser-side video processing
- Docker FFmpeg - Server-side video processing (optional)
- Tailwind CSS - Styling framework
npm installCopy .env.example to .env.local:
cp .env.example .env.localEdit .env.local and add your Replicate API token:
REPLICATE_API_TOKEN=your_token_hereGet API token: https://replicate.com/account/api-tokens
npm run devVisit http://localhost:3000
- On the Content page, find the AI Story Generator (purple card)
- Enter one sentence to describe your story idea, for example:
- "A little girl discovers the magic of matches on a cold winter night"
- "A robot learns human emotions in a futuristic city"
- Click "Generate Complete Story"
- Wait 10-30 seconds, AI will automatically generate a complete story and jump to the next step
Detailed guide: AI_FEATURES_GUIDE.md
- Fill in story title and summary
- Select visual style (3D Cartoon, Anime, Realistic, etc.)
- Select aspect ratio (16:9, 9:16, 1:1, 4:3)
- Add character information
- Create scenes and storyboards:
- Each scene contains multiple storyboards
- Each storyboard needs: subtitle, position, content description
Click Submit after completion to proceed to the next step.
- In the Character References card, click "Generate All Characters"
- Wait for each character's reference image to generate (about 3-5 seconds/character)
- Green β mark will appear after character generation is complete
- Click "Generate All Images" to batch generate all storyboard images
- System will automatically use character references for consistency
- Or individually click each storyboard's "Generate Image" button
- Wait for image generation to complete (using FLUX.1 model)
- Select storyboards to animate (click image to select)
- Click "Select All" to select all or manually select
- Click "Next" to enter editing step
- View selected storyboard images
- Select images to animate
- Click "Animate" button to start generating animation
- Wait for video generation to complete (using Stable Video Diffusion)
- View and play generated animations
- Click "Export Video β" after completion to enter export step
- Select "Browser (FFmpeg.wasm)" option
- Select video segments to merge
- Click "Export Video" button
- Wait for processing to complete (first use requires downloading WASM files)
- Automatically download merged video file
-
Start FFmpeg service:
npm run docker:ffmpeg
-
Select "Docker Service" option on export page
-
Select video segments to merge
-
Click "Export Video" button
-
Wait for processing to complete and download
For detailed instructions, see VIDEO_EXPORT_GUIDE.md
open-story-video/
βββ src/
β βββ app/
β β βββ api/
β β β βββ generate-image/ # Image generation API
β β β βββ generate-video/ # Video generation API
β β β βββ compose-video/ # Video composition API
β β β βββ add-audio/ # Audio addition API
β β βββ layout.tsx
β β βββ page.tsx
β β βββ globals.css
β βββ components/
β β βββ StoryForm.tsx # Content creation form
β β βββ Storyboard.tsx # Storyboard view
β β βββ EditView.tsx # Edit/animation view
β β βββ ExportView.tsx # Video export view
β βββ stores/
β β βββ StoryStore.ts # MobX state management
β βββ utils/
β βββ videoComposer.ts # Browser-side video processing
βββ assets/ # Reference screenshots
βββ Dockerfile.ffmpeg # FFmpeg service Docker configuration
βββ ffmpeg-service.js # FFmpeg standalone service
βββ docker-compose.yml # Docker Compose configuration
βββ package.json
βββ tsconfig.json
βββ next.config.js
βββ tailwind.config.js
Generate images
Request Body:
{
"prompt": "Description text",
"style": "3D Cartoon",
"aspectRatio": "16:9"
}Response:
{
"imageUrl": "https://..."
}Convert image to video
Request Body:
{
"imageUrl": "https://..."
}Response:
{
"videoUrl": "https://..."
}- API Rate Limiting: Replicate API has call limits, recommend adding delays during batch generation
- Cost Control: Every API call incurs costs, control usage carefully
- Generation Times:
- Image generation: ~3-10 seconds
- Video generation: ~20-60 seconds
- Error Handling: All API calls include basic error handling and user prompts
- Open browser developer tools to view Console logs
- Check Network tab to view API requests and responses
- MobX state can be viewed through React DevTools
- Use "Reset" button to clear current workflow and start over
- No user authentication
- No data persistence (data lost on page refresh)
- No advanced editing features (video editing, audio addition, etc.)
- No export functionality
- Fixed AI model parameters
- Add LocalStorage or database persistence
- Implement project save and load functionality
- Add more AI model options
- Implement video concatenation and export
- Add audio generation and voiceover features
- Optimize UI/UX interaction experience
- Add progress bars and more detailed status indicators
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Install dependencies:
npm install
- Make your changes
- Run tests:
npm test - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
- Use TypeScript for type safety
- Follow ESLint configuration
- Use Tailwind CSS for styling
- Write meaningful commit messages
- User authentication system
- Database persistence
- Advanced video editing features
- More AI model integrations
- Real-time collaboration
- Mobile app support
- β¨ Added dedicated character confirmation step
- β¨ Implemented character regeneration functionality
- β¨ Added batch character generation
- β¨ Improved parallel generation performance
- π¬ Video export functionality
- ποΈ Automatic audio generation
- π€ AI story generation
- π Real-time progress tracking
If you encounter any issues or have questions:
- Check the Issues page
- Create a new issue with detailed information
- Join our Discord community
- Check our Documentation
- Next.js - React framework
- Replicate - AI model hosting
- OpenRouter - LLM API gateway
- MobX - State management
- Tailwind CSS - CSS framework
MIT License - see LICENSE file for details
