Spartacus Schematics Development
This skill covers developing and testing Angular schematics for Spartacus library installation and migration.
Directory Structure
| Path | Purpose |
|---|---|
core-libs/schematics/ |
Main installation and migration schematics |
core-libs/schematics/src/migrations/ |
Version-specific migration scripts |
core-libs/schematics/src/shared/ |
Shared utilities |
core-libs/schematics/src/shared/lib-configs/ |
Feature schematics configurations |
<lib>/schematics/ |
Feature-specific installation schematics in each library |
Testing Commands
# Core Schematics lib
cd core-libs/schematics && npm run test
# All libs' schematics
npm run test:all-schematics
# Single library schematics (Jest)
nx run <library-name>:test-jest
# Specific test file
nx run <library-name>:test-jest --testPathPatterns="<spec-filename>"
Technical note: During build/test, feature-toggles.ts is copied from @spartacus/core to src/feature-toggles.copied-from-core-lib.ts (git-ignored). This avoids direct dependency on @spartacus/core.