mirror of
https://github.com/MAKS-IT-COM/maksit-webui.git
synced 2026-06-30 20:06:43 +02:00
2.6 KiB
2.6 KiB
Publishing @maksit/webui-* to npm
Packages are published under the @maksit scope to registry.npmjs.org, managed from the maks-it.com npm org.
Published packages:
| Package | npm |
|---|---|
@maksit/webui-contracts |
https://www.npmjs.com/package/@maksit/webui-contracts |
@maksit/webui-core |
https://www.npmjs.com/package/@maksit/webui-core |
@maksit/webui-components |
https://www.npmjs.com/package/@maksit/webui-components |
One-time npm setup
- Sign in at https://www.npmjs.com/ with the maks-it.com org account.
- Confirm the
@maksitscope exists under Packages. Create the org/scope on npm if this is the first@maksit/*publish. - Create an Automation token (recommended) or Granular Access token with Publish on
@maksit/*: - Store the token for release tooling:
- CI / Release-Package: set env var
NPMJS_MAKS_ITto the token value (same pattern asNUGET_MAKS_IT). - Local one-off publish:
npm loginor a user-level~/.npmrcentry://registry.npmjs.org/:_authToken=YOUR_TOKEN
- CI / Release-Package: set env var
Scoped packages must use --access public (already configured in each package publishConfig).
Manual first publish (0.1.0)
From the repo root:
cd src
npm ci
npm run build
npm publish -w @maksit/webui-contracts --access public
npm publish -w @maksit/webui-core --access public
npm publish -w @maksit/webui-components --access public
Order matters: contracts → core → components.
Or use the helper script:
.\scripts\publish-npm.ps1
Verify:
npm view @maksit/webui-contracts version
npm view @maksit/webui-core version
npm view @maksit/webui-components version
Release pipeline (recommended)
From utils/Release-Package/:
- Bump version in
src/package.json(or tag drivesNpmReleaseVersion). - Tag
HEADwith exact semver, e.g.git tag v0.1.0 && git push origin v0.1.0. - Set
NPMJS_MAKS_ITand runRelease-Package.ps1.
scriptsettings.json runs NpmBuild then NpmPublish in dependency order.
After publish — Certs UI / Vault
In each WebUI app (MaksIT.WebUI/package.json):
"@maksit/webui-contracts": "^0.1.0",
"@maksit/webui-core": "^0.1.0",
"@maksit/webui-components": "^0.1.0"
Then refresh the lockfile:
cd src/MaksIT.WebUI
npm install
Docker builds use npm ci from the lockfile; no sibling maksit-webui clone is required in the image context.