A plugin is a factory returning a name and handlers. It can emit files, transform an HTTP API, or exchange data with other JavaScript plugins.
- Output plugin — emit a file in a few lines.
- Input plugin — load your own source format.
- Contracts and hooks — share data and choose when to run.
These are JavaScript APIs. Native Rust contract/block handlers are a separate Rust plugin interface.