External developers should eventually install EdgeMirror with:
npx edgemirror verifyThat requires an unscoped npm package named edgemirror, not a personal or org-scoped package as the primary identity.
| Asset | Recommended identity | Notes |
|---|---|---|
| GitHub repository | Independent EdgeMirror repo (org or transfer-ready) |
Transfers carry issues/PRs/releases |
| npm package | edgemirror (unscoped) |
Maintainers can be transferred; scopes cannot move across orgs |
| Domain / brand | Independent of personal GitHub username | Document ownership separately |
@theworker02/edgemirror— personal scope, transfer friction@magnexis/edgemirror— org scope cannot become@cloudflare/edgemirrorlater- GitHub Packages as the canonical registry — requires
@scope/nameand consumers must configurenpm.pkg.github.com
GitHub Packages remains fine for internal or pre-release mirrors. Public adoption should target npmjs.com.
Workspace package:
packages/cli → name: "edgemirror"
bin.edgemirror → ./dist/cli/bin.js
Build and pack without publishing:
npm run build -w edgemirror
npm pack -w edgemirror
# → edgemirror-0.1.0.tgzInstall the tarball into any project:
npm install ./edgemirror-0.1.0.tgz
npx edgemirror doctor
npx edgemirror verify --localnpm run gate:distributionThis script:
- Builds the CLI
- Creates
edgemirror-*.tgzvianpm pack - Creates a blank Cloudflare Worker in a temp directory (not the monorepo)
- Installs the tarball +
wranglerinto that project - Runs
edgemirror doctorandedgemirror verify --localfromnode_modules/.bin
Exit code 0 only if those steps succeed. Keep temp dirs with EDGEMIRROR_DIST_KEEP=1.
Wire this into release CI (ci:local / release receipt) before any public npm publish.
Document ownership outside personal accounts where possible:
- GitHub repository owner
- npm package maintainers (
edgemirror) - Domain / DNS
- Trademarks / brand assets
- Dependency license inventory (
npm run security:sbom) - Cloudflare account used for demos / dogfood
- Stripe account (Cloud billing)
- Hosted infrastructure / signing keys
- Confirm name availability and trademark appropriateness for
edgemirroron npmjs.com. - Pass
npm run gate:distribution. npm publish -w edgemirror --access public(explicit human authorization).- Prefer provenance / trusted publishing when available.
Do not publish solely to satisfy packaging hygiene — the gate proves installability first.