PluginInterface
A Quiote plugin: a self-contained bundle that contributes to the framework through the seams that already exist (config defaults, DI services, middleware, event listeners, routes/modules, output types, commands, HTTP clients) via a single PluginInterface::register() lifecycle call — this is the mechanism the framework’s “unopinionated core + opinionated drop-ins” philosophy is built on.
Plugins are registered either programmatically (PluginManager::add() before bootstrap) or declaratively via the plugins config key (a list of plugin class-strings), and PluginInterface::register() is invoked once during Quiote::bootstrap() — after settings load, before contexts are created — in deterministic order.
A diagnostics/logging name for the plugin comes from either Plugin’s name argument or, for a plugin whose name can’t be a compile-time constant, from implementing NamedPlugin instead — see PluginManager for how the two are resolved.
Synopsis
Section titled “Synopsis”interface PluginInterface
Methods
Section titled “Methods”| Method | Description |
|---|---|
register(PluginRegistrar $registrar): void | Contribute to the framework. |
register()
Section titled “register()”abstract public function register(PluginRegistrar $registrar): void
Contribute to the framework.
Called exactly once at boot. Every contribution routes through PluginRegistrar to an existing seam; a plugin does not touch framework internals directly.
| Parameter | Type | Description |
|---|---|---|
$registrar | PluginRegistrar |