bonsaidb-server

Crates.iobonsaidb-server
lib.rsbonsaidb-server
version0.5.0
sourcesrc
created_at2022-01-19 17:54:51.945821
updated_at2023-10-05 17:59:26.839982
descriptionDatabase server for BonsaiDb.
homepagehttps://bonsaidb.io/
repositoryhttps://github.com/khonsulabs/bonsaidb
max_upload_size
id516981
size157,363
Publishers (github:khonsulabs:publishers)

documentation

README

BonsaiDb Server

BonsaiDb's networked database implementation.

This crate implements BonsaiDb's networked database implementation. The Server and CustomServer<Backend> types provide their most common functionality by implementing the StorageConnection.

This crate supports two methods for exposing a BonsaiDb server: QUIC and WebSockets.

QUIC is a new protocol built atop UDP. It is designed to operate more reliably than TCP, and features TLS built-in at the protocol level. WebSockets are an established protocol built atop TCP and HTTP.

Our user's guide has a section covering setting up and accessing a BonsaiDb server.

Minimum Supported Rust Version (MSRV)

While this project is alpha, we are actively adopting the current version of Rust. The current minimum version is 1.70.

Feature Flags

By default, the full feature is enabled.

  • full: Enables all the flags below,
  • acme: Enables automtic certificate acquisition through ACME/LetsEncrypt.
  • cli: Enables the cli module.
  • encryption: Enables at-rest encryption.
  • hyper: Enables convenience functions for upgrading websockets using hyper.
  • instrument: Enables instrumenting with tracing.
  • pem: Enables the ability to install a certificate using the PEM format.
  • websockets: Enables WebSocket support.
  • password-hashing: Enables the ability to use password authentication using Argon2.
  • token-authentication: Enables the ability to authenticate using authentication tokens, which are similar to API keys.

Open-source Licenses

This project, like all projects from Khonsu Labs, is open-source. This repository is available under the MIT License or the Apache License 2.0.

To learn more about contributing, please see CONTRIBUTING.md.

Commit count: 1100

cargo fmt