A browser extension that offers a new way to interact with users on Twitch. This app is designed to provide more detailed information about you on Twitch, making it easier for both viewers and streamers to connect with newcomers.
Firefox | Chrome
Twitch Better Profile is a tool built with Rust using Actix and ScyllaDB using the Charybdis driver) for the back-end, and React with Plasmo for the frontend. The project is organized into two main folders:
extension
for the frontendapi
for the backend.
Ensure you have the following tools installed on your machine:
- Rust and Cargo: Install Rust
- ScyllaDB: Run ScyllaDB with Docker
- pnpm: Install pnpm
You will also need a Twitch Developer account and a Twitch Application.
Note: Set a default OAuth Callback URL when creating your extension.
-
Navigate to the extension directory:
cd extension
-
Create a
.env
file in theextension
directory using the provided.env.example
:cp .env.example .env
-
Open the
.env
file and set your Twitch Client ID:PLASMO_PUBLIC_TWITCH_CLIENT_ID="your-client-id-here" PLASMO_PUBLIC_TWITCH_API_URL="https://api.twitch.tv/helix" PLASMO_PUBLIC_API_URL="https://twitch-extension.danielheart.dev"
-
Install the Node.js dependencies using pnpm:
pnpm install
-
Run the plasmo dev mode with Firefox as the target:
pnpm dev:firefox
This will create a server for hot-reload along with a dev extension that you can find at
./extension/build/firefox-mv2-dev
. -
Access the about:debugging (firefox only) and load your extension by selecting the
manifest.json
file: -
Run the Authentication for the first time, retrieve the
redirect_url
, and add it to your Twitch App. -
Close the Redirect Tab and try to authenticate again:
We welcome contributions to improve this project! To contribute, please follow these steps:
-
Fork the repository and clone it to your local machine.
-
Create a new branch for your changes:
git checkout -b feature/your-feature-name
-
Make your desired changes to the codebase.
-
Test your changes to ensure they work as expected.
-
Commit your changes with a descriptive commit message:
git commit -m "Add feature/fix: description of your changes"
-
Push your changes to your forked repository:
git push origin feature/your-feature-name
-
Open a pull request in the original repository and provide a clear description of your changes.
-
Wait for the project maintainers to review and merge your pull request.
Thank you for contributing! Your help is greatly appreciated.
This project is licensed under the MIT License - see the LICENSE file for details.