12 releases (6 breaking)

new 0.13.0-alpha Apr 9, 2024
0.12.0-alpha Mar 18, 2024
0.11.0 Apr 9, 2024
0.0.0 Feb 8, 2023

#892 in Database interfaces

Download history 13/week @ 2024-01-05 48/week @ 2024-01-12 99/week @ 2024-01-19 125/week @ 2024-01-26 52/week @ 2024-02-09 205/week @ 2024-02-16 134/week @ 2024-02-23 83/week @ 2024-03-01 38/week @ 2024-03-08 223/week @ 2024-03-15 218/week @ 2024-03-22 326/week @ 2024-03-29 265/week @ 2024-04-05

1,033 downloads per month

EUPL-1.2

380KB
8K SLoC

OpenTalk Types

This crate contains datatypes used in the Rest API and WebSockets signaling API of OpenTalk.

⚠️ At this point no guarantees for backwards compatibility can be given.


lib.rs:

Data types for OpenTalk.

This crate contains all data types that are used in the OpenTalk web and signaling APIs.

Features

default

This is the "easy" way to use this crate, unless you need specific functionalities for the backend, then you should use the backend feature instead.

Depends on:

  • frontend

backend

Set the backend feature for using the types anywhere in the backend (e.g., a signaling module, the OpenTalk controller implementation, the OpenTalk room server).

Depends on:

  • diesel
  • redis
  • kustos
  • serde
  • rand

frontend

Set the frontend feature for using the types in a client. Because the default feature depends on this, you probably don't need to set it explicitly, unless you have set default-features = false.

diesel

Adds Diesel type mappings to simple newtypes, so they can be stored in a database through the ORM.

Depends on:

  • serde

redis

Implements Redis ToRedisArgs and FromRedisValue for types that can be stored on a redis server.

Depends on:

  • serde

kustos

Annotates identifier newtypes with a kustos resource implementation.

rand

Some functions for generating values from random numbers are gated by this flag. These are typically used on the backend for creating new identifiers or tokens.

serde

Derives serde::Serialize and serde::Deserialize for all types that can be serialized or deserialized for usage in the web and signaling APIs as well as Diesel and Redis.

Dependencies

~8–30MB
~438K SLoC