# maat

Umbrella facade for the MAAT engine ecosystem.

This is the convenience crate plugin authors typically depend
on. It re-exports the core SDK surface from each layer:

- Type vocabulary, events, blueprints (via `maat-sdk-types`)
- Plugin traits and contexts (via `maat-sdk`)
- Wire types and protocol helpers (via `maat-sdk-wire`, gated
  by `wire` feature)
- Proc-macros for entity types, plugin manifests, and handler
  registration (via `maat-sdk-derive`)

```toml
# Plugin Cargo.toml
[dependencies]
maat = { version = "0.19", features = ["wire"] }
```

## Quickstart

Fork [github.com/williamweatherholtz/maat-plugin-template](https://github.com/williamweatherholtz/maat-plugin-template) (TBA) for a working skeleton plugin.

## Features

- `serde` — derives. Default off.
- `wire` — binary wire encoding. Default off; enable for any
  plugin that ships over the network.
- `schema` — OpenAPI generation. Default off.

## Status

Pre-1.0. The umbrella's API surface stabilises across the
engine's 0.x.x line.

## Links

- Engine: [github.com/williamweatherholtz/MAAT](https://github.com/williamweatherholtz/MAAT)
- Game catalog: see the engine repo's first-party plugin list.

## License

Dual MIT or Apache-2.0.
