Contribute a Disco-widget
Disco-widgets are small, sandboxed add-ons that show up in the store on a listener's Discover page, an artist's channel page, or the Tahti homepage. Anyone can build one and submit it — publishing into a live store is still done by a Tahti admin, but getting your code in front of one is as simple as opening a pull request.
1. Build it
Use the @tahti/widget-sdk package in the tahti-org repository — packages/widget-sdk/README.md walks through the whole contract (what a widget exports, how it talks to the host page, and the size/security limits it runs under) and packages/widget-sdk/example/live-status/ is a complete working example to start from.
2. Open a pull request
- Fork the tahti-org repository and add your widget under a new directory, e.g.
contrib/disco-widgets/<your-widget-slug>/— include your source (src/index.ts), a shortREADME.mddescribing what it does and which scope it targets (listener, artist, or admin), and note any config it expects. - Push your branch and open a pull request against tahti-org's main branch.
- In the PR description, be explicit about:
- What it's for — the widget's purpose and who it's for.
- What to test — concrete steps a reviewer can follow to verify it works (e.g. build the bundle, load it via the sandbox, confirm it renders correctly with representative context data, and behaves reasonably with none).
New to pull requests? GitHub's own guide covers the basics: Creating a pull request.
3. What happens next
A maintainer reviews the code in your PR. Once it's merged, an admin builds your widget, publishes it through the Disco-widgets admin panel, and approves it — at that point it's live in its store, credited to you, with no further action needed on your end.