Skip to main content

Framework and Runner Support

Atomic Testing runs across React, Vue and Angular, under several test runners, with a range of design systems. This page is the single place to check whether your stack is supported — and how strongly.

Framework × runner support
FrameworkJest (jsdom)Vitest (jsdom)Vitest (browser mode + Playwright)Playwright (e2e, real browser)
Reactv16, 17, 18, 19VerifiedExperimentalExperimentalExperimental
Vue 3v3VerifiedExperimental—Experimental
Angularv20, 21, 22DisabledDisabledExperimentalExperimental
  • Verified backed by a green fixture
  • Experimental composed best-effort; warns before writing
  • Disabled registered but refused (hover for why)
  • — not offered
Design systems per framework
FrameworkDesign systems
ReactPlain HTML elementsMaterial UI (MUI)MUI XRadix UIshadcn/uiAstryx
Vue 3Plain HTML elementsPrimeVue
AngularPlain HTML elementsAngular Material
Generated, not hand-maintained

The tables above are generated from the same compatibility data that powers create atomic-testing. They can't drift from what the scaffolder actually offers: if a combination isn't here, the CLI won't emit it either.

Verified vs experimental​

Every offered combination carries a support tier:

  • Verified — backed by a green fixture in this monorepo that proves the recipe works end-to-end. Today that's React + Jest and Vue 3 + Jest, together with their design-system drivers.
  • Experimental — composed best-effort, with no proving fixture yet. Everything on Vitest, Angular, or Playwright falls here. The scaffolder prints a warning before writing an experimental recipe so you know you're on a less-travelled path.

On the in-process runners (Jest, Vitest, Vitest browser mode) the generated example always drives a real state change through the framework-agnostic HTML driver, so the example test is green regardless of tier — experimental means the surrounding config is unproven, not that the test won't pass. The Playwright recipe is the exception: it scaffolds a placeholder *.e2e starter test that only turns green once your app serves the page.

Refused combinations​

Some cells are disabled or simply not offered, and the CLI refuses them with a clear message rather than emitting config that can't work:

  • Angular + Jest and Angular + jsdom Vitest are registered but disabled — Angular runs under Vitest browser mode in Atomic Testing. Hover the disabled badge for the exact reason.
  • Vanilla / no framework is refused outright: no per-framework TestEngine ships for plain DOM yet, so pick React, Vue or Angular.

Next step​

Ready to scaffold? Head to the Quick Start — create atomic-testing detects your framework, runner and design system, then writes a runner config and a runnable example test for you.