Repository navigation
chore: describe the installer and the examples for npm - #257
Conversation
- keywords, homepage, bugs and author on create-canton-dappbooster and both examples - canton, dapp, dappbooster and bootnode on all three; bugs and author match the libraries
…d package - manifests.test.mjs fails pnpm test when a published package misses one of them - CLAUDE.md states the rule beside the repository one
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
🟢 Approval recommended
The review surfaced no objective defects, with the metadata additions, the regression test, and the documentation all found consistent and leaving nothing outstanding to address.
No open issues 🎉
What changed in this PR
This PR fills in the npm-page metadata (keywords, homepage, bugs, author) for the three packages that were missing it — the create-canton-dappbooster installer and the two example dApps — bringing them in line with the three published libraries, which already carried these fields. It also adds a regression test so a future published package can't ship without them, and documents the rule in the monorepo's canonical CLAUDE.md. The fields take effect on the next publish.
Changes:
- Add
keywords,homepage,bugs, andauthortocanton-create,example-dapps/amulet-vesting, andexample-dapps/token-vesting. - Add a
scripts/manifests.test.mjscase that failspnpm test(and the release workflow) if any non-private published package is missingdescription,keywords,homepage,bugs,author,license, orrepository. - Record the "every published package fills its npm page" rule in
CLAUDE.md.
| File | Description |
|---|---|
scripts/manifests.test.mjs |
New test asserting every published (non-private) manifest fills all seven npm-page fields; uses libraryNames to scope and a isBlank helper handling undefined/empty-string/empty-array. |
canton-create/package.json |
Adds keywords, homepage (GitHub tree URL), bugs, and author. |
example-dapps/amulet-vesting/package.json |
Adds the same four fields with amulet/canton-coin keywords. |
example-dapps/token-vesting/package.json |
Adds the same four fields with token-standard/canton-token-forge keywords. |
CLAUDE.md |
Documents the npm-page-field requirement and the enforcing test. |
Review effort: Balanced
Summary
Closes #256
create-canton-dappboosterand both example packages shipped 0.7.0 with no keywords, homepage, bugs or author on their npm pages, which the three libraries have. This fills them in and adds a test so a published package can't miss them again. The fields reach npm with the next publish.Changes
pnpm testfails when a published package misses a field its npm page shows;Acceptance criteria
None.
Test plan
Automated tests
node --test scripts/manifests.test.mjspasses; on main's manifests it fails and lists the twelve missing fields.Manual verification
pnpm -C canton-create pkg get keywords homepage bugs authorshows the four fields.Breaking changes
None.
Checklist
Screenshots
None.