Skip to content

Performance budgets ​

Local Node numbers live in tests/perf/baselines.json. Rows marked target are not CI gates yet.

OperationBudgetBaseline in repoNotes
insertInline—~0.01 ms/opscripts/benchmark.js
canonicalStringify (50-page fixture scale)—~0.05 ms/opscripts/benchmark.js
Visible typing (50 pages)<16 ms per opnot measured in CItarget
Paste 1 MB<1 snot measured in CItarget
Export 100 pages PDF<5 snot measured in CItarget

Regression thresholds ​

  • Fail CI if recorded tests/perf/baselines.json ops regress >20% (when pnpm run benchmark is wired to compare).
  • dist/ size is not gzip-gated yet.

How to run ​

bash
pnpm run build
node scripts/benchmark.js

Zero runtime dependencies — TypeScript strict — MIT