1 unstable release
0.1.0 | Mar 25, 2024 |
---|
#1690 in Parser implementations
480KB
3K
SLoC
pixeldike
A fast and reusable pixelflut implementation
Pixelflut is a competitive programing game that provides a 2D pixel canvas upon which many people can set single color values over the network.
The implementation contained in this repository is done in Rust and includes a reusable library as well as a standalone binary. The library
Features
The following features are implemented:
- Generic protocol serialization and parsing
- TCP Transport
- UDP Transport
- WebSocket Transport
- Live-Streaming of the servers canvas via RTMP/RTSP
- Live-Display of the servers canvas via a window or linux framebuffer device
- Drawing of images (and colored rectangles) on a remote servers canvas
Installation
Install via cargo from source
This installation methods assumes you already have a working rust toolchain and a working cargo command. If you do you can run the following:
cargo install --git=https://github.com/ftsell/pixeldike.git --all-features --bin=pixelflut
Usage examples
-
Retrieve command-line help
pixeldike -h pixeldike server -h
-
Start a pixelflut tcp server on port 1234 with default size and persisted in the file ~/pixmap.pixmap
pixeldike server --file ~/pixmap.pixmap --tcp 1234
-
Start a pixelflut udp server on port 1234 with custom size and persisted in the file ~/pixmap.pixmap
pixeldike server --file ~/pixmap.pixmap --udp 1234 --width 10 --height 20
Dependencies
~4–13MB
~145K SLoC