Compatibility

Styles, React, and Alpine release with independent SemVer. Each package receives only the bump its own public surface requires; an unchanged package keeps its version. When a shared CSS, markup, state, or behavior contract changes, the affected packages still release in one documented window with a shared compatibility and migration record.

Release target

The pending patch changeset produces the release-facing versions below. Package manifests remain at their previously published versions until release automation applies that changeset.

PackageRelease versionPeers
@lyra-ds/styles1.0.2none
@lyra-ds/react1.0.2react >=18 <20, react-dom >=18 <20
@lyra-ds/alpine1.0.0alpinejs >=3.13 <4

Tested compatibility

Styles rangeReact rangeAlpine rangeStatus
=1.0.2=1.0.2=1.0.0Qualified for the 1.0.2 release

These exact ranges are deliberately narrow: they record combinations the project has tested, not every combination an npm resolver can install. A later package release expands or replaces the row only after the shared contract has been verified.

Reading the matrix

  • Styles is the shared visual contract. React and Alpine emit its .lyra-* classes, so use a tested row instead of assuming matching version numbers are compatible.
  • React and Alpine do not depend on each other. Install only the adapter your application uses, or both when separate surfaces need them.
  • Shared-contract releases are coordinated, not forced. Every affected package receives its own bump in the same release window; unaffected packages retain their versions.

Lyra v1.0 suite

The Lyra v1.0 suite release target is the qualified Styles 1.0.2, React 1.0.2, and Alpine 1.0.0 tuple above. Later package releases expand or replace the tested row only after the shared contract has been verified.

Blade compatibility

The current downstream release is lyra-ds/blade v0.10.0, a separately released Composer package with independent SemVer. It does not block the Lyra v1.0 suite, and compatibility with Styles and Alpine must come from the Blade compatibility matrix, not from the npm tuple above.

Fonts

Plus Jakarta Sans and JetBrains Mono are peers of the whole system, never bundled:

bash
npm i @fontsource/plus-jakarta-sans @fontsource/jetbrains-mono

Installing them yourself is what lets you control how they load — self-hosted, subset, preloaded or swapped for your own brand face through --brand-font.