Skip to content
stacks

React SPA on Vite

A browser-only React single-page app built with Vite and served as static files, with React Router, TanStack Query over a typed fetch client with zod, Biome, Vitest with Testing Library and MSW, and Playwright tests of the built site.

What done means

Your agent follows the brief, then runs stacks verify without weakening or skipping checks. What happens next

Declared steps: install, lint, typecheck, test, build, e2e, web, readme-filled. View commands

Use this stack

Paste the prompt into the coding agent working on your project.

Project intent

Uses the stack’s default fragments. Review the brief with your agent.Uses stated defaults and omits deploy, release, and app fragments unless explicitly requested.

View prompt
Use the react-vite stack for this project. 1. Run npx @steamfield/stacks show react-vite --json and check that it fits the project. If it does not, explain why before changing files. 2. Run npx @steamfield/stacks new react-vite and follow the brief it prints. 3. From the generated project directory, run npx @steamfield/stacks verify. Fix failures without weakening or skipping verification steps. 4. Summarize what changed and the verification result. Quote published stats only when they are available, including their interval and sample size. The stacks docs, written for agents, are at https://stacks.steamfield.io/llms.txt.
Use the react-vite stack for a quick local experiment. 1. Run npx @steamfield/stacks show react-vite --json and check that it fits the project. If it does not, explain why before changing files. 2. Run npx @steamfield/stacks new react-vite --sandbox and follow the brief it prints. 3. From the generated project directory, run npx @steamfield/stacks verify. Fix failures without weakening or skipping verification steps. 4. Summarize what changed and the verification result. Quote published stats only when they are available, including their interval and sample size. The stacks docs, written for agents, are at https://stacks.steamfield.io/llms.txt.
Or use the terminal
npx @steamfield/stacks new react-vite
npx @steamfield/stacks new react-vite --sandbox
Verify steps
StepPhaseLayerCommand
installsetupinstallbun install
lintchecklintbun run lint
typecheckchecktypecheckbun run typecheck
testchecktestbun run test
buildcheckbuildbun run build
e2echecktestbun run e2e
webserveservebun run preview --port ${PORT_WEB} --strictPort
readme-filledcheckchecktest -s README.md && ! grep -n 'stacks:fill' README.md

Usage and outcomes

Usage over time

Showing 180 days of history.

History

The 28-day green rate at each weekly observation. Gaps mean the sample was too small to publish.

Jul 1Oct 10%50%100%
Jul 1Oct 10%50%100%
Jun 1Jul 1Aug 1Sep 1Oct 1Nov 10%50%100%
Jun 1Jul 1Aug 1Sep 1Oct 1Nov 10%50%100%
Jul 1Oct 10%50%100%
Jul 1Oct 10%50%100%
Jun 1Jul 1Aug 1Sep 1Oct 1Nov 10%50%100%
Jun 1Jul 1Aug 1Sep 1Oct 1Nov 10%50%100%

Shaded band: 95% Wilson interval. Dashed rules: content changes. Missing observations remain gaps.

Stacks projects · 28 days through 4 Nov 2026. Counts rounded to 5.

Data table
ThroughGreen rateProjectsContent change
5 Jul 2026hidden: too few projects––
12 Jul 2026hidden: too few projects955–
19 Jul 2026hidden: too few projects1,985–
26 Jul 2026hidden: too few projects3,650–
2 Aug 2026hidden: too few projects5,405–
9 Aug 2026hidden: too few projects6,310–
16 Aug 2026hidden: too few projects7,270–
23 Aug 2026hidden: too few projects7,830–
30 Aug 2026hidden: too few projects8,520–
6 Sept 2026hidden: too few projects9,175–
13 Sept 2026hidden: too few projects9,820–
20 Sept 2026hidden: too few projects10,250–
27 Sept 2026hidden: too few projects10,640–
4 Oct 2026hidden: too few projects11,245–
11 Oct 2026hidden: too few projects12,050–
18 Oct 2026hidden: too few projects12,730–
25 Oct 2026hidden: too few projects13,515–
1 Nov 2026hidden: too few projects13,865–

Weekly projects by preset

Non-overlapping seven-day project counts, grouped by the preset used to start the project.

