@relu-interactives/spatial-ecs
v0.2.2
Published
Reusable ECS core engine for Relu Spatial editor and runtime experiences.
Readme
@relu-interactives/spatial-ecs
Reusable ECS core engine for Relu Spatial editor and runtime experiences.
Package
- Name:
@relu-interactives/spatial-ecs - Registry: GitHub Packages (
https://npm.pkg.github.com) - Publish workflow:
.github/workflows/publish-package.yml - Publish trigger: push tags matching
v*(or manual workflow dispatch) - Publish access: public (
npm publish --access public)
Prerequisites
- You have write access to this repository.
- GitHub Packages permissions are enabled for the repository.
- Your account/token has package read/write permissions.
- Node.js 20+ and npm are installed locally.
Local Development
Install dependencies:
npm ciBuild package:
npm run buildType check:
npm run typecheckCreating a Release Version
Use one of the version scripts:
npm run release:patch
# or
npm run release:minor
# or
npm run release:majorThis updates package.json version and creates a git tag.
Publishing via GitHub Actions (Recommended)
- Commit your changes (including the version bump).
- Push commit and tag.
git add .
git commit -m "release: bump package version"
git push && git push --tags
git push --follow-tags- GitHub Action
Publish Spatial ECS Packageruns automatically. - Verify publish in:
- Repository
Actionstab - Repository
Packagessection
- Repository
Make Package Public (GitHub UI)
For already-published package versions, you may need a one-time visibility change in GitHub:
- Open repository
Packages. - Open package
@relu-interactives/spatial-ecs. - Go to
Package settings. - Under
Danger Zone, change visibility toPublic.
After this, new releases published by the workflow remain public.
Manual Publish (Optional)
If needed, publish from your machine.
Create/update your user .npmrc with GitHub Packages auth:
@relu-interactives:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=YOUR_GITHUB_TOKEN
always-auth=trueThen run:
npm ci
npm run build
npm publishConsuming This Package
In consumer projects, set scope registry:
@relu-interactives:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${GITHUB_PACKAGES_TOKEN}
always-auth=trueInstall:
npm install @relu-interactives/spatial-ecsTroubleshooting
403 Forbidden/401 Unauthorized:- Check token permissions (
read:packagesfor install,write:packagesfor publish).
- Check token permissions (
You cannot publish over the previously published versions:- Bump version before publishing.
- Workflow succeeds build but fails publish:
- Confirm package name scope matches workflow scope (
@relu-interactives).
- Confirm package name scope matches workflow scope (
