Adding New npm/yarn Packages β
racletteJS uses a dual-layer package model: local tooling dependencies and runtime service dependencies.
Two Files, Two Purposes β
package.json: local workspace dependencies for IDE/tooling and project-level packages.packages.json: service-targeted runtime dependency declarations (frontend,backend, optionalworkbench).
Why This Is Needed β
Container runtime dependencies are installed per service and should stay explicit.
A plain yarn add only updates local workspace dependencies and does not model service-targeted runtime installation by itself.
Recommended Workflow β
- Add runtime dependencies via
yarn add-package <target> <package>. - racletteJS updates local package context and service runtime manifests.
- Generated service
package.jsonfiles in.raclette/<service>/are used in containers.
Runtime Installation Behavior β
- Containers install dependencies from generated service package manifests.
node_moduleslive in container volumes per service.- Lock files are seeded and updated through raclette workflows.
Practical Guidance β
- Prefer
add-packagefor runtime deps. - Avoid manual edits to generated package files inside
.raclette.