Skip to content

feat(perf): add performance benchmark suite (Vitest browser mode + CI…#416

Merged
pimenovoleg merged 3 commits into
mainfrom
feat/perf-bench
Jun 12, 2026
Merged

feat(perf): add performance benchmark suite (Vitest browser mode + CI…#416
pimenovoleg merged 3 commits into
mainfrom
feat/perf-bench

Conversation

@pimenovoleg

Copy link
Copy Markdown
Contributor

… comparison)

Benchmarks primitives in real Chromium (Vitest Browser Mode + Playwright) and reports mount/re-render duration, paint (Element Timing) and CD-cycle counts. Adds the apps/radix-perf-testing harness, checkbox + select pilots, the benchmark.yml workflow (same-runner head vs merge-base, sticky PR comment via compare.mjs porting base-ui's ±20% noise rule), a Guides/Performance docs page, and ADR 0009.

Description

… comparison)

Benchmarks primitives in real Chromium (Vitest Browser Mode + Playwright) and
reports mount/re-render duration, paint (Element Timing) and CD-cycle counts.
Adds the apps/radix-perf-testing harness, checkbox + select pilots, the
benchmark.yml workflow (same-runner head vs merge-base, sticky PR comment via
compare.mjs porting base-ui's ±20% noise rule), a Guides/Performance docs page,
and ADR 0009.
@pimenovoleg pimenovoleg requested a review from artembelik as a code owner June 12, 2026 11:53
@vercel

vercel Bot commented Jun 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
primitives-storybook Ready Ready Preview, Comment Jun 12, 2026 12:12pm
radix-astro-doc Ready Ready Preview, Comment Jun 12, 2026 12:12pm

Request Review

@github-actions

github-actions Bot commented Jun 12, 2026

Copy link
Copy Markdown

⚡ Performance

Baseline unavailable (no benchmark report at the merge-base) — showing head numbers only.

Total duration: 130.6 ms · Renders: 16 · Paint: 159.4 ms

Test Duration Renders Paint
Select open (50 options) 4.7 ms (new) 7 (new) 8.2 ms (new)
Select open (1000 options) 82.7 ms (new) 7 (new) 88.8 ms (new)
Checkbox mount (500 instances) 27.8 ms (new) 1 (new) 40.1 ms (new)
Checkbox toggle (500 instances) 15.4 ms (new) 1 (new) 22.2 ms (new)

@pimenovoleg pimenovoleg merged commit 5289af6 into main Jun 12, 2026
13 checks passed
@pimenovoleg pimenovoleg deleted the feat/perf-bench branch June 12, 2026 12:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant