open-standards/aac/aac-rs/crates
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science b3c31e1472 aac-core: Open Board Format (OBF) ingest
.obf/.obz is the vendor-neutral OpenAAC/CoughDrop interchange format
Proloquo, Cboard, and CoughDrop already import/export; a board that can't
round-trip it strands its users. Add aac_core::obf with to_obf/from_obf
(single-board .obf JSON).

Mapping: OBF's grid.order (rows x columns of button ids) is exactly aac's
motor-stability invariant — cell positions are explicit and preserved.
Cells <-> buttons; action <-> vocalization / load_board (navigation) /
special-action vocabulary (:backspace, :clear, :speak); colors carried.
What OBF cannot hold (energy/signature provenance, frequency, created_at,
grammar modifiers) is dropped on export, defaulted on import — an
interchange projection, not aac's source of truth. .obz zip deferred (a
thin wrapper, left to a host that already has a zip dep).

3 tests green (open-board shape, full round-trip of positions/labels/
actions/colors incl. navigation + backspace, missing-grid error), clippy
clean. No new deps (serde_json + uuid already present).

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-06-25 13:19:22 -04:00
..
aac-conformance Add aac, map, sandbox standards; catalog the standards family 2026-06-07 17:04:36 -04:00
aac-core aac-core: Open Board Format (OBF) ingest 2026-06-25 13:19:22 -04:00
aac-web Add aac, map, sandbox standards; catalog the standards family 2026-06-07 17:04:36 -04:00
access-core Add aac, map, sandbox standards; catalog the standards family 2026-06-07 17:04:36 -04:00