strimertul/README.md

58 lines
2.9 KiB
Markdown

# <center><img src="https://raw.githubusercontent.com/strimertul/strimertul/master/frontend/assets/images/readme-logo.svg"/></center>
Small broadcasting suite for Twitch, includes:
- Simple way to build stream overlays with minimal code
- Loyalty points system with redeems and community goals
- Twitch chat integration with custom commands
- Support for Twitch alerts and channel point redeems
- Built-in runner for simple extensions to add extra features
**Note:** some technical/coding experience is currently required to be able to use this effectively, see the technical overview below for more information.
## Getting started
Download the latest build from here: [github.com/strimertul/strimertul/releases/latest](https://github.com/strimertul/strimertul/releases/latest)
Start `strimertul.exe` (or whatever for your operating system) and it should open a windows with the dashboard as soon as it's ready.
You can also build the project yourself, refer to the Building section below.
## Technical overview
Strimertül is a single executable app that provides the following:
- HTTP server for serving static assets and a websocket API
- Twitch EventSub handlers for chat functionalities such as custom commands and alerts
- Polling-based loyalty system for rewards and community goals
At strimertül's core is [Kilovolt](https://git.sr.ht/~ashkeel/kilovolt), a pub/sub key-value store accessible via websocket. You can access every functionality of strimertul through the Kilovolt API. Check [this repository](https://github.com/strimertul/kilovolt-clients) for a list of officially supported kilovolt clients (or submit your own). You should be able to easily build a client yourself by just creating a websocket connection and using the [Kilovolt protocol](https://github.com/strimertul/kilovolt/blob/main/PROTOCOL.md).
Check out the [project's wiki](https://github.com/strimertul/strimertul/wiki) for more information on how to use the API to interact with strimertul, or the `docs` folder for more technical information.
## Development
This project uses Wails, check out the [Getting Started](https://wails.io/docs/gettingstarted/installation) guide on how to install it.
Due to Google's [aggressive behavior and refusal to conform to standard internet "don't be a dick" code](https://drewdevault.com/2022/05/25/Google-has-been-DDoSing-sourcehut.html) (aka DDoSsing), you will need to put this to be able to clone all dependecies:
```sh
export GOPRIVATE=git.sr.ht
```
To run in live development mode, run `wails dev` in the project directory. This will run a Vite development server that will provide hot reload of frontend changes, while hard-reloading on backend changes.
## Building
To build a redistributable, production mode package, use `wails build`.
## Credits
- Renko, strimertül's mascot and app icon, was drawn by [Sonic_Chan]
[sonic_chan]: https://twitter.com/Sonic__Chan
## License
The entire project is licensed under [AGPL-3.0-only](LICENSE) (see `LICENSE`).