# Jarust   [![Latest Version]][crates.io]
[Latest Version]: https://img.shields.io/crates/v/jarust.svg
[crates.io]: https://crates.io/crates/jarust
Jarust is a memory safe and high-performance Rust adapter for [Janus WebRTC server](https://github.com/meetecho/janus-gateway).
Inspired by [Janode](https://github.com/meetecho/janode), jarust offers similar functionalities but it's designed
to be customizable, for exmaple, you could use the built-in WebSocket transport or provide your own RabbitMQ transport implementation.
The library wraps the Janus core API and some of the most popular plugins APIs.
## Plugins
The supported Janus plugins currently are:
- [x] EchoTest
- [x] AudioBridge
- [x] Streaming ([Experimental](./CONTRIBUTING.md#experimental))
- [x] VideoRoom ([Experimental](./CONTRIBUTING.md#experimental))
## Interfaces
The supported interfaces are:
- [x] WebSocket
- [x] Restful
- [ ] MQTT
- [ ] RabbitMQ
- [ ] Nanomsg
## APIs
- [x] Client API
- [ ] Admin/Monitor API
## Examples
To run the examples first you have to lunch the janus server.
```sh
docker compose up -d
```
Examples are avaialbe in [`jarust` create](./jarust/examples/)