storycast README

The project's README from github.com/ilkerzg/storycast. As one markdown file: README.md.

Storycast

Storycast

Type a topic. Get a story.
Pick a character, give it a topic, and get back a narrated animated film, made end to end on fal.

Open Storycast · Watch the launch video

Storycast home

What it makes

A character narrates a short film that explains a topic: a script, keyframes, animated shots, on-camera lines, narration, a score, a hand-lettered end card and word-by-word subtitles. 50 ready narrators, 26 illustrated looks, 74 languages, 1 to 10 minutes long. You can also invent a character, upload your own, or bring your own illustration style.

Nib and the stick inside the pencil
Nib and the stick inside the pencil · Claymation
Kiko and the secret life of lightning
Kiko and the secret life of lightning · Watercolor anime
Stella and the very first newspapers
Stella and the very first newspapers · Comic ligne claire
Rex and the bone that turned to stone
Rex and the bone that turned to stone · Kid's crayon
Rio y el tango del puerto
Rio y el tango del puerto · Marker sketch · Español
Wren ve yerin altındaki gizli şehirler
Wren ve yerin altındaki gizli şehirler · Gouache storybook · Türkçe

Watch the launch video
▶ Launch video

How it works

Everything runs in your browser with your own fal key.

Make a film Watch a film
Pick a topic, a narrator, a look, a voice and a length Watch, share or download the finished film
  1. Script. A director writes the story in blocks, each either voice-over or the narrator talking on camera, and a script editor smooths every jump between scenes.
  2. Narrator and keyframes. The narrator gets a model sheet and a hero portrait, and every block gets a keyframe in the chosen look.
  3. Voice. Each block is narrated, and on-camera lines are fitted to the right length.
  4. Shots. Voice-over blocks become animated shots and on-camera blocks become lip-synced shots.
  5. Score and edit. A score is composed, the shots are cut to the narration, the sound is mixed, an end card is lettered and subtitles are added.

Models

Step fal endpoint
Director, script editor openrouter/router with Claude Opus 5.5
Reading images, shot checks openrouter/router/vision with Claude Opus 5.5 and Gemini 3.8 Flash
Model sheets, keyframes, end cards openai/gpt-image-2.5/flare/text-to-image, openai/gpt-image-2.5/flare/edit
Shots minimax/h3-max/reference-to-video
On-camera lines minimax/h3-max/lip-sync/image-to-video
Narration fal-ai/elevenlabs/tts/eleven-v3
Score elevenlabs/music/v2.5
Edit fal-ai/workflow-utilities/trim-video and fal-ai/ffmpeg-api (extract-frame, merge-videos, images-to-video, compose, loudnorm, merge-audio-video)
Subtitles fal-ai/workflow-utilities/auto-subtitle

Make one with your agent

Every page has a Copy agent prompt button. It copies a step-by-step brief of this pipeline, filled in with the page's topic, look, narrator and voice, so a coding agent with a fal key can make the film from your terminal.

Explore

Run locally

cd web && npm install && npm run dev

Connect your fal key in the app to make stories.

Deploy

web/ is a static Vite site. Deploy it to any static host (on Vercel: root web/).

Sharing (optional)

share/ is a Cloudflare Worker with D1 and R2. Without it, sharing is hidden.

cd share && npm install && npx wrangler login
npx wrangler d1 create storycast
npx wrangler r2 bucket create storycast-media
npx wrangler d1 execute storycast --remote --file schema.sql
npx wrangler turnstile widget create storycast-share --domain <your site host> --mode managed

Put the database id and your site's address (ALLOWED_ORIGINS) into share/wrangler.jsonc, then:

npx wrangler secret put IP_SALT
npx wrangler secret put TURNSTILE_SECRET
npx wrangler secret put FAL_KEY
npx wrangler deploy

Set VITE_SHARE_API and VITE_TURNSTILE_SITE_KEY for the site build (see web/.env.example) and redeploy.

To publish a story sent to Explore:

npx wrangler d1 execute storycast --remote --command "UPDATE films SET status = 'public' WHERE id = '<story id>'"

storycast (ilkerzg/storycast)

Searching Database…

What is this?Storycast turns a topic you type into a narrated animated short film: pick a character, give it a topic, and it builds a script, keyframes, animated shots, narration, score, end card and subtitles end to end.
Is this a hosted service or something I run myself?It is a static Vite web app you deploy yourself; everything runs client-side in your browser using your own fal API key, with an optional Cloudflare Worker for the sharing feature.
How do I get it running?Connect your fal key inside the app to start making stories, then deploy the web/ folder (a static Vite site) to any static host, for example Vercel with the root set to web/.
What API key do I need to make a story?You need your own fal key, since fal routes the whole pipeline to Claude Opus, Gemini, GPT-image, Minimax, and ElevenLabs endpoints.
Does the share feature work out of the box?No, sharing is hidden by default; it only works if you deploy the separate Cloudflare Worker (with D1 and R2) and configure its database id and site origin.
What does a finished film actually include?Each film has a script, model-sheet keyframes in a chosen art style, animated and lip-synced on-camera shots, full narration, a composed score, a hand-lettered end card, and word-by-word subtitles.
How much choice do I have over narrator and style?There are 50 ready narrators, 26 illustrated looks, and support for 74 languages, with films running 1 to 10 minutes; you can also invent, upload, or bring your own character and art style.
Which AI models power the pipeline?Claude Opus 5.5 and Gemini handle directing and script/vision checks, GPT-image generates keyframes and end cards, Minimax h3-max generates shots and lip-sync, and ElevenLabs produces narration and the score.
Can a coding agent make a video for me instead of using the UI?Yes, every page has a 'Copy agent prompt' button that copies a step-by-step pipeline brief filled with that page's topic, look, narrator and voice, so an agent with a fal key can generate the film from your terminal.
Creator
ilkerzg
Size
25.2 MB
Stars
236
Updated
CommitSep 25
Age
23d
Commits · 90 Days