The Guidepup Manifest defines the versioned contract between @guidepup/guidepup and @guidepup/setup.
It describes the screen reader assets required by a particular version of Guidepup, allowing the runtime package and installer to evolve independently while providing deterministic, reproducible installations.
## Purpose
The manifest answers the following questions:
- Which screen readers are supported?
- Which operating systems are they compatible with?
- Which assets should be downloaded?
- Where are those assets published?
- How are those assets verified?
@guidepup/setup consumes this manifest to determine what to install. It does not contain hardcoded knowledge of screen reader versions or download locations.
The canonical schema is defined in:
manifest.schema.jsonEvery manifest.json shipped by @guidepup/guidepup must conform to this schema.
The manifest schema is versioned independently from both @guidepup/guidepup and @guidepup/setup.
Compatibility is determined by the manifest schema version rather than the versions of either package.
Consumers should reject manifest schema versions they do not understand rather than attempting best-effort parsing.
- The manifest is the single source of truth for screen reader compatibility.
- Installations should be deterministic and reproducible.
- Assets are validated using checksums before use.
- Download mechanisms are implementation details and are intentionally not described by the schema.
- The schema should evolve in a backwards-compatible manner whenever possible.