/vscode-twitch-themer

A Visual Studio Code extension that listens to Twitch chat and allows viewers to change the streamers VS Code theme.

Primary LanguageTypeScriptMIT LicenseMIT

Twitch Themer

Marketplace Installs MIT CI All Contributors

A Visual Studio Code extension that listens to twitch chat and allows viewers to change the streamers VS Code theme by sending !theme

Quickstart Guide

Install VS Code if you don't already have it.

Install Twitch Themer from the Visual Studio Marketplace

Connect Twitch Themer to Twitch from the Command Palette (Ctrl + Shift + P)

This opens the Twitch Authentication page. Login to your Twitch account

Done!

Twitch Chat Commands

Receive a list of available theme names

This will send a list of installed VS Code themes to the requestor via whisper.

!theme

Note: Only 1 whisper per user will be sent per day.

Send response to chat of current theme

This will send the currently active theme to Twitch chat.

!theme current

Send info about this GitHub repo to chat

This will send a message to Twitch chat letting everyone know where to access the source for this extension.

!theme repo

Explain how to use the extensions commands

This will send a message to Twitch chat explaining the available commands.

!theme help

Set VS Code theme

This command will set the theme of the streamers' VS Code workspace to the theme specified.

!theme {theme name}

Note: The theme must be previously installed and available within VS Code.

Set Random VS Code theme

This command will set the theme of the streamers' VS Code workspace to a theme that is chosen at random. If dark or light is specified it will only select a random theme from the appropriate option.

!theme random {dark || light}

Reset VS Code theme

This command will set the theme of the streamers' VS Code workspace back to the theme that was used at the time the extension connected to chat.

!theme reset

Note: Everytime the extension disconnects from chat, the theme will be reset.

Refresh VS Code themes

This command will refresh the list of available themes in the streamers VS Code instance. Will also reset everyone's ability to request the list of available themes. Primarily used when themes are added/removed mid-stream.

!theme refresh

Note: List of themes and request timers will only be reset if the command is sent from the broadcaster.

Install VS Code themes

This command will look for the specified theme on the Visual Studio Marketplace. If found, it will attempt to pull the package.json for the theme from its repository. If that package.json includes themes, the streamer will be prompted to install, not install and/or preview the theme.

!theme install {Theme Unique Identifier}

Example: For the Linux Themes for VS Code extension, you would send !theme install solarliner.linux-themes

Ban/Unban user from changing themes

These commands will either ban or unban a user from changing the theme via Twitch chat.

!theme ban {username}

!theme !ban {username}

Note: List of banned users will reset on extension activation/start up.


Settings

  • Twitch Themer: Auto Connect - enables or disables the auto connection feature. The extension will ensure you are streaming prior to connecting the bot to the Twitch chat service.

Access State

On the settings UI, you can specify whether the extension should only react to all viewers, only followers or only subscribers.

Auto Connect

This setting will toggle whether the extension will automatically connect to Twitch when you launch Visual Studio Code.

Auto Install

This setting will toggle whether the extension will automatically install requested themes or show a prompt.

Command Triggers

You can change the trigger commands for the bot. For example, you can change !theme to !colour by changing the Theme Command setting.


Available Triggers

Trigger Example Description
theme !theme The main trigger for the bot
ban !theme ban {username} This will ban a user from using the command
current !theme current The bot will say the current in chat
help !theme help The bot will give some guidance in chat
install !theme install {theme-unique-id} Installs a theme extension
random !theme random Randomly changes the theme of vscode
dark !theme random dark Randomly chooses a dark theme
light !theme random light Randomly chooses a light theme
refresh !theme refresh Refreshes the currently install themes
repo !theme repo The bot will say the repo location for this extension

Connecting / Disconnecting Twitch Chat

If you are signed in to Twitch you'll see your username next to the Twitch Themer paint bucket icon.

Click on the icon to toggle between connecting/disconnecting from Twitch chat.


Command Palette

Twitch Themer: Sign In

Opens the Twitch Authentication page. Login to your Twitch account to access chat.

Twitch Themer: Sign Out

Removes your Twitch authentication and, if connected, leaves Twitch chat.


Attribution & Credits


Release Notes

See CHANGELOG.md


Contributing

Want to contribute? Check out our Code of Conduct and Contributing docs. This project follows the all-contributors specification. Contributions of any kind welcome!

Thanks goes to these wonderful people (emoji key):


Michael Jolley

💻 📖 🎨 🤔 🚧 ⚠️

PatPat1567

💻 🤔 📖 🐛

Chris Jones

🤔 🐛

Anthony Conrad

🤔 💻 🎨 📖 ⚠️ 🚧

Mike Holloway

🤔

John Kryspin

🤔 💻 🐛 ⚠️

majorthorn

🐛

SurlyDev

💻 🐛 🤔

Brian Clark

📓

Dakoda Jackson

📓

Flyken

🤔

Caleb McKay

⚠️ 💻

Chance Murray

🐛

Instafluff

🤔

jport

🤔

Bruno Rocha

🤔

Dejan

🤔

jwalter

💻 ⚠️

Develeon

🤔

ToeFrog

📖