Jul 1Oct 101k2k3k4kdefault · 12 Jul 2026: 625sandbox · 12 Jul 2026: 335default · 19 Jul 2026: 640sandbox · 19 Jul 2026: 390default · 26 Jul 2026: 1,065sandbox · 26 Jul 2026: 600default · 2 Aug 2026: 1,170sandbox · 2 Aug 2026: 585default · 9 Aug 2026: 1,210sandbox · 9 Aug 2026: 650default · 16 Aug 2026: 1,275sandbox · 16 Aug 2026: 715default · 23 Aug 2026: 1,410sandbox · 23 Aug 2026: 815default · 30 Aug 2026: 1,565sandbox · 30 Aug 2026: 885default · 6 Sept 2026: 1,650sandbox · 6 Sept 2026: 865default · 13 Sept 2026: 1,740sandbox · 13 Sept 2026: 895default · 20 Sept 2026: 1,685sandbox · 20 Sept 2026: 970default · 27 Sept 2026: 1,790sandbox · 27 Sept 2026: 1,050default · 4 Oct 2026: 2,045sandbox · 4 Oct 2026: 1,070default · 11 Oct 2026: 2,210sandbox · 11 Oct 2026: 1,230default · 18 Oct 2026: 2,125sandbox · 18 Oct 2026: 1,210default · 25 Oct 2026: 2,330sandbox · 25 Oct 2026: 1,290default · 1 Nov 2026: 2,240sandbox · 1 Nov 2026: 1,230
Jul 1Oct 101k2k3k4kdefault · 12 Jul 2026: 625sandbox · 12 Jul 2026: 335default · 19 Jul 2026: 640sandbox · 19 Jul 2026: 390default · 26 Jul 2026: 1,065sandbox · 26 Jul 2026: 600default · 2 Aug 2026: 1,170sandbox · 2 Aug 2026: 585default · 9 Aug 2026: 1,210sandbox · 9 Aug 2026: 650default · 16 Aug 2026: 1,275sandbox · 16 Aug 2026: 715default · 23 Aug 2026: 1,410sandbox · 23 Aug 2026: 815default · 30 Aug 2026: 1,565sandbox · 30 Aug 2026: 885default · 6 Sept 2026: 1,650sandbox · 6 Sept 2026: 865default · 13 Sept 2026: 1,740sandbox · 13 Sept 2026: 895default · 20 Sept 2026: 1,685sandbox · 20 Sept 2026: 970default · 27 Sept 2026: 1,790sandbox · 27 Sept 2026: 1,050default · 4 Oct 2026: 2,045sandbox · 4 Oct 2026: 1,070default · 11 Oct 2026: 2,210sandbox · 11 Oct 2026: 1,230default · 18 Oct 2026: 2,125sandbox · 18 Oct 2026: 1,210default · 25 Oct 2026: 2,330sandbox · 25 Oct 2026: 1,290default · 1 Nov 2026: 2,240sandbox · 1 Nov 2026: 1,230
Jun 1Jul 1Aug 1Sep 1Oct 1Nov 101k2k3k4kdefault · 12 Jul 2026: 625sandbox · 12 Jul 2026: 335default · 19 Jul 2026: 640sandbox · 19 Jul 2026: 390default · 26 Jul 2026: 1,065sandbox · 26 Jul 2026: 600default · 2 Aug 2026: 1,170sandbox · 2 Aug 2026: 585default · 9 Aug 2026: 1,210sandbox · 9 Aug 2026: 650default · 16 Aug 2026: 1,275sandbox · 16 Aug 2026: 715default · 23 Aug 2026: 1,410sandbox · 23 Aug 2026: 815default · 30 Aug 2026: 1,565sandbox · 30 Aug 2026: 885default · 6 Sept 2026: 1,650sandbox · 6 Sept 2026: 865default · 13 Sept 2026: 1,740sandbox · 13 Sept 2026: 895default · 20 Sept 2026: 1,685sandbox · 20 Sept 2026: 970default · 27 Sept 2026: 1,790sandbox · 27 Sept 2026: 1,050default · 4 Oct 2026: 2,045sandbox · 4 Oct 2026: 1,070default · 11 Oct 2026: 2,210sandbox · 11 Oct 2026: 1,230default · 18 Oct 2026: 2,125sandbox · 18 Oct 2026: 1,210default · 25 Oct 2026: 2,330sandbox · 25 Oct 2026: 1,290default · 1 Nov 2026: 2,240sandbox · 1 Nov 2026: 1,230
Jun 1Jul 1Aug 1Sep 1Oct 1Nov 101k2k3k4kdefault · 12 Jul 2026: 625sandbox · 12 Jul 2026: 335default · 19 Jul 2026: 640sandbox · 19 Jul 2026: 390default · 26 Jul 2026: 1,065sandbox · 26 Jul 2026: 600default · 2 Aug 2026: 1,170sandbox · 2 Aug 2026: 585default · 9 Aug 2026: 1,210sandbox · 9 Aug 2026: 650default · 16 Aug 2026: 1,275sandbox · 16 Aug 2026: 715default · 23 Aug 2026: 1,410sandbox · 23 Aug 2026: 815default · 30 Aug 2026: 1,565sandbox · 30 Aug 2026: 885default · 6 Sept 2026: 1,650sandbox · 6 Sept 2026: 865default · 13 Sept 2026: 1,740sandbox · 13 Sept 2026: 895default · 20 Sept 2026: 1,685sandbox · 20 Sept 2026: 970default · 27 Sept 2026: 1,790sandbox · 27 Sept 2026: 1,050default · 4 Oct 2026: 2,045sandbox · 4 Oct 2026: 1,070default · 11 Oct 2026: 2,210sandbox · 11 Oct 2026: 1,230default · 18 Oct 2026: 2,125sandbox · 18 Oct 2026: 1,210default · 25 Oct 2026: 2,330sandbox · 25 Oct 2026: 1,290default · 1 Nov 2026: 2,240sandbox · 1 Nov 2026: 1,230
Jul 1Oct 101k2k3k4kdefault · 12 Jul 2026: 625sandbox · 12 Jul 2026: 335default · 19 Jul 2026: 640sandbox · 19 Jul 2026: 390default · 26 Jul 2026: 1,065sandbox · 26 Jul 2026: 600default · 2 Aug 2026: 1,170sandbox · 2 Aug 2026: 585default · 9 Aug 2026: 1,210sandbox · 9 Aug 2026: 650default · 16 Aug 2026: 1,275sandbox · 16 Aug 2026: 715default · 23 Aug 2026: 1,410sandbox · 23 Aug 2026: 815default · 30 Aug 2026: 1,565sandbox · 30 Aug 2026: 885default · 6 Sept 2026: 1,650sandbox · 6 Sept 2026: 865default · 13 Sept 2026: 1,740sandbox · 13 Sept 2026: 895default · 20 Sept 2026: 1,685sandbox · 20 Sept 2026: 970default · 27 Sept 2026: 1,790sandbox · 27 Sept 2026: 1,050default · 4 Oct 2026: 2,045sandbox · 4 Oct 2026: 1,070default · 11 Oct 2026: 2,210sandbox · 11 Oct 2026: 1,230default · 18 Oct 2026: 2,125sandbox · 18 Oct 2026: 1,210default · 25 Oct 2026: 2,330sandbox · 25 Oct 2026: 1,290default · 1 Nov 2026: 2,240sandbox · 1 Nov 2026: 1,230
Jul 1Oct 101k2k3k4kdefault · 12 Jul 2026: 625sandbox · 12 Jul 2026: 335default · 19 Jul 2026: 640sandbox · 19 Jul 2026: 390default · 26 Jul 2026: 1,065sandbox · 26 Jul 2026: 600default · 2 Aug 2026: 1,170sandbox · 2 Aug 2026: 585default · 9 Aug 2026: 1,210sandbox · 9 Aug 2026: 650default · 16 Aug 2026: 1,275sandbox · 16 Aug 2026: 715default · 23 Aug 2026: 1,410sandbox · 23 Aug 2026: 815default · 30 Aug 2026: 1,565sandbox · 30 Aug 2026: 885default · 6 Sept 2026: 1,650sandbox · 6 Sept 2026: 865default · 13 Sept 2026: 1,740sandbox · 13 Sept 2026: 895default · 20 Sept 2026: 1,685sandbox · 20 Sept 2026: 970default · 27 Sept 2026: 1,790sandbox · 27 Sept 2026: 1,050default · 4 Oct 2026: 2,045sandbox · 4 Oct 2026: 1,070default · 11 Oct 2026: 2,210sandbox · 11 Oct 2026: 1,230default · 18 Oct 2026: 2,125sandbox · 18 Oct 2026: 1,210default · 25 Oct 2026: 2,330sandbox · 25 Oct 2026: 1,290default · 1 Nov 2026: 2,240sandbox · 1 Nov 2026: 1,230
Jun 1Jul 1Aug 1Sep 1Oct 1Nov 101k2k3k4kdefault · 12 Jul 2026: 625sandbox · 12 Jul 2026: 335default · 19 Jul 2026: 640sandbox · 19 Jul 2026: 390default · 26 Jul 2026: 1,065sandbox · 26 Jul 2026: 600default · 2 Aug 2026: 1,170sandbox · 2 Aug 2026: 585default · 9 Aug 2026: 1,210sandbox · 9 Aug 2026: 650default · 16 Aug 2026: 1,275sandbox · 16 Aug 2026: 715default · 23 Aug 2026: 1,410sandbox · 23 Aug 2026: 815default · 30 Aug 2026: 1,565sandbox · 30 Aug 2026: 885default · 6 Sept 2026: 1,650sandbox · 6 Sept 2026: 865default · 13 Sept 2026: 1,740sandbox · 13 Sept 2026: 895default · 20 Sept 2026: 1,685sandbox · 20 Sept 2026: 970default · 27 Sept 2026: 1,790sandbox · 27 Sept 2026: 1,050default · 4 Oct 2026: 2,045sandbox · 4 Oct 2026: 1,070default · 11 Oct 2026: 2,210sandbox · 11 Oct 2026: 1,230default · 18 Oct 2026: 2,125sandbox · 18 Oct 2026: 1,210default · 25 Oct 2026: 2,330sandbox · 25 Oct 2026: 1,290default · 1 Nov 2026: 2,240sandbox · 1 Nov 2026: 1,230
Jun 1Jul 1Aug 1Sep 1Oct 1Nov 101k2k3k4kdefault · 12 Jul 2026: 625sandbox · 12 Jul 2026: 335default · 19 Jul 2026: 640sandbox · 19 Jul 2026: 390default · 26 Jul 2026: 1,065sandbox · 26 Jul 2026: 600default · 2 Aug 2026: 1,170sandbox · 2 Aug 2026: 585default · 9 Aug 2026: 1,210sandbox · 9 Aug 2026: 650default · 16 Aug 2026: 1,275sandbox · 16 Aug 2026: 715default · 23 Aug 2026: 1,410sandbox · 23 Aug 2026: 815default · 30 Aug 2026: 1,565sandbox · 30 Aug 2026: 885default · 6 Sept 2026: 1,650sandbox · 6 Sept 2026: 865default · 13 Sept 2026: 1,740sandbox · 13 Sept 2026: 895default · 20 Sept 2026: 1,685sandbox · 20 Sept 2026: 970default · 27 Sept 2026: 1,790sandbox · 27 Sept 2026: 1,050default · 4 Oct 2026: 2,045sandbox · 4 Oct 2026: 1,070default · 11 Oct 2026: 2,210sandbox · 11 Oct 2026: 1,230default · 18 Oct 2026: 2,125sandbox · 18 Oct 2026: 1,210default · 25 Oct 2026: 2,330sandbox · 25 Oct 2026: 1,290default · 1 Nov 2026: 2,240sandbox · 1 Nov 2026: 1,230
  • default
  • sandbox

