← the shelf

Using Story Cards

The complete path: blank project → written story → framed shots → performance → a published, narrated slideshow. Twenty minutes the first time; much faster after.

1Start a project

2Write the cards

3Give every card an image

4Cut a Kuleshov moment

One beat, several shots: his face → the empty bench → his face again, closer.

5Motion and marks

6Perform it

7Export

Book icon → three exports:

8Publish to the shelf

  1. Export the slideshow; make a folder stories/<your-slug>/ in the shelf repo and save it as index.html.
  2. Copy the OG <meta> block from The 6:40's file into yours (swap title, logline, cover) so links unfurl nicely.
  3. Copy and edit meta.json; add a card for it on the gallery page.
  4. Deploy:
cd EA/cards-shelf
CLOUDFLARE_ACCOUNT_ID=<personal-account-id> npx wrangler pages deploy . \
  --project-name=cards-shelf --branch=main --commit-dirty=true

These four steps are exactly what the future in-app Publish button will do in one click.

9Replace device TTS with Google TTS

The 🔊 button uses the viewer's device voice — quality varies. For a consistent, high-quality narrator, pre-generate the audio once with Google's Gemini TTS and bake it into the story. The player automatically prefers real audio over device TTS.

  1. Get a free API key at aistudio.google.com/apikey.
  2. In Terminal:
export GEMINI_API_KEY="your-key"
python3 tools/narrate.py stories/the-640/index.html
# pick a different voice:
python3 tools/narrate.py stories/the-640/index.html --voice Charon

10Record your own narration

  1. List the steps and their lines: python3 tools/attach-audio.py stories/<slug>/index.html --list
  2. Record one take per step — Voice Memos or QuickTime (File → New Audio Recording) both work. Perform mode is your teleprompter: play the story and read along.
  3. Name the files step-00.m4a, step-01.m4a… to match the list, and drop them in the story's audio/ folder.
  4. Attach and redeploy: python3 tools/attach-audio.py stories/<slug>/index.html

Steps without a recording fall back to device TTS — you can voice just the title card and let TTS carry the rest, or silence a step by leaving it out and muting 🔊.