Skip to content

API reference

The PhoenixCord plugin API.

A plugin is a WebAssembly component that exports the plugin interface and may import host, client and actions. Every type the API exchanges is defined in types.

The world every PhoenixCord plugin targets.

Interface Role Description
plugin Exported by every plugin Implemented by every plugin.
types Shared types Data types shared by every interface.
host Provided by PhoenixCord Services PhoenixCord provides to every plugin.
client Provided by PhoenixCord Read-only access to the client state PhoenixCord tracks.
actions Provided by PhoenixCord Actions performed through the client as the current user.

All shared data types live in types. Language bindings generate their own names from these definitions: kebab-case becomes snake_case in Rust and camelCase in TypeScript.