Stacks projects per UTC week through 4 Nov 2026. Published preset counts only; hidden cells are not zero.

Data table
Week endingPresetProjects
5 Jul 2026default–
12 Jul 2026default625
19 Jul 2026default640
26 Jul 2026default1,065
2 Aug 2026default1,170
9 Aug 2026default1,210
16 Aug 2026default1,275
23 Aug 2026default1,410
30 Aug 2026default1,565
6 Sept 2026default1,650
13 Sept 2026default1,740
20 Sept 2026default1,685
27 Sept 2026default1,790
4 Oct 2026default2,045
11 Oct 2026default2,210
18 Oct 2026default2,125
25 Oct 2026default2,330
1 Nov 2026default2,240
5 Jul 2026sandbox–
12 Jul 2026sandbox335
19 Jul 2026sandbox390
26 Jul 2026sandbox600
2 Aug 2026sandbox585
9 Aug 2026sandbox650
16 Aug 2026sandbox715
23 Aug 2026sandbox815
30 Aug 2026sandbox885
6 Sept 2026sandbox865
13 Sept 2026sandbox895
20 Sept 2026sandbox970
27 Sept 2026sandbox1,050
4 Oct 2026sandbox1,070
11 Oct 2026sandbox1,230
18 Oct 2026sandbox1,210
25 Oct 2026sandbox1,290
1 Nov 2026sandbox1,230

