scarab-protocol 0.3.3

IPC protocol definitions and shared-memory layout for the Scarab terminal emulator
Documentation

scarab-protocol

IPC protocol definitions and shared-memory layout for the Scarab terminal emulator.

Status: pre-1.0. Wire format and shared-memory layout may change between 0.x minor versions.

What this crate provides

  • #[repr(C)] shared-memory structs (SharedState, ring buffer, grid cells).
  • DaemonMessage / ClientMessage enums for the Unix-domain-socket control channel between the daemon and the Bevy client.
  • Wire types reused by scarab-plugin-api (e.g. ModalItem, OverlayStyle, NavFocusableAction).

Constraints

  • Layout is #[repr(C)] and must remain no_std compatible so the shared-memory mapping has stable, predictable layout across builds.
  • Uses bytemuck::{Pod, Zeroable} for safe zero-copy transmutation.

Features

Feature Default Description
bevy off Derives bevy_ecs::Resource/Event on selected types.

License

Dual-licensed under either:

at your option.