Enables you to use your Stream Deck to post in other channels (than your own) without having to set the focus on the browser/chat window.
- Send messages to multiple Twitch channels via HTTP requests
- Web UI for managing channels and commands (NEW!)
- SQLite database for persistent storage
- Live channel management without server restart
- Stream Deck integration
This project requires Node.js 20 or higher due to the better-sqlite3 dependency.
Windows Users (Recommended): Use nvm-windows to manage Node.js versions:
- Download and install nvm-windows from the link above
- Open a new command prompt and run:
nvm install 20.19.6 nvm use 20.19.6
- The project includes a
.nvmrcfile, so thetwitch-relay.batwill automatically use the correct version
Manual Installation: Alternatively, download Node.js 20+ from nodejs.org
Download the repo whether by cloning it or downloading as zip (extract afterwards).
- Get your personal oauth token HERE - NEVER share it with anybody!
- Rename
config.js.defaulttoconfig.js - Insert your oauth token and username in
config.js - Open a terminal and navigate to the folder containing the project
- Install the required node modules with
npm install
If you're upgrading from the old file-based system:
- Rename
commands.json.defaulttocommands.json(if not already done) - Run the migration script:
node migrate.js - This will import all your existing channels and commands into the SQLite database
Run the relay with node index.js
The server will start on port 5555 and display:
- All loaded channels from database
- All available commands
- Admin UI URL: http://localhost:5555/index.html
You can stop your relay with [Ctrl] + [C].
You can use the twitch-relay.bat to start your local relay with a double-click.
To set it up:
- Rename
twitch-relay.bat.defaulttotwitch-relay.bat - Open the file
twitch-relay.batin a text editor - Replace
C:\PATH\TO\YOUR\FOLDER\with the real path to your relay- Example:
cd /d C:\Users\YourName\workspace\twitch-relay\
- Example:
- Save the file
- Double-click
twitch-relay.batto start the server - You may need to allow it to communicate through the firewall
With nvm-windows:
The batch file automatically detects nvm and uses the Node.js version specified in .nvmrc
Without nvm-windows: The batch file uses your system's default Node.js installation (must be 20+)
If everything worked, your command prompt should look like this:
You can stop your relay with [Ctrl] + [C].
Open your browser and navigate to http://localhost:5555/index.html
The Admin Panel allows you to:
- Add/Edit/Delete channels
- Add/Edit/Delete commands per channel
- Enable/Disable channels and commands
- All changes are live - no server restart needed!
Commands are accessed via: http://localhost:5555/CHANNEL_NAME/COMMAND_NAME
Example: http://localhost:5555/josymovies/hi
Use the "website" action of your Stream Deck and configure it like shown below:
The Stream Deck URLs remain unchanged and continue to work as before!

