]> git.lizzy.rs Git - connect-rs.git/blob - README.md
add badges to readme
[connect-rs.git] / README.md
1 # connect-rs
2
3 [![Crates.io][crates-badge]][crates-url]
4 [![Docs.rs][docs-badge]][docs-url]
5
6 [crates-badge]: https://img.shields.io/crates/v/connect.svg
7 [crates-url]: https://crates.io/crates/connect
8 [docs-badge]: https://docs.rs/connect/badge.svg
9 [docs-url]: https://docs.rs/connect
10
11 This Rust crate provides a reliable, fault-tolerant, and brokerless message-queue abstraction over
12 asynchronous network streams.
13
14 ## Why?
15 When building networked applications, developers shouldn't have to focus on repeatedly solving
16 the problem of reliable, fault-tolerant message delivery over byte-streams. By using a message
17 queue abstraction, crate users can focus on core application logic and leave the low-level
18 networking and message-queue guarantees to the abstraction.
19
20 ## Protobuf
21 This crate relies on the use of [Protocol Buffers](https://developers.google.com/protocol-buffers)
22 due to it being widely adopted and industry-proven. All messages are Protobuf messages that
23 are packed into a Protobuf `Any` type and then sent over the wire. Message recipients must
24 decide what Protobuf message type it is, and correspondingly unpack the `Any` into a particular
25 message type.
26
27 ## Examples
28 Please use the [examples](https://github.com/sachanganesh/connect-rs/tree/main/examples)
29 provided to help understand crate usage.
30
31
32 ## Feature Status
33
34 | Feature                                               | Status        |
35 |-----------------------------------------------------  |--------       |
36 | [TCP Client](examples/tcp-client)                         |    ✓    |
37 | [TCP Server](examples/tcp-echo-server)                    |    ✓    |
38 | [TLS Client](examples/tls-client)                         |    ✓    |
39 | [TLS Server](examples/tls-echo-server)                    |    ✓    |
40 | SCTP Client                                           |               |
41 | SCTP Server                                           |               |
42 | DTLS-SCTP Client                                      |               |
43 | DTLS-SCTP Server                                      |               |