No description
Find a file
github-actions[bot] 8d867cf8f2
flake: update flake.lock (#26)
Automated changes by the
[update-flake-lock](https://github.com/DeterminateSystems/update-flake-lock)
GitHub Action.

```
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/49cdf14c561f31da8717c300466d6c952b0d3dc7?narHash=sha256-Ob7rmFhbNyEE1dEpOVlbMkjkacK%2BL7F4FAWYVQlDMqU%3D' (2024-10-21)
  → 'github:nixos/nixpkgs/838156a8655c818334acd4425b121a309d0073b0?narHash=sha256-t7r899w6fZh9SOOgDykmqUz7DwK9Xw1CwFLri6Ga0Bs%3D' (2024-10-22)
```

### Running GitHub Actions on this PR

GitHub Actions will not run workflows on pull requests which are opened
by a GitHub Action.

To run GitHub Actions workflows on this PR, run:

```sh
git branch -D update_flake_lock_action
git fetch origin
git checkout update_flake_lock_action
git commit --amend --no-edit
git push origin update_flake_lock_action --force
```

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-10-22 07:48:14 +02:00
.github/workflows workflow: add check to update 2024-10-21 09:36:06 +02:00
.vscode initial commit 2024-07-11 19:05:37 +02:00
src missing import + ci fixes 2024-10-19 16:02:55 +02:00
.envrc feat: true async 2024-07-12 15:59:27 +02:00
.gitignore add result to gitignore 2024-10-18 16:49:58 +02:00
Cargo.lock Revert "added webapi sketch" 2024-10-19 15:37:51 +02:00
Cargo.toml Revert "added webapi sketch" 2024-10-19 15:37:51 +02:00
config.toml refactor: split grid into mod 2024-07-25 16:45:15 +02:00
flake.lock flake: update flake.lock (#26) 2024-10-22 07:48:14 +02:00
flake.nix flake: add hydra jobs 2024-10-21 15:03:43 +02:00
protocol.md initial commit 2024-07-11 19:05:37 +02:00
README.md feat: swap from u16_le to u16 2024-10-10 09:37:43 +02:00

Flurry is a pixelflut compatible server written in rust with a focus on minimizing latency while keeping high performance.

Protocols

Multiple protocols are supported:

  • Text: The default protocol, it is compliant with pixelflut but it defines some extra commands
    • CANVAS <id>: used to change to a completely seperate canvas, the amount and size is defined by the host
    • PROTOCOL <protocol name>: used to change to different protocols, the useable names are:
      • text: goes to the Text protocol
      • binary: goes to the Binary protocol
  • Binary: A binary analog to the text version, about twice as efficient with bandwidth, the commands are
    • size: 0x73 <u8 canvas> -> <u16 x> <u16 y>
    • help: 0x68 -> help message (in UTF-8)
    • get pixel: 0x20 <u8 canvas> <u16 x> <u16 y> -> <u8 red> <u8 green> <u8 blue>
    • set pixel rgb: 0x80 <u8 canvas> <u16 x> <u16 y> <u8 red> <u8 green> <u8 blue>
    • blend pixel rgba: 0x81 <u8 canvas> <u16 x> <u16 y> <u8 red> <u8 green> <u8 blue> <u8 blend>
    • set pixel grayscale: 0x82 <u8 canvas> <u16 x> <u16 y> <u8 white>