Docs
/
Leumas Coloringbooks at coloringbooks.leumas.tech

@leumas/coloringbooks-web

Leumas Coloringbooks at coloringbooks.leumas.tech — coloring pages, puzzles and activity books: generate them, play them in the browser, print them, bind them into a book and sell it.

@leumas/coloringbooks-web — Leumas Coloringbooks at coloringbooks.leumas.tech

Make a page. Make a book. Print it, colour it, sell it. Six kinds of activity page — coloring, connect the dots, sudoku, crossword, word search, maze — generated on request, playable in the browser, printable with an answer key, bound into a book with a cover, exported to one PDF, and sellable on the Leumas app store.

Status: built. Blueprint: products/TODOS/coloringbooks.leumas.tech.md (§6a records the decisions made while building).

What is where

PieceLives in
The kinds — schema, generator, print, answer key@leumas/activity-pages (shared/packages/activity-pages/src/kinds/*) via definePageKind
The playable boards@leumas/activity-pages/react (PageView, SudokuBoard, WordSearchBoard, MazeBoard, CrosswordBoard, ImagePageView)
The manifest a browser needs alone@leumas/activity-pages/manifest
The book rendererrenderBookHtml — cover, pages, answer-key section, one document
Puzzlesthe puzzles adapter (shared/engines/adapters/domain/puzzles) through an injected ctx.run — seeded, unique sudoku
Line art and crosswordsthe generation lane (createLlm, the media generation registry) through the same injected ctx
The APIproducts/leumas-api/src/{controllers,routes}/activity.js/api/activity/*; dynamic activity_pages, activity_books, activity_gen
The PDF jobproducts/leumas-api/src/jobs/activityExport.js@leumas/jobs activity-export, through the generation engine's Puppeteer path
Sellinga digital-product listing in the app store's review queue (marketplaceStore.upsert, status: submitted)
The moneypolicy.js activity.* — floor: generate, play, 3 image pages a day; tiers: save, book (5/50/∞), clean print, publish, sell, 60/300/∞ image pages a month. No plan row.
This sitesrc/content/pages.js (the prose as data) · src/content/samples.generated.js (seeded samples for the tiles) · src/screens/*
Guardspnpm check:coloringbooks-public · pnpm check:activity-pages · pnpm smoke:coloringbooks-site

What is free and what is not

A puzzle is arithmetic and is free for a stranger, played and printed (watermarked) with its key. A line-art page costs an image generation: an account gets three a day, a membership a monthly allowance. A book — and a clean print, publishing and selling — is what a membership buys. Nothing a member publishes or sells appears before a person reviews it, because the audience is children.

Why this can read a visitor's session with no configuration

coloringbooks.leumas.tech is a platform-owned Imperium site row (shared/services/index/src/coloringbooksSite.js), served by the Imperium worker behind the IIS *.leumas.tech wildcard, which forwards /api and the auth prefixes to leumas-api preserving the visitor's Host header and cookies. [warning] Never set VITE_API_BASE.

Running it

pnpm dev:api                                     # :3000
pnpm dev:coloringbooks                           # :5082
pnpm --filter @leumas/coloringbooks-web build
pnpm check:coloringbooks-public && pnpm check:activity-pages && pnpm smoke:coloringbooks-site

[warning] pnpm deploy:coloringbooks copies files but carries no release stamp. Only pnpm ship applies.

Source products/leumas-coloringbooks/README.md (no-git)markdownjson
Generated from the Leumas repository. Every page cites the file it came from.leumas.techllms.txt