https://github.com/lopopolo/punchtop
A power hour written in rust with Chromecast support
https://github.com/lopopolo/punchtop
audio cast chromecast game rust
Last synced: 6 months ago
JSON representation
A power hour written in rust with Chromecast support
- Host: GitHub
- URL: https://github.com/lopopolo/punchtop
- Owner: lopopolo
- License: mit
- Archived: true
- Created: 2018-12-11T07:33:57.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2020-09-08T16:10:53.000Z (about 5 years ago)
- Last Synced: 2024-11-05T19:44:28.379Z (11 months ago)
- Topics: audio, cast, chromecast, game, rust
- Language: Rust
- Homepage: https://hyperbo.la/w/reflections-on-learning-rust/
- Size: 2.77 MB
- Stars: 27
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# punchtop
punchtop is an audio game that runs a power hour using music on the local file
system and streams to a Chromecast device.## Game
A [power hour](https://en.wikipedia.org/wiki/Power_hour) is a (drinking) game.
During each 60-second round, a song is played. A change in music marks each new
round.## Usage
To run punchtop, you must build it from source. Punchtop depends on:
- nightly rust, which you can install using [rustup](https://rustup.rs/)
- node
- yarnAfter you have installed the build dependencies, you can launch punchtop with
debug logging via cargo:```sh
RUST_BACKTRACE=1 PUNCHTOP_LOG=cast-client=debug,punchtop=debug,rocket=info cargo run
```or in a release build:
```sh
cargo build --release
PUNCHTOP_LOG=info caffeinate -s ./target/release/punchtop-webview
```## Limitations / Known Bugs
- Media directory may only be selected by modifying the
[source](punchtop-webview/src/main.rs#L42-L48).
- Chromecast device may only be selected by modifying the
[source](punchtop-webview/src/main.rs#L25).
- App does not prevent system sleep via idle timeout.
- [macOS] App does not shut down cleanly on quit.
- [macOS] App does not shut down cleanly on SIGINT.
- [macOS] App does not exit on game completion until webview has user activity.## Screenshots
![]()