Plugins
Extend, embrace, ex... no wait, not that!
Storyden supports a powerful plugin system that allows you to extend and customize your community platform. Plugins are just regular programs that communicate with Storyden over RPC, allowing you to add custom behavior without modifying the core codebase.
Key Features
- Language Agnostic: Plugins can be written in any language - they're just regular programs that speak Storyden RPC
- Two Execution Modes: Choose between supervised (managed by your Storyden instance) or external (separately hosted) deployment
- Event-Driven: Subscribe to pubsub events (new posts, comments, registrations) and react in real-time
- HTTP API Access: Plugins can interact with Storyden's full API using authenticated requests with explicit permissions
- Simple Distribution: Supervised plugins are packaged as
.ziparchives, easy to share and install - Configuration Management: Define custom configuration schemas that drive the plugin's settings page
Getting Started
For complete documentation on building and deploying plugins, see the Extending Storyden section, which covers:
- Plugin Architecture & Model - Understanding the plugin lifecycle and event delivery
- Manifest Schema - Defining your plugin's metadata and requirements
- Capabilities & Limits - What plugins can and cannot do
- Security Model - Authentication, authorization, and runtime boundaries
- API Reference - HTTP and RPC interfaces for plugin communication
- RPC Methods - Detailed reference for host-to-plugin and plugin-to-host messaging
Example Plugin
Check out the Discord Integration Plugin recipe for a complete example showing how to build a plugin that:
- Subscribes to thread publication events
- Provides Discord slash commands (
/latest,/save,/search) - Uses the Storyden API to search and retrieve content
- Handles configuration and authentication