This file holds repository workflow documentation that is mainly useful for contributors and coding agents.
Install repository hooks with:
git config core.hooksPath .vite-hooksThis enables the hooks in .vite-hooks/.
pre-commit: runsvp staged.
Run these after changing package metadata or CI/package validation behavior.
vp run jsr:sync: rewritejsr.jsonfrompackage.jsonmetadata.vp run validate: verify metadata sync, Vite+ static checks, Node-side tests, and the JSR dry-run.vp install --ignore-scripts: refresh local dev dependencies from the current lockfile. This is required before localvp run validate,vitest run,npm test,npm run test:node,bun run test, andnpm run test:workerscommands.
vp run validate: verify metadata sync, Vite+ static checks, tests, and the JSR dry-run.vp run build: emit the npmdist/JavaScript files withvp packwhile preserving the source module layout.vp run check: verify synced metadata, formatting, and type-aware linting.vitest run,npm test, andnpm run test:node: run the Node-hosted test suite via the canonical Vitest CLI or package scripts.vitest bench --runandvp run bench: run the Vitest benchmark suite directly or through the repo task.bun run test,npm run test:bun,deno x vp run test, andnpm run test:deno: run the test suite through Bun or Deno package-script entrypoints.npm run test:workersandvitest run --config ./vitest.workers.config.ts: run the test suite inside the Cloudflare Workers runtime via the Workers Vitest pool.act -W .github/workflows/ci.yml: run the CI workflow locally whenactis installed.
Releases are prepared locally and published from CI on tag push.
- Ensure
CHANGELOG.mdincludes a matching## X.Y.Zsection. - Run
vp run release prepare <patch|minor|major|X.Y.Z>to rehearse the release and update local version metadata. Usevp run release dry-run <...>if you only want the rehearsal. - Review
package.json,jsr.json, andpackage-lock.jsonwhen present, then create the release commit and annotated tagvX.Y.Zmanually. - Push with
git push origin HEAD --follow-tags. - The tag-triggered publish workflow validates the tagged commit and publishes to npm and JSR.
vite.config.ts is the single source of truth for Vite+ run tasks, staged hooks, and pack configuration. .oxlintrc.json and .oxfmtrc.json own the standalone Oxc lint and format settings.