update README

This commit is contained in:
Vinzenz Schroeter 2025-02-17 22:01:55 +01:00
parent 1b14a1ec5c
commit d5f704c1d7

View file

@ -7,9 +7,13 @@
In [CCCB](https://berlin.ccc.de/), there is a big pixel matrix hanging on the wall. It is called "Service Point In [CCCB](https://berlin.ccc.de/), there is a big pixel matrix hanging on the wall. It is called "Service Point
Display" or "Airport Display". Display" or "Airport Display".
This crate contains a library for parsing, encoding and sending packets to this display via UDP.
This project moved to [git.berlin.ccc.de/servicepoint/servicepoint](https://git.berlin.ccc.de/servicepoint/servicepoint). This crate contains a library for parsing, encoding and sending packets to this display via UDP.
The library itself is written in Rust, but can be used from multiple languages
via [language bindings](#supported-language-bindings).
This project moved
to [git.berlin.ccc.de/servicepoint/servicepoint](https://git.berlin.ccc.de/servicepoint/servicepoint).
The [GitHub repository](https://github.com/cccb/servicepoint) remains available as a mirror. The [GitHub repository](https://github.com/cccb/servicepoint) remains available as a mirror.
## Examples ## Examples
@ -34,7 +38,9 @@ Execute `cargo run --example` for a list of available examples and `cargo run --
```bash ```bash
cargo add servicepoint cargo add servicepoint
``` ```
or or
```toml ```toml
[dependencies] [dependencies]
servicepoint = "0.13.1" servicepoint = "0.13.1"
@ -43,7 +49,8 @@ servicepoint = "0.13.1"
## Note on stability ## Note on stability
This library can be used for creative project or just to play around with the display. This library can be used for creative project or just to play around with the display.
A decent coverage by unit tests prevents major problems and I also test this with my own projects, which mostly use up-to-date versions. A decent coverage by unit tests prevents major problems and I also test this with my own projects, which mostly use
up-to-date versions.
That being said, the API is still being worked on. That being said, the API is still being worked on.
Expect minor breaking changes with every version bump. Expect minor breaking changes with every version bump.
@ -54,30 +61,28 @@ Please specify the full version including patch in your Cargo.toml until 1.0 is
This library has multiple optional dependencies. This library has multiple optional dependencies.
You can choose to (not) include them by toggling the related features. You can choose to (not) include them by toggling the related features.
| Name | Default | Description | | Name | Default | Description | Dependencies |
|--------------------|---------|--------------------------------------------| |--------------------|---------|----------------------------------------------|-----------------------------------------------------|
| compression_zlib | false | Enable additional compression algo | | protocol_udp | true | `Connection::Udp` | |
| compression_bzip2 | false | Enable additional compression algo | | compression_lzma | true | Enable additional compression algo | [rust-lzma](https://crates.io/crates/rust-lzma) |
| compression_lzma | true | Enable additional compression algo | | cp437 | true | Conversion to and from CP-437 | [once_cell](https://crates.io/crates/once_cell) |
| compression_zstd | false | Enable additional compression algo | | compression_zlib | false | Enable additional compression algo | [flate2](https://crates.io/crates/flate2) |
| protocol_udp | true | Connection::Udp | | compression_bzip2 | false | Enable additional compression algo | [bzip2](https://crates.io/crates/bzip2) |
| protocol_websocket | false | Connection::WebSocket | | compression_zstd | false | Enable additional compression algo | [zstd](https://crates.io/crates/zstd) |
| rand | false | impl Distribution<Brightness> for Standard | | protocol_websocket | false | `Connection::WebSocket` | [tungstenite](https://crates.io/crates/tungstenite) |
| cp437 | true | Conversion to and from CP-437 | | rand | false | `impl Distribution<Brightness> for Standard` | [rand](https://crates.io/crates/rand) |
## Supported language bindings ## Supported language bindings
| Language | Support level | Repo | | Language | Support level | Repo |
|-----------|---------------|---------------------------------------------------------------------------------------------------| |----------------------|---------------|--------------------------------------------------------------------------------------------------------------------------------------------------|
| .NET (C#) | Full | [servicepoint-binding-csharp](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-csharp) | | .NET (C#) | Full | [servicepoint-binding-csharp](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-csharp) contains bindings and a `.csproj` to reference |
| C | Full | [servicepoint-binding-c](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-c) | | C | Full | [servicepoint-binding-c](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-c) contains bindings and a library to link against |
| Ruby | Working | [servicepoint-binding-ruby](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-ruby) | | Ruby | Working | [servicepoint-binding-ruby](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-ruby) contains bindings |
| Python (tested once) | Unsupported | bindings can be generated from [servicepoint-binding-uniffi](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-uniffi) |
Other languages should work as well using [servicepoint-binding-uniffi](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-uniffi): | Go | Unsupported | bindings can be generated from [servicepoint-binding-uniffi](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-uniffi) |
- Python (tested once) | Kotlin | Unsupported | bindings can be generated from [servicepoint-binding-uniffi](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-uniffi) |
- Go | Swift | Unsupported | bindings can be generated from [servicepoint-binding-uniffi](https://git.berlin.ccc.de/servicepoint/servicepoint-binding-uniffi) |
- Kotlin
- Swift
## Projects using the library ## Projects using the library