Filters is a Twitch Extension that allows viewers to add and modify filters to the video of the stream.
Releases can be found on the Releases Page and are created using Git Tagging using any v* tags to correspond to a Release.
Issues and bug reports can be filed on the GitHub Issues Page.
Contributions are welcome! Get started by forking the repo, working on your contribution, and filing a pull request when you're ready.
- Ensure NodeJS is installed on your system.
- Run
npm installto install dependencies.
Local development uses Rspack Dev Server to allow for local development and uses Mirage JS for locally mocking calls to the Twitch API. The following commands are available:
npm run dev- Spins up a local development server and have the overlay open in the browser.
npm run dev:config- Does the same thing as
npm run devexcept opens the config page by default instead.
- Does the same thing as
This extension uses @lit/localize to handle localization based on the configuration defined in the @lit/localize localization schema including what languages are supported. The following commands are available:
npm run localize:extract- Extracts and updates strings marked for localization into
.xlffiles in thexliffdirectory. - This command will not replace existing translations in the
.xlffiles and only adds new strings.
- Extracts and updates strings marked for localization into
npm run localize:build- Uses the
.xlffiles build.tsfiles used by the build into thesrc/generateddirectory.
- Uses the
This extension uses Rspack to handle building and packaging the extension and the following commands are available:
npm run build- Builds the extension and puts the resulting build in the
distdirectory.
- Builds the extension and puts the resulting build in the
npm run package- Packages the
distdirectory into a.zipfile suitable for uploading into the Twitch Developer Console. .zipfile will be in the format offilters-twitch-extension-<VERSION>.zip.
- Packages the
npm run prod- Runs
npm run buildfollowed bynpm run packagein one command.
- Runs
npm run clean- Deletes any existing build artifacts.
distdirectoryfilters-twitch-extension-<VERSION>.zipfile
- Deletes any existing build artifacts.
The source code is licensed under The MIT License. The Filters image is used under a purchased Royalty-Free Commercial License from The Noun Project.
Filters is cobbled together by Zac Lovoy (aka BigZoz on Twitch) and is the same goober who brought you YarpBot, which you should check out because it's cool and I don't have a Soundcloud to link to here.
Created for the Twitch Streamer Tools Hackathon 2024.