Matterbridge accessory platform example plugin

June 20, 2026 · View on GitHub

npm version npm downloads Docker Version Docker Pulls Node.js CI CodeQL codecov tested with Vitest styled with Oxc linted with Oxc TypeScript TypeScript Native ESM matterbridge.io

powered by powered by powered by powered by


Matterbridge accessory platform example plugin is a template to develop your own plugin using the accessory platform.

It exposes a cover device that continuously moves position and shows how to use the command handlers (you can control the device).

If you want to write your plugin, the easiest way to start create a new plugin is to clone the Matterbridge Plugin Template which has Dev Container support for instant development environment and all tools and extensions (like Node.js, npm, TypeScript, ESLint, Prettier, Jest and Vitest) already loaded and configured.

If you like this project and find it useful, please consider giving it a star on GitHub and sponsoring it.

Buy me a coffee

Prerequisites

Matterbridge

See the guidelines on Matterbridge for more information.

Repository setup

Note: This repository uses a new toolchain. It replaces the traditional TypeScript / ESLint / Prettier / Jest stack with a faster, lighter setup.

  • No typescript package — replaced by TypeScript Native. The typescript package is kept only as a publish-time dependency while tsgo is still in preview.
  • No ESLint, no Prettier — replaced by the oxc stack: oxlint for linting and oxfmt for formatting.
  • No Jest — replaced by Vitest, which is much faster and natively supports ESM without extra configuration.
  • Far fewer development dependencies — the number of installed packages drops from ~600 to ~75. A clean install is much faster.
  • Much faster linting and formatting — oxlint and oxfmt run in a fraction of the time required by the ESLint / Prettier pipeline.
  • Much faster builds — tsgo compiles the project in a fraction of the time required by the standard tsc build.
  • Editor support — use the VS Code extensions for tsgo and oxc to get the same experience in the editor.

Style guide

See also the Style Guide for JSDoc, naming, and logging conventions used in this repository.

Copilot instructions

FileNotes
.github/copilot-instructions.mdMain project instructions — always loaded
.github/instructions/matterbridge/matterbridge.instructions.mdMatterbridge endpoint guide — dedicated Copilot instruction file
.github/instructions/testing/unit-tests.instructions.mdTesting standards — scoped to **/*.test.ts

Claude instructions

FileNotes
CLAUDE.mdMain project instructions — always loaded
.claude/rules/matterbridge/matterbridge.instructions.mdMatterbridge endpoint guide — loaded for all contexts
.claude/rules/testing/unit-tests.instructions.mdTesting standards — scoped to **/*.test.ts

Codex/Agents instructions

FileNotes
AGENTS.mdMain project instructions
.codex/config.tomlCodex project permissions, approvals, and profile
.codex/rules/default.rulesCodex command allow, prompt, and deny rules

Documentation

Refer to the Matterbridge documentation for other guidelines.