Skip to content

Releases: phcdevworks/spectre-shell

Phase 2 - Ecosystem Integration

Choose a tag to compare

@bradpotts bradpotts released this 07 Jul 23:40

Contract change type: additive

Changed

  • Bumped @phcdevworks/spectre-tokens to ^3.3.1 and @phcdevworks/spectre-ui
    to ^2.7.1, closing dependency drift against the current published
    project-design packages. Both upstream releases were additive only — no
    source changes required here.

Fixed

  • Added @types/node as a devDependency so scripts/check-readme-version.ts
    resolves Node globals correctly (no functional impact — script already ran
    fine via node --experimental-strip-types, this only affects editor/IDE
    type-checking and any future widening of tsconfig.json's include).

Added

  • bootstrapApp() returns the Router instance (previously void),
    giving consumers direct access to router.navigate(), router.back()/
    forward(), and router.subscribe() without a separate router reference.
    Additive change — existing call sites that ignore the return value are
    unaffected. Unblocks spectre-init Phase 6 template modernization and
    closes spectre-shell Phase 2 (P2.5).
  • Added a plugin system: BootstrapOptions accepts an optional
    plugins?: ShellPlugin[] array. Each plugin's install(context) runs after
    beforeMount and before routes(), in declaration order, receiving a
    ShellPluginContext with read access to bootReady. Plugin install errors
    propagate through the existing bootstrap error boundary. ShellPlugin and
    ShellPluginContext are exported from the public API per PLUGIN_PROPOSAL.md.
  • Added examples/minimal-spa, an npm-workspace example app that wires
    bootstrapApp() to two lazily loaded routes, observes the bootReady
    signal with effect(), and imports spectre-tokens/spectre-ui CSS —
    all resolved through each package's published dist/ exports rather than
    source. Validates the Phase 2 P0 integration-example deliverable end to end
    (vite build against the installed workspace dependency graph).
  • Added @phcdevworks/spectre-manifest as a devDependency. spectre.manifest.json
    at the repo root declares this package's ecosystem role, layer, exports, and
    allowed dependency targets. check:ecosystem validates it in the check pipeline.

Phase 2 - Ecosystem Documentation and Release Hygiene

Choose a tag to compare

@bradpotts bradpotts released this 04 Jun 03:56

Added

  • Added PLUGIN_PROPOSAL.md to document the planned ShellPlugin contract,
    execution order, and open implementation decisions for the Phase 2 plugin
    system.

Changed

  • Updated Spectre runtime dependency ranges to the current stable ecosystem
    versions.
  • Documented the Spectre ecosystem map in README.md, including the SPA shell
    path and the Astro component path.
  • Updated roadmap and TODO status so completed ecosystem documentation is
    reflected consistently across release-planning docs.
  • Updated release:propose to support patch-level release classifications for
    documentation, config, and dependency-only releases.

Phase 1 - Consumer Smoke Validation and Agent Governance

Choose a tag to compare

@bradpotts bradpotts released this 04 Jun 03:55

Added

  • Added tests/smoke.test.ts — imports from dist/index.js (built output) to
    validate packaging and confirm bootstrapApp() runs without error from the
    compiled artifacts. Runs automatically as part of npm run check.

Changed

  • Standardized AI role boundaries across agent guidance and added dedicated
    GitHub Copilot repository instructions for support-only usage.

Phase 1 - Stable Bootstrap Lifecycle

Choose a tag to compare

@bradpotts bradpotts released this 04 Jun 03:54

Added

  • Added bootReady signal (from @phcdevworks/spectre-shell-signals) to the public API — false initially, set to true after a successful bootstrap sequence.
  • Added optional beforeMount and afterMount lifecycle hooks to BootstrapOptionsbeforeMount fires before route registration, afterMount fires after router startup and bootReady is set.
  • Added structured error boundary around the bootstrap sequence — initialization failures now surface as [spectre-shell] Bootstrap failed: <message> with the original error preserved as cause.
  • Wired @phcdevworks/spectre-shell-signals as a runtime dependency.

Changed

  • Expanded public API: index.ts now exports bootReady alongside bootstrapApp.

Phase 1 - Package Metadata and CI Hardening

Choose a tag to compare

@bradpotts bradpotts released this 04 Jun 03:53

Changed

  • Tightened published package metadata and export hygiene for a clean patch
    release.
  • Aligned README and package framing with the current thin-shell contract.
  • Tightened agent guidance to match the shell's current ownership boundaries.

Fixed

  • Corrected runtime dependency and stylesheet entrypoint wiring so published
    imports resolve through sibling packages' public surfaces.

Added

  • Added a minimal CI workflow and Dependabot coverage for npm and GitHub
    Actions.
  • Added a small Vitest smoke suite covering bootstrapApp() orchestration
    order, router handoff, and current error behavior.

Phase 1 - Initial Shell Foundation

Pre-release

Choose a tag to compare

@bradpotts bradpotts released this 09 Feb 03:11

Added

  • Initial Release: Introduced the thin, framework-agnostic app shell for
    Spectre platform applications.
  • Bootstrap API: Added the initial bootstrap function for wiring an app
    root to routing and shared styles.
  • Router Integration: Integrated @phcdevworks/spectre-shell-router for
    client-side routing handoff.
  • Style Integration: Integrated @phcdevworks/spectre-ui and Spectre
    design-token styles through the shell entrypoint.
  • TypeScript Build: Added strict TypeScript configuration and ESM package
    exports.
  • Repository Baseline: Added MIT license, README, VS Code workspace, and
    initial project metadata.

Changed

  • Documentation: Updated README documentation for the shell package and
    naming.
  • Project Identity: Renamed the package to spectre-shell across project
    documentation.

Fixed

  • Dependabot: Corrected Dependabot configuration indentation and quoting.
  • Repository Policy: Updated documentation and security-policy wording.