Nerixyz / rewards

Server and website for custom Twitch channel rewards
https://rewards.nerixyz.de
19 stars 1 forks source link
hacktoberfest rust typescript vue

Rewards

This is an application that manages custom Twitch rewards. The current instance is hosted at rewards.nerixyz.de.

New Reward Interface Rewards Dashboard

Web Interface

Editors and Broadcasters

A broadcaster can add multiple editors who then can manage the rewards. This is done in the Editors-tab.

Important: A broadcaster can only add editors that have registered on this app (like on BTTV).

The editors can access the rewards through the Broadcasters tab.

Rewards

You can edit the rewards in the Rewards tab.

When adding or editing a reward, you can change the action at the bottom. Click on the pen (✏) icon to select the reward.

First, you can edit Twitch specific parameters like the reward title or the cooldown. The cooldown can be specified like this: 1h, 3.5d, 3m or 123 (seconds).

Some rewards expose a Duration configuration. Here, you can specify the duration like this: 1hour 3min 4ms. For more examples go here.

You can also provide the duration like this: rand( 10m ; 10h ). This would timeout the user for a random duration between 10m and 1h.

Users can rename emotes on 7TV by specifying as=<name>.

Available Rewards

Commands

Admin only

Development

Setup

location /api/v1/metrics {
    return 403;
}
- job_name: 'rewards'
  scrape_interval: 10s
  metrics_path: '/api/v1/metrics'
  static_configs:
    - targets: ['localhost:8082']

Setting up a development environment

Roadmap

Things to-do are tracked here.

Internal - web API

All endpoints are on /api/v1. All endpoints (except /auth/twich-auth-url and the auth-callbacks) require authentication.

Authentication is done through the Authorization header that has to be set to Bearer { cookie(auth_token) }.