Skip to content

Add storyboard acceptance and book export#19

Merged
amoghbanta merged 4 commits intomainfrom
increment-5-pipeline-ux
Feb 11, 2026
Merged

Add storyboard acceptance and book export#19
amoghbanta merged 4 commits intomainfrom
increment-5-pipeline-ux

Conversation

@amoghbanta
Copy link
Collaborator

Summary

  • Accept Storyboard: POST /books/:label/accept-storyboard validates all pages are rendered, persists acceptance via putNodeData. storyboardAccepted boolean added to BookSummary across list/detail endpoints.
  • Export Book: GET /books/:label/export zips the entire book directory (DB, PDF, config, images) as a downloadable .zip. Gated behind storyboard acceptance. Uses fflate (pure JS, ~8KB).
  • Frontend: AcceptStoryboardDialog wired to real mutation with loading/error states. Accepted state shown across storyboard page, book detail, and home page. Export button triggers browser download.

Test plan

  • pnpm typecheck — clean
  • pnpm vitest run — 311 tests pass (45 new)
  • Manual: run pipeline → accept storyboard → verify badge appears → export ZIP → verify contents (DB, PDF, images)
  • Manual: re-visit storyboard after acceptance → "Accepted" button disabled, Export available
  • Manual: home page shows "Accepted" badge on accepted books

Add acceptStoryboard() that validates all pages are rendered, stores
acceptance via putNodeData("storyboard-acceptance", "book"). Include
storyboardAccepted boolean in BookSummary for listBooks/getBook.
Export zips the entire book directory (DB, PDF, config, images) after
verifying storyboard is accepted. Uses fflate for pure-JS ZIP creation.
POST /books/:label/accept-storyboard validates and persists acceptance.
GET /books/:label/export returns the full book directory as a ZIP download.
AcceptStoryboardDialog calls real mutation with loading/error states.
Storyboard page shows Accepted state + Export button when accepted.
Book detail page shows Accepted badge and Export ZIP card.
Home page shows Accepted badge on book cards.
@amoghbanta amoghbanta merged commit 5cd146f into main Feb 11, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant