Custom on-screen chat for Streamlabs Chat Box or StreamElements Custom Widget.
The following browsers are supported:
- Chrome version
107 - Edge version
107 - Firefox version
104 - Safari version
16
Since OBS Studio is using chromium as a browser source engine, the minimum OBS Studio version is:
- OBS Studio version
31.0.0(released 2024-12-07)
Please make sure to use supported versions.
- Replaces emoji with @twemoji/api with Unicode
17.0support. - Adds pronouns next to the names of users
- if they have them setup through https://pr.alejo.io/
- or if they have them setup through https://pronoundb.org/.
- Changes the badges and emotes to use the best quality.
- Makes name colors readable.
- Adds support for emote effects by FFZ.
- Clears chat messages appropriatly whenever someone is timed out, banned or if their message is deleted and also clears the whole chat when the
/clearcommand is used. - Mitigates a bug in Streamlabs Chat Box where the message is HTML encoded whenever
<and>are contained within the message and emotes where placed incorrectly. Note that this mitigation will not display ffz, bttv, and 7tv emotes, but at least the message is readable again. - Does not display
/sfor the display name of chatters who have spaces in their display name.
Note that there is a StreamElements and a Streamlabs version.
- Go to your
Streamelements Dashboardthen toStreaming toolsand thenOverlays. - Click on
NEW OVERLAY. - Enter the overlay resolution (e.g. 1080p) and press
START. - Click on the
ADD WIDGETbutton on the top left or on the+button on the bottom left. - Hover
STATIC / CUSTOM >and then click onCustom widget. - Click on the
OPEN EDITORbutton on the top left and if that is not here then click on the widget and thenSettings->OPEN EDITOR. - Click on the
HTMLtab and put the contents of the filestreamelements/custom.htmlinto the textbox overriding what was in there before. - Click on the
CSStab and put the contents of the filestreamelements/custom.cssinto the textbox overriding what was in there before. - Click on the
JStab and put the contents of the filestreamelements/custom.jsinto the textbox overriding what was in there before. - Click on the
FIELDStab and put the contents of the filestreamelements/fields.jsoninto the textbox overriding what was in there before. - Click on the
DATAtab and put the contents of the filestreamelements/data.jsoninto the textbox overriding what was in there before. - Click
DONE. - Move and resize the widget to your liking.
To customize the widget click on the chat widget and then open Settings on the left.
There is a feature to replace or hide emotes as well, for details see the CHANGELOG.md and click on the widget and then Settings -> OPEN EDITOR -> JS.
- Go to your
Streamlabs Dashboardthen toAll Widgetsand then to theChat Box. - Set
Enable Custom HTML/CSStoEnabled. - Click on the
HTMLtab and put the contents of the filestreamlabs/custom.htmlinto the textbox overriding what was in there before. - Click on the
CSStab and put the contents of the filestreamlabs/custom.cssinto the textbox overriding what was in there before. - Click on the
JStab and put the contents of the filestreamlabs/custom.jsinto the textbox overriding what was in there before. - Press the
Save Settingsbutton at the end of the page.
Streamlabs Customizations:
To adjust the padding on the left side of messages with more than one line do the following:
- Go to your
Streamlabs Dashboardthen toAll Widgetsand then to theChat Box. - Click on the
Add Custom Fieldsbutton on the bottom right corner. - Click on the
Edit Custom Fieldsbutton on the bottom right corner. - Replace the contents of the textbox with the contents of the file
streamlabs/custom.json. - Press the
Updatebutton on the bottom right corner. - Adjust the padding by using the slider and save the settings.
To hide known global frog emotes from bttv and 7tv do the following:
- Go to your
Streamlabs Dashboardthen toAll Widgetsand then to theChat Box. - Click on the
JStab. - Replace
"showFrogEmotes": truewith"showFrogEmotes": falseand save the settings.
To show pronouns in all lowercase do the following:
- Go to your
Streamlabs Dashboardthen toAll Widgetsand then to theChat Box. - Click on the
JStab. - Replace
"capitalizePronouns": truewith"capitalizePronouns": falseand save the settings.
To use all features except displaying the pronouns of users do the following:
- Go to your
Streamlabs Dashboardthen toAll Widgetsand then to theChat Box. - Click on the
JStab. - Delete the line containing
"api.pronouns.alejo.io",and the line containing"pronoundb.org". - The resulting code should look like this:
"pronouns": [ ], - Save the settings.
To change the preference of which pronouns API to use you may also change the order of "api.pronouns.alejo.io" with "pronoundb.org" or remove only one of those entries. Just make sure that the colon (,) is next to the first element in the list.
There is a feature to replace or hide emotes as well, for details see the CHANGELOG.md.
To build the overlay from source you need the following requirements:
- Make sure
nodeandnpmis installed for example by installing Node.js.
Install dependencies:
npm install --include=devTo clean the dist folder first use:
npm run cleanTo build the sources after cleaning the dist folder run:
npm run buildThis will compile the files into the dist folder.
To format the files use:
npm run fmtTo check the sources for compilation or linter errors use:
npm run checkThe following files have their license information within the file itself:
src/features/ffz.tssrc/features/ffz.cssstreamlabs/custom.cssstreamlabs/custom.jsstreamelements/custom.cssstreamelements/custom.js
All other fies are distributed under the MIT license.
See COPYING for details.
This project is not affiliated with or endorsed by Streamlabs, StreamElements, jdecked/twemoji, pr.alejo.io, pronoundb.org, nor FrankerFaceZ.
