How xuanyustudio/localminidrama works
LocalMiniDrama is a local-first AI short-drama and comic-drama creator. A creator develops a drama from story and episodes through character, scene, and prop assets, then storyboards, generated images/video, and episode assembly. The README also documents list and canvas editing, batch workflows, shared asset libraries, imports/exports, and configurable AI providers. Source excerpts support the app setup, task polling, and local storage details; several feature connections are based on documented capabilities and the repository’s route/service layout.
Main entry points: index.js API routes · generation.js Frontend API clients · DramaDetail.vue Drama views · storageLayout.js Local media storage
Components 20
Drama authoring
- Vue application
frontweb/src/main.js - Drama views
frontweb/src/views/DramaDetail.vue - Canvas workflow
frontweb/src/views/DramaCanvas.vue - Story generation
frontweb/src/composables/useStoryGeneration.js - Asset editing
frontweb/src/composables/filmCreate/useCharacters.js - Storyboard editing
frontweb/src/api/storyboards.js - Generation task state
frontweb/src/stores/generationTaskStore.js - Frontend API clients
frontweb/src/api/generation.js
Media production
- Image generation
backend-node/src/services/imageService.js - Video generation
backend-node/src/services/videoService.js - Episode assembly
backend-node/src/services/videoMergeService.js - AI providers
Backend domain
- API routes
backend-node/src/routes/index.js - Story and drama
backend-node/src/services/storyGenerationService.js - Character scene prop
backend-node/src/services/characterGenerationService.js - Storyboard generation
backend-node/src/services/storyboardService.js
Local runtime
- SQLite database
backend-node/src/db/index.js - Local media storage
backend-node/src/services/storageLayout.js - Express application
backend-node/src/app.js
Other components
- Creator
Connections 30
- Creator → Vue application: uses
- Vue application → Drama views: opens
- Vue application → Canvas workflow: opens
- Drama views → Story generation: starts story
- Drama views → Asset editing: edits assets
- Drama views → Storyboard editing: edits boards
- Canvas workflow → Storyboard editing: orchestrates boards
- Story generation → Frontend API clients: requests generation
- Asset editing → Frontend API clients: requests assets
- Storyboard editing → Frontend API clients: requests boards
- Canvas workflow → Generation task state: tracks tasks
- Generation task state → Frontend API clients: polls tasks
- Frontend API clients → Express application: sends requests
- Express application → API routes: mounts routes
- API routes → Story and drama: dispatches
- API routes → Character scene prop: dispatches
- API routes → Storyboard generation: dispatches
- Story and drama → SQLite database: stores drama
- Character scene prop → AI providers: generates assets
- Storyboard generation → AI providers: generates boards
- Storyboard generation → SQLite database: stores boards
- API routes → Image generation: dispatches
- API routes → Video generation: dispatches
- API routes → Episode assembly: dispatches
- Image generation → AI providers: generates images
- Video generation → AI providers: generates clips
- Image generation → Local media storage: writes media
- Video generation → Local media storage: writes media
- Episode assembly → Local media storage: writes episode
- Express application → Local media storage: serves static media