By preset

Green verify outcomes by the preset chosen at scaffold time.

Not enough runs in this breakdown yet.

Stacks projects · 28 days through 4 Nov 2026. Counts rounded to 5.

By agent

Within this stack, listed alphabetically. These are project outcomes, not an agent ranking.

Not enough runs in this breakdown yet.

Stacks projects · 28 days through 4 Nov 2026. Counts rounded to 5.

Time to green

Published time summaries on a shared minutes scale. First passing test is a median; 75% reached green by the 75th percentile.

Median to green
–
75th percentile
–
First passing test
–
Verify runs to green
–

Stacks projects · 28 days through 4 Nov 2026. Counts rounded to 5.

Data table
MeasureTime / runs
Median to green–
75th percentile–
First passing test–
Verify runs to green–

Where it breaks

A run can fail more than one step. Environment failures are shown separately.

Environment blockedhidden: too few projects

Share of failed runs before first green. Environment blocked describes the machine, not the stack.

Data table
StepShare
Environment blocked–

What people change

Defaults people keep, and optional fragments they choose to attach.

Default, kept rate

claude-harness100%
git-hooks92%
ci-github92%

Optional, attach rate

rr17%
ce-plugin17%
posthog17%

Share of the window's 12,805 projects. Kept rate is 1 minus the without rate.

