Getting Started with Extensions


Welcome to developing Extensions!

This guide shows you how to get started as an Extensions developer and run your first Hello World extension within the Twitch Developer Rig.

If you have an issue, need more information, or have a question about anything in this guide, please visit the Extensions category of the Twitch Developer Forums.

What Are Extensions?

Extensions are interactive web apps that run on a broadcaster’s channel, either overlaying the video or below it in panels. Extension developers can build experiences ranging from broadcaster/community tools, to data driven overlays, to interactive apps that let the audience play in the game. These experiences bring viewers and broadcasters together, creating new ways to interact on Twitch.

Extensions installed and activated by a broadcaster are automatically visible to any viewer who goes to the broadcaster’s channel page using a desktop Web browser or mobile device. Viewers can see details about the extension and report an extension for bad behavior.

Broadcasters can browse and install extensions on their Dashboard’s Extensions tab. They can find extensions, add/remove them on their channels, and activate/deactivate them. Installing an extension on a channel does not make it active on the channel page. To do that, after broadcasters install an extension, they configure it (if required by the developer), then activate it to make it visible to all viewers.

Hello World & the Developer Rig

To get an initial understanding of how Extensions work and say “Hello, World!” online, use the Extensions Developer Sandbox. It has a live code editor and simulated Twitch stream, which makes it easy to see how Extensions render in the browser. (Note the sandbox extensions are simulated and do not have access to full extension functionality; e.g., helper functions.) When you finish exploring, you can download the code to your desktop and follow instructions in the Sandbox README file, to continue your progress in the Twitch Developer Rig.

To get your first extension running locally on your machine, you’ll use the Twitch Developer Rig. The Developer Rig is an open-source tool, maintained by Twitch, which enables you to easily get started developing Extensions. As an extension developer, you can use the Developer Rig to:

For more information, see the Extensions Developer Rig document.

To start using the Developer Rig, download a Zip file or clone the GitHub repository. In the repository’s root directory, the file has instructions to:

  1. Run a script to install the rig’s dependencies and configure your machine for its use.
  2. Launch the rig and sign in with your Twitch credentials.
  3. Create a project, using an extension manifest you created on the Twitch dev site.
  4. Run that extension in the rig.

Create Your Extension Manifest

When you create your extension manifest on Twitch, you’ll need to fill out the following information. The most consequential information is the name, type, and author email; if needed, it’s okay to fill in dummy info in the other sections for now. You can update manifest information later. To update the manifest any time before you submit your extension for review, your extension must be in local test mode. (See Extension Life Cycle and Testing Your Extension.) To update the manifest after the extension is released, you need to create a new version of the extension.

  1. Log in to the Twitch developer site with your Twitch ID, then navigate to the Extensions dashboard.
  2. If your account is not already set up for two-factor authentication, Enable 2FA appears. Click it, set up the authentication, then click Done to return to the dashboard.
  3. Click Create Extension.
  4. Complete each field in the Create an Extension form:
    • Name — The name of your extension.
    • Type of Extension — The type(s) of your extension (e.g., panel, video overlay, video component, mobile).
    • Summary — This will be viewable by broadcasters on the extensions listings page in the Extension Manager. It should be 1-2 brief sentences describing what your extension does. To provide more detail, use the Description field.
    • Description — More detail than the Summary about the functions of your extension.
    • Author name — The full name of the extension author or organization that will receive credit on the Extension Manager. This can be changed later.
    • Author email — Contact information for the extension creator. This is used to contact the developer with information about the extension’s lifecycle (e.g., reject/accept notifications). Twitch will never reveal this email to anyone on the site.
    • Support email — Public contact information for support-related queries from broadcasters.
  5. (Optional) Add a logo for your extension. This must be 100px x 100px. Do not use Twitch or Glitch logos. If you do not have a logo, a default logo will be assigned.

  6. Click Create Extension to create your extension manifest, containing metadata about your extension. Your extension is now in the Local Test stage of the extension life cycle. You will get a verification email soon after creation.

Congratulations, you’re well on your way to creating an extension! Be sure to check your email, as you will need to verify ownership of the provided author email address.

To change information later, click the Settings tab after your extension manifest is created. These fields are not version specific: they apply to all versions of the extension.

What’s Next

You’re well on your way to building and launching an extension on Twitch.

To learn more about Extensions, visit:

Before you start developing your own extensions, read the rest of the Extensions documentation set on the Twitch developer’s site. Start with Required Technical Background for Extensions. Next, consult other Extensions documentation for complete information on how to:

Code samples are available on GitHub.

Good luck!