{"id":"@lssm-tech/example.learning-journey-registry","slug":"example.learning-journey-registry","name":"@lssm-tech/example.learning-journey-registry","version":"6.0.4","path":"examples/learning-journey-registry","manifestPath":"examples/learning-journey-registry/package.json","manifestBlobSha":"dae3a720fa554f08a8a1094df04cd48e91287407","layer":"examples","physicalArea":null,"primaryArea":"examples-and-patterns","classification":{"privateDeclared":null,"catalogFamily":"solutions","catalogKind":"example","catalogStatus":"active","adoptionMode":"reference-only","stability":"stable"},"description":"Registry that aggregates learning journey example tracks.","descriptionOrigin":"package.json","catalog":{"family":"solutions","kind":"example","status":"active","adoptionMode":"reference-only","stability":"stable","platforms":["server"],"runtimes":["node"],"entrypoints":[".","./api","./api-types","./docs","./docs/learning-journey-registry.docblock","./example","./learning-journey-registry.feature","./presentations","./progress-store","./tracks","./ui","./ui/LearningMiniApp","./ui/presentation-data","./ui/renderers/learning.markdown","./ui/template-config"],"documentation":[{"title":"Example Learning Journey Registry documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fexample.learning-journey-registry","kind":"readme"}],"examples":[],"replacements":[],"nonAdoptableRationale":"This example is published for reference and learning, not as a reusable library dependency.","visualTesting":{"status":"deferred","owner":"@contractspec-core","targetWave":"wave-3-react-packages","rationale":"Foundational Storybook adoption establishes shared catalogs and guardrails before this package migrates."}},"canonicalImports":[],"scripts":{"publish:pkg":"bun publish --tolerate-republish --ignore-scripts --verbose","publish:pkg:canary":"bun publish:pkg --tag canary","build":"contractspec-bun-build build","build:bundle":"contractspec-bun-build transpile","build:types":"contractspec-bun-build types","dev":"contractspec-bun-build dev","clean":"rimraf dist .turbo","lint":"bun lint:fix","test":"bun test","lint:fix":"node ../../scripts/biome.cjs check --write --unsafe --only=nursery/useSortedClasses . && node ../../scripts/biome.cjs check --write .","lint:check":"node ../../scripts/biome.cjs check .","prebuild":"contractspec-bun-build prebuild","typecheck":"tsgo --noEmit"},"scriptStatus":"complete pinned manifest","dependencies":{"@lssm-tech/example.learning-journey-ambient-coach":"workspace:^","@lssm-tech/example.learning-journey-crm-onboarding":"workspace:^","@lssm-tech/example.learning-journey-duo-drills":"workspace:^","@lssm-tech/example.learning-journey-platform-tour":"workspace:^","@lssm-tech/example.learning-journey-quest-challenges":"workspace:^","@lssm-tech/example.learning-journey-studio-onboarding":"workspace:^","@lssm-tech/example.learning-journey-ui-coaching":"workspace:^","@lssm-tech/example.learning-journey-ui-gamified":"workspace:^","@lssm-tech/example.learning-journey-ui-onboarding":"workspace:^","@lssm-tech/example.learning-journey-ui-shared":"workspace:^","@lssm-tech/lib.contracts-spec":"workspace:^","@lssm-tech/lib.design-system":"workspace:^","@lssm-tech/lib.presentation-runtime-core":"workspace:^","@lssm-tech/module.learning-journey":"workspace:^","react":"catalog:"},"devDependencies":{"@lssm-tech/tool.typescript":"workspace:*","@types/react":"catalog:types","typescript":"catalog:","@lssm-tech/tool.bun":"workspace:*"},"peerDependencies":{"react":"catalog:"},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":"./src/index.ts","./api":"./src/api.ts","./api-types":"./src/api-types.ts","./docs":"./src/docs/index.ts","./docs/learning-journey-registry.docblock":"./src/docs/index.ts","./example":"./src/example.ts","./learning-journey-registry.feature":"./src/learning-journey-registry.feature.ts","./presentations":"./src/presentations/index.ts","./progress-store":"./src/progress-store.ts","./tracks":"./src/tracks.ts","./ui":"./src/ui/index.ts","./ui/LearningMiniApp":"./src/ui/LearningMiniApp.tsx","./ui/presentation-data":"./src/ui/presentation-data.ts","./ui/renderers/learning.markdown":"./src/ui/renderers/learning.markdown.ts","./ui/template-config":"./src/ui/template-config.ts"},"publishExports":{".":{"types":"./dist/index.d.ts","browser":"./dist/browser/index.js","bun":"./dist/index.js","node":"./dist/node/index.js","default":"./dist/index.js"},"./api":{"types":"./dist/api.d.ts","browser":"./dist/browser/api.js","bun":"./dist/api.js","node":"./dist/node/api.js","default":"./dist/api.js"},"./api-types":{"types":"./dist/api-types.d.ts","browser":"./dist/browser/api-types.js","bun":"./dist/api-types.js","node":"./dist/node/api-types.js","default":"./dist/api-types.js"},"./docs":{"types":"./dist/docs/index.d.ts","browser":"./dist/browser/docs/index.js","bun":"./dist/docs/index.js","node":"./dist/node/docs/index.js","default":"./dist/docs/index.js"},"./docs/learning-journey-registry.docblock":{"types":"./dist/docs/index.d.ts","browser":"./dist/browser/docs/index.js","bun":"./dist/docs/index.js","node":"./dist/node/docs/index.js","default":"./dist/docs/index.js"},"./example":{"types":"./dist/example.d.ts","browser":"./dist/browser/example.js","bun":"./dist/example.js","node":"./dist/node/example.js","default":"./dist/example.js"},"./learning-journey-registry.feature":{"types":"./dist/learning-journey-registry.feature.d.ts","browser":"./dist/browser/learning-journey-registry.feature.js","bun":"./dist/learning-journey-registry.feature.js","node":"./dist/node/learning-journey-registry.feature.js","default":"./dist/learning-journey-registry.feature.js"},"./presentations":{"types":"./dist/presentations/index.d.ts","browser":"./dist/browser/presentations/index.js","bun":"./dist/presentations/index.js","node":"./dist/node/presentations/index.js","default":"./dist/presentations/index.js"},"./progress-store":{"types":"./dist/progress-store.d.ts","browser":"./dist/browser/progress-store.js","bun":"./dist/progress-store.js","node":"./dist/node/progress-store.js","default":"./dist/progress-store.js"},"./tracks":{"types":"./dist/tracks.d.ts","browser":"./dist/browser/tracks.js","bun":"./dist/tracks.js","node":"./dist/node/tracks.js","default":"./dist/tracks.js"},"./ui":{"types":"./dist/ui/index.d.ts","browser":"./dist/browser/ui/index.js","bun":"./dist/ui/index.js","node":"./dist/node/ui/index.js","default":"./dist/ui/index.js"},"./ui/LearningMiniApp":{"types":"./dist/ui/LearningMiniApp.d.ts","browser":"./dist/browser/ui/LearningMiniApp.js","bun":"./dist/ui/LearningMiniApp.js","node":"./dist/node/ui/LearningMiniApp.js","default":"./dist/ui/LearningMiniApp.js"},"./ui/presentation-data":{"types":"./dist/ui/presentation-data.d.ts","browser":"./dist/browser/ui/presentation-data.js","bun":"./dist/ui/presentation-data.js","node":"./dist/node/ui/presentation-data.js","default":"./dist/ui/presentation-data.js"},"./ui/renderers/learning.markdown":{"types":"./dist/ui/renderers/learning.markdown.d.ts","browser":"./dist/browser/ui/renderers/learning.markdown.js","bun":"./dist/ui/renderers/learning.markdown.js","node":"./dist/node/ui/renderers/learning.markdown.js","default":"./dist/ui/renderers/learning.markdown.js"},"./ui/template-config":{"types":"./dist/ui/template-config.d.ts","browser":"./dist/browser/ui/template-config.js","bun":"./dist/ui/template-config.js","node":"./dist/node/ui/template-config.js","default":"./dist/ui/template-config.js"}},"types":"./dist/index.d.ts","files":["LICENSE","README.md","dist","!**/*.test.*","!**/*.spec.*","!**/*.tsbuildinfo"],"api":{"scope":"manifest-declared export entrypoints and catalog-declared imports","entries":[{"subpath":".","importPath":"@lssm-tech/example.learning-journey-registry","target":"./src/index.ts","targets":[{"conditions":[],"target":"./src/index.ts","sourcePath":"examples/learning-journey-registry/src/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./api","importPath":"@lssm-tech/example.learning-journey-registry/api","target":"./src/api.ts","targets":[{"conditions":[],"target":"./src/api.ts","sourcePath":"examples/learning-journey-registry/src/api.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/api.ts","sourceStatus":"verified source file"}]},{"subpath":"./api-types","importPath":"@lssm-tech/example.learning-journey-registry/api-types","target":"./src/api-types.ts","targets":[{"conditions":[],"target":"./src/api-types.ts","sourcePath":"examples/learning-journey-registry/src/api-types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/api-types.ts","sourceStatus":"verified source file"}]},{"subpath":"./docs","importPath":"@lssm-tech/example.learning-journey-registry/docs","target":"./src/docs/index.ts","targets":[{"conditions":[],"target":"./src/docs/index.ts","sourcePath":"examples/learning-journey-registry/src/docs/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/docs/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./docs/learning-journey-registry.docblock","importPath":"@lssm-tech/example.learning-journey-registry/docs/learning-journey-registry.docblock","target":"./src/docs/index.ts","targets":[{"conditions":[],"target":"./src/docs/index.ts","sourcePath":"examples/learning-journey-registry/src/docs/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/docs/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./example","importPath":"@lssm-tech/example.learning-journey-registry/example","target":"./src/example.ts","targets":[{"conditions":[],"target":"./src/example.ts","sourcePath":"examples/learning-journey-registry/src/example.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/example.ts","sourceStatus":"verified source file"}]},{"subpath":"./learning-journey-registry.feature","importPath":"@lssm-tech/example.learning-journey-registry/learning-journey-registry.feature","target":"./src/learning-journey-registry.feature.ts","targets":[{"conditions":[],"target":"./src/learning-journey-registry.feature.ts","sourcePath":"examples/learning-journey-registry/src/learning-journey-registry.feature.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/learning-journey-registry.feature.ts","sourceStatus":"verified source file"}]},{"subpath":"./presentations","importPath":"@lssm-tech/example.learning-journey-registry/presentations","target":"./src/presentations/index.ts","targets":[{"conditions":[],"target":"./src/presentations/index.ts","sourcePath":"examples/learning-journey-registry/src/presentations/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/presentations/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./progress-store","importPath":"@lssm-tech/example.learning-journey-registry/progress-store","target":"./src/progress-store.ts","targets":[{"conditions":[],"target":"./src/progress-store.ts","sourcePath":"examples/learning-journey-registry/src/progress-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/progress-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./tracks","importPath":"@lssm-tech/example.learning-journey-registry/tracks","target":"./src/tracks.ts","targets":[{"conditions":[],"target":"./src/tracks.ts","sourcePath":"examples/learning-journey-registry/src/tracks.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/tracks.ts","sourceStatus":"verified source file"}]},{"subpath":"./ui","importPath":"@lssm-tech/example.learning-journey-registry/ui","target":"./src/ui/index.ts","targets":[{"conditions":[],"target":"./src/ui/index.ts","sourcePath":"examples/learning-journey-registry/src/ui/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/ui/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./ui/LearningMiniApp","importPath":"@lssm-tech/example.learning-journey-registry/ui/LearningMiniApp","target":"./src/ui/LearningMiniApp.tsx","targets":[{"conditions":[],"target":"./src/ui/LearningMiniApp.tsx","sourcePath":"examples/learning-journey-registry/src/ui/LearningMiniApp.tsx","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/ui/LearningMiniApp.tsx","sourceStatus":"verified source file"}]},{"subpath":"./ui/presentation-data","importPath":"@lssm-tech/example.learning-journey-registry/ui/presentation-data","target":"./src/ui/presentation-data.ts","targets":[{"conditions":[],"target":"./src/ui/presentation-data.ts","sourcePath":"examples/learning-journey-registry/src/ui/presentation-data.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/ui/presentation-data.ts","sourceStatus":"verified source file"}]},{"subpath":"./ui/renderers/learning.markdown","importPath":"@lssm-tech/example.learning-journey-registry/ui/renderers/learning.markdown","target":"./src/ui/renderers/learning.markdown.ts","targets":[{"conditions":[],"target":"./src/ui/renderers/learning.markdown.ts","sourcePath":"examples/learning-journey-registry/src/ui/renderers/learning.markdown.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/ui/renderers/learning.markdown.ts","sourceStatus":"verified source file"}]},{"subpath":"./ui/template-config","importPath":"@lssm-tech/example.learning-journey-registry/ui/template-config","target":"./src/ui/template-config.ts","targets":[{"conditions":[],"target":"./src/ui/template-config.ts","sourcePath":"examples/learning-journey-registry/src/ui/template-config.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/src/ui/template-config.ts","sourceStatus":"verified source file"}]}],"entryCount":15,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Example Learning Journey Registry documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fexample.learning-journey-registry","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/example.learning-journey-registry.txt"},"readme":{"status":"available","body":"# @lssm-tech/example.learning-journey-registry\n\nWebsite: https://contractspec.io\n\n**Registry that aggregates learning journey example tracks.**\n\n## What This Demonstrates\n\n- Track aggregation and discovery via a central registry.\n- Feature definition pattern (`learning-journey-registry.feature`).\n- Progress store for cross-track state.\n- API and API-types separation for typed endpoints.\n- Presentation layer with LearningMiniApp UI.\n- `src/docs/` contains docblocks and documentation-facing exports.\n\n## Running Locally\n\nFrom `examples/learning-journey-registry`:\n- `bun run dev`\n- `bun run build`\n- `bun run test`\n- `bun run typecheck`\n\n## Usage\n\nUse `@lssm-tech/example.learning-journey-registry` as a reference implementation, or import its exported surfaces into a workspace that composes ContractSpec examples and bundles.\n\n## Architecture\n\n- `src/api-types.ts` is part of the package's public or composition surface.\n- `src/api.test.ts` is part of the package's public or composition surface.\n- `src/api.ts` is part of the package's public or composition surface.\n- `src/docs/` contains docblocks and documentation-facing exports.\n- `src/example.ts` is the runnable example entrypoint.\n- `src/index.ts` is the root public barrel and package entrypoint.\n- `src/learning-journey-registry.feature.ts` defines a feature entrypoint.\n\n## Public Entry Points\n\n- Export `.` resolves through `./src/index.ts`.\n- Export `./api` resolves through `./src/api.ts`.\n- Export `./api-types` resolves through `./src/api-types.ts`.\n- Export `./docs` resolves through `./src/docs/index.ts`.\n- Export `./docs/learning-journey-registry.docblock` is an alias of `./docs` and resolves through `./src/docs/index.ts`.\n- Export `./example` resolves through `./src/example.ts`.\n- Export `./learning-journey-registry.feature` resolves through `./src/learning-journey-registry.feature.ts`.\n- Export `./presentations` resolves through `./src/presentations/index.ts`.\n- Export `./progress-store` resolves through `./src/progress-store.ts`.\n- Export `./tracks` resolves through `./src/tracks.ts`.\n- The package publishes 12 total export subpaths; keep docs aligned with `package.json`.\n\n## Local Commands\n\n- `bun run dev` — contractspec-bun-build dev\n- `bun run build` — contractspec-bun-build build\n- `bun run test` — bun test\n- `bun run lint` — bun lint:fix\n- `bun run lint:check` — biome check .\n- `bun run lint:fix` — biome check --write --unsafe --only=nursery/useSortedClasses . && biome check --write .\n- `bun run typecheck` — tsgo --noEmit\n- `bun run publish:pkg` — bun publish --tolerate-republish --ignore-scripts --verbose\n- `bun run publish:pkg:canary` — bun publish:pkg --tag canary\n- `bun run clean` — rimraf dist .turbo\n- `bun run build:bundle` — contractspec-bun-build transpile\n- `bun run build:types` — contractspec-bun-build types\n- `bun run prebuild` — contractspec-bun-build prebuild\n\n## Recent Updates\n\n- Replace eslint+prettier by biomejs to optimize speed.\n- Missing contract layers.\n\n## Notes\n\n- Works alongside `@lssm-tech/example.learning-journey-ambient-coach`, `@lssm-tech/example.learning-journey-crm-onboarding`, `@lssm-tech/example.learning-journey-duo-drills`, `@lssm-tech/example.learning-journey-platform-tour`, `@lssm-tech/example.learning-journey-quest-challenges`, ...\n","sourcePath":"examples/learning-journey-registry/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/examples/learning-journey-registry/README.md","blobSha":"83d2c090d9885de4c4c62bf3ea5bb68357a95d1b","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","origin":"README recovered byte-for-byte from pinned aggregate guide","integrity":"exact Git blob match","executionStatus":"not executed"},"provenance":{"repository":"lssm-tech/contractspec","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","manifestOrigin":"pinned GitHub manifest fetch","manifestComplete":true,"publicationPolicyApplied":false},"areaSlug":"examples-and-patterns","areaTitle":"Examples and implementation patterns","displayName":"example.learning-journey-registry","runtimes":["node"],"platforms":["server"],"kind":"example","scope":"Package manifest","canonicalRoute":"/docs/packages/example.learning-journey-registry/","contextUrl":"/docs/packages/example.learning-journey-registry.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}