Data table
FragmentMeasureShare
claude-harnessKept100%
git-hooksKept92%
ci-githubKept92%
rrAttached17%
ce-pluginAttached17%
posthogAttached17%
By composition 30 fingerprints

Each row is a distinct fragment composition, with its own sample and content history.

CompositionGreen rateSeenChange in life
defaults + ce-plugin + posthog + rr · 198b63dbhidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults − ci-github − git-hooks · 297b66c2hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + rr − ci-github · 5293deb7hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + rr − git-hooks · 5941d0edhidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + rr · 5c9e54b9hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults · 6493fd0bhidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin − ci-github · 6550c3f3hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + posthog + rr − ci-github − git-hooks · 6efc426ahidden: too few projects26 Jul 2026 – 1 Nov 2026None
defaults + rr · 6f4882b3hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + posthog · 77795ba3hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + rr − ci-github − git-hooks · 7f5bb40fhidden: too few projects19 Jul 2026 – 1 Nov 2026None
defaults + posthog + rr − git-hooks · 7f88f0ddhidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin · 8edb5b95hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin − git-hooks · 934e10f2hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + posthog + rr − ci-github · 9ac0118bhidden: too few projects26 Jul 2026 – 1 Nov 2026None
defaults + posthog − ci-github · a4ceb797hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + posthog − ci-github − git-hooks · a6b18fc6hidden: too few projects2 Aug 2026 – 1 Nov 2026None
defaults + rr − ci-github − git-hooks · a8462145hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + posthog · bd315122hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin − ci-github − git-hooks · bf7cb02bhidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + rr − ci-github · c2a4f174hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults − git-hooks · c87ccc95hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + posthog − git-hooks · c8e7bad1hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + posthog + rr − ci-github · caa751c7hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + posthog − ci-github · cf4d0920hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + posthog − ci-github − git-hooks · cfe60c67hidden: too few projects19 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + rr − git-hooks · d6e0a43ehidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + posthog + rr · ed190881hidden: too few projects12 Jul 2026 – 1 Nov 2026None
defaults + ce-plugin + posthog − git-hooks · ee1532d6hidden: too few projects26 Jul 2026 – 1 Nov 2026None
defaults − ci-github · f605572dhidden: too few projects12 Jul 2026 – 1 Nov 2026None

Computed 5 Nov 2026, through 4 Nov 2026. Numbers describe stacks projects, not the ecosystem.