Release NPM Packages
Use this path when published @modeldriveprotocol/* packages should ship to npm.
That includes the protocol, client, and server packages under packages/*, and publishable npm-delivered app packages such as @modeldriveprotocol/browser-simple-mdp-client.
Operator steps
- Prepare the package changes with
pnpm changeset. - Merge the changes into
main. - Run
pnpm version-packageson the release commit and commit the version bumps and changelog updates. - Create and push a tag like
v1.0.0. - GitHub Actions runs
.github/workflows/release.yml.
What the workflow does
- checks out the tagged commit
- validates the tag against the package versions being released
- installs dependencies
- runs
pnpm buildacross workspace packages and apps - runs
pnpm test, which reruns package builds before the smoke test - runs
pnpm publish:packages - creates or updates the matching GitHub Release
Because the root build and test commands include @modeldriveprotocol/browser-simple-mdp-client, the same release workflow now verifies and publishes that package together with the core packages when its version changes.
Required repository setup
- secret
NPM_TOKENwith publish access to the@modeldriveprotocolnpm scope
Local validation before tagging
bash
pnpm build
pnpm test