strimertul/README.md

58 lines
2.9 KiB
Markdown
Raw Permalink Normal View History

2021-11-29 16:35:12 +00:00
# <center><img src="https://raw.githubusercontent.com/strimertul/strimertul/master/frontend/assets/images/readme-logo.svg"/></center>
2021-05-02 12:29:43 +00:00
2021-11-20 11:36:56 +00:00
Small broadcasting suite for Twitch, includes:
2021-05-02 12:29:43 +00:00
2021-11-20 11:36:56 +00:00
- 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
2021-11-20 11:36:56 +00:00
**Note:** some technical/coding experience is currently required to be able to use this effectively, see the technical overview below for more information.
2021-05-02 12:29:43 +00:00
2021-09-18 22:06:54 +00:00
## Getting started
Download the latest build from here: [github.com/strimertul/strimertul/releases/latest](https://github.com/strimertul/strimertul/releases/latest)
2022-12-24 14:46:02 +00:00
Start `strimertul.exe` (or whatever for your operating system) and it should open a windows with the dashboard as soon as it's ready.
2021-11-20 11:36:56 +00:00
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:
2021-11-29 16:35:12 +00:00
- HTTP server for serving static assets and a websocket API
2024-03-12 22:39:18 +00:00
- Twitch EventSub handlers for chat functionalities such as custom commands and alerts
2021-11-29 16:35:12 +00:00
- Polling-based loyalty system for rewards and community goals
2021-11-20 11:36:56 +00:00
2023-11-10 20:36:15 +00:00
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).
2021-11-20 11:36:56 +00:00
2022-12-03 23:04:15 +00:00
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.
2021-09-18 22:06:54 +00:00
2022-11-16 11:23:54 +00:00
## Development
2021-05-02 12:29:43 +00:00
2022-11-16 11:23:54 +00:00
This project uses Wails, check out the [Getting Started](https://wails.io/docs/gettingstarted/installation) guide on how to install it.
2021-05-02 12:29:43 +00:00
2023-01-10 08:30:55 +00:00
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
```
2022-11-16 11:23:54 +00:00
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.
2021-05-02 12:29:43 +00:00
2022-11-16 11:23:54 +00:00
## Building
2021-05-02 12:29:43 +00:00
2022-11-16 11:23:54 +00:00
To build a redistributable, production mode package, use `wails build`.
2021-05-02 12:29:43 +00:00
2022-12-03 16:28:47 +00:00
## Credits
- Renko, strimertül's mascot and app icon, was drawn by [Sonic_Chan]
2023-01-10 08:30:55 +00:00
[sonic_chan]: https://twitter.com/Sonic__Chan
2022-12-03 16:28:47 +00:00
2021-05-02 12:39:37 +00:00
## License
2021-05-02 12:29:43 +00:00
2021-11-24 10:52:23 +00:00
The entire project is licensed under [AGPL-3.0-only](LICENSE) (see `LICENSE`).