Skip to content

Setup decision tree

Use this page to pick packages and commands without reading every README first.

Integrate story tests into an existing test suite

Section titled “Integrate story tests into an existing test suite”
  1. Install the adapter for your framework or language (see Package map).
  2. Configure the reporter with rawRunPath so CI writes RawRun JSON.
  3. Add executable-stories-formatters for report generation.
StackPackageReporter config
Vitestexecutable-stories-vitestStoryReporter + rawRunPath
Jestexecutable-stories-jestJest reporter + rawRunPath
Playwrightexecutable-stories-playwrightPlaywright reporter + rawRunPath
Cypressexecutable-stories-cypressCypress reporter + rawRunPath
Go / pytest / Ruby / Rust / JVM / .NETlanguage packagedefault .executable-stories/raw-run.json

Quick bootstrap for JS projects: executable-stories-init.

After tests write RawRun JSON:

Terminal window
executable-stories format reports/raw-run.json --format html,markdown --output-dir reports

For a Starlight/Astro docs site from artifacts: executable-stories-demo or formatters init-astro — see Astro docs site.

Emit machine artifacts in CI:

Terminal window
executable-stories format reports/raw-run.json \
--format story-report-json,scenario-index-json,behavior-manifest-json \
--output-dir reports \
--output-name index

Optional MCP: MCP server (executable-stories-mcp).

Full contract: Agent artifact contract.

  1. Generate StoryReport JSON in CI (see above).
  2. Install executable-stories-react.
  3. Render the report in your app — see Embed reports in React apps.

Non-JS adapters must produce RawRun compatible with the shared formatter pipeline. See Cross-language parity and run:

Terminal window
pnpm run verify:go
pnpm run verify:pytest
pnpm run verify:ruby
# … etc.
./scripts/verify-all.sh
PackageUse it forNot for
executable-stories-formattersCLI, all output formats, validationIn-test story API
executable-stories-initFirst-time JS wiringNon-JS adapters
executable-stories-demoDemo/publish site from artifactsIn-process test API
executable-stories-reactProduct UI embeddingStatic HTML reports (use formatters HTML)
executable-stories-mcpAgent query + focused runsReplacing your test runner

Monorepo example apps include report:agents:

Terminal window
cd apps/vitest-example && pnpm test:report

This runs tests, then generates StoryReport, scenario index, and behavior manifest under reports/.