尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
agent for creating books
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗StoryMe is a pnpm/Turborepo monorepo with two supported products:
Development is paused. docs/PROJECT_CLOSEOUT.md records the verified candidate, what was and was not verified, and how to return to the project.
Needs Node.js ≥ 20, pnpm 9, Docker running, and ports 5440, 6380, 4100,
3100 free.
pnpm install
pnpm demo:local # disposable stack, mock providers; open http://127.0.0.1:3100
pnpm demo:capture # in a second terminal: EN/RU/PL books, PDFs, screenshots, manifest
demo:local prints the synthetic sign-in when it is ready and removes its
containers and synthetic data on Ctrl+C. demo:capture writes to the ignored
artifacts/demo-showcase/ directory, which teardown does not touch.
All demos use deterministic mock providers. They show the product and pipeline working, not real-model quality.
pnpm verify:local --profile offline # lint, typecheck, unit tests, offline evals
pnpm verify:local --profile integration # API integration suite on disposable PostgreSQL/Redis
pnpm verify:local --profile browser # browser journeys + recovery journey
The Docker profiles report UNAVAILABLE, and change nothing, if their ports or
the storyme-integration Compose project are already in use. Production builds
are not part of verify:local; the production browser smoke is
pnpm --filter @book/web build followed by
pnpm --filter @book/web test:e2e:production. See
local-verification.md and the exact commands in
PROJECT_CLOSEOUT.md.
Each claim links to the code and tests behind it:
Copy .env.example to apps/api/.env for manual runs
(setup); demo:local and
verify:local need no .env and never edit one.
AUTH_MODE (API) and NEXT_PUBLIC_AUTH_MODE (web) are jwt
(default; email/password, JWT access token, rotating HttpOnly refresh cookie)
or dev (local-only header identity). They must match, or every request 401s.PRODUCT_MODE and NEXT_PUBLIC_PRODUCT_MODE are home
(default; generation costs no credits, purchase UI hidden) or demo (credit
charges and Stripe Checkout, disabled unless STRIPE_BILLING_ENABLED=true).STORY_GENERATION_PROVIDER, CHARACTER_PROFILE_PROVIDER and
IMAGE_GENERATION_PROVIDER default to mock. openai needs OPENAI_API_KEY
and costs money per call.PDF_STORAGE_DRIVER and IMAGE_STORAGE_DRIVER default to local
(apps/api/tmp/); s3/r2 are exercised only by the manual
smoke:cloud-storage script (guide).
The PDF preview endpoint is always GET /api/books/:id/pdf/preview.pnpm --filter @book/web build runs in production mode and
requires NEXT_PUBLIC_API_URL ending in /api; it never falls back to
localhost. NEXT_PUBLIC_ENABLE_DEVELOPER_DIAGNOSTICS=true is for trusted
developer builds only.The full list is in PROJECT_CLOSEOUT.md.
apps/api (@book/api): NestJS API and generation worker, Prisma/PostgreSQL.apps/web (@book/web): Next.js frontend and Playwright journeys.packages/types (@book/types): types shared between API and web.scripts/: the demo, verification and test-infrastructure launchers.