Authentication
Build a plugin that makes viewers sign in with OAuth, a password, or any HTTP-based provider before they can reach protected Owncast resources.
Build a plugin that makes viewers sign in with OAuth, a password, or any HTTP-based provider before they can reach protected Owncast resources.
Declare chat commands with aliases, cooldowns, moderator gating, and automatic !help listings.
Build chat bots, moderation tools, and message filters for Owncast plugins using chat handlers and owncast.chat APIs.
Let admins configure your plugin with typed settings. Owncast renders the form, you read the values at runtime with owncast.config.get.
Add admin pages to the Owncast admin UI and action buttons to the viewer chrome.
Write plugins that run sandboxed inside Owncast to react to chat, post to the fediverse, serve HTTP endpoints, and add UI.
Author Owncast plugins in JavaScript or TypeScript with @owncast/plugin-sdk: scaffolding, the definePlugin API, the CLI, and the scenario test harness.
Build an Owncast plugin as a self-contained WebAssembly module with Rust, TinyGo, AssemblyScript, Zig, or another compiled language.
Every owncast.* method your plugin can call from inside a handler, what it returns, and what permission it needs.
Bundle your plugin into a .ocpkg, install it on a server, and list it in the public plugin directory.
Every event your plugin can subscribe to (chat, stream, fediverse, filter, HTTP, and more), with its payload shape.
Every field your plugin's manifest can contain, with examples.
The full permission list, what each one grants, and how Owncast's plugin security model works.
Scaffold a new Owncast plugin in JavaScript or Python, build it, package it, and install it on your server.
An overview of Owncast plugins, what they can do for your stream, and how to install one from the admin.
Author Owncast plugins in Python with owncast-plugin-py: install, the @plugin decorators, the owncast-plugin-py CLI, and testing.
Serve URLs from your plugin, write dynamic handlers, gate admin endpoints, and push realtime events to browsers.
Drive your built plugin through the real Owncast runtime with mocked side effects. Scenario tests, assertions, fixtures, HTTP auth.