Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/scav/slack-sotw
Simple bot for running a music competition through Slack
https://github.com/scav/slack-sotw
fun music rust slack
Last synced: about 2 months ago
JSON representation
Simple bot for running a music competition through Slack
- Host: GitHub
- URL: https://github.com/scav/slack-sotw
- Owner: scav
- Created: 2020-08-18T22:35:44.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-20T22:44:45.000Z (almost 2 years ago)
- Last Synced: 2023-02-28T00:51:45.695Z (almost 2 years ago)
- Topics: fun, music, rust, slack
- Language: Rust
- Homepage:
- Size: 200 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# slack-sotw
Slack bot written in Rust for creating and voting on song competitions based on a current theme.
![slack-sotw](https://github.com/scav/slack-sotw/workflows/Master/badge.svg)
##### Planned supported deploy options:
- [ ] docker compose
- [ ] Kubernetes
- [ ] ...?##### Requirements
* Rust
* Diesel
* PostgreSQL## Description
Create and manage the process up until the point where a poll should be made.### Commands
Available commandsFor the weekly admin
* `/sotw start ` start a new competition with the given description
* `/sotw stop` stop the current active competitionFor everyone else (including weekly admin)
* `/sotw list` list all songs in the currently active competition
* `/sotw song ` this will add a song to this weeks contest
* `/sotw vote ` vote for a song currently in the active competition,
* calling song again will overwrite prior contribution
* `/sotw info` get information## Development
Planned or possible features:
- [ ] Create polls
- [ ] Create polls from existing polls (needs an API?)
- [ ] Web view of current and past competitions### Setup locally
Install diesel-cli for running migrations
```
$ cargo install diesel_cli --no-default-features --features postgres
```Use [ngrok](https://ngrok.com/) to give outside access to bot from localhost.
## Building
Building a release can be done inside of a docker container.```bash
docker build -t sotw-dev .
```