Crate zino

source
Expand description

github crates-io docs-rs

zino is a next-generation framework for composable applications in Rust which emphasizes simplicity, extensibility and productivity.

ยงHighlights

  • ๐Ÿš€ Out-of-the-box features for rapid application development.
  • ๐ŸŽจ Minimal design, composable architecture and high-level abstractions.
  • ๐ŸŒ Adopt an API-first approch to development with open standards.
  • โšก Embrace practical conventions to get the best performance.
  • ๐Ÿ’Ž Highly optimized ORM for MySQL, PostgreSQL and SQLite based on sqlx.
  • โœจ Innovations on query population, field translation and model hooks.
  • ๐Ÿ“… Lightweight scheduler for sync and async cron jobs.
  • ๐Ÿ’  Unified access to storage services, data sources and chatbots.
  • ๐Ÿ“Š Built-in support for tracing, metrics and logging.
  • ๐Ÿ’– Full integrations with actix-web, axum, dioxus and ntex.

ยงGetting started

You can start with the example actix-app, axum-app, dioxus-desktop or ntex-app.

Here is the simplest application to run a server:

[package]
name = "zino-app"
version = "0.1.0"
edition = "2021"

[dependencies]
zino = { version = "0.25", features = ["axum"] }
โ“˜
use zino::prelude::*;

fn main() {
    zino::Cluster::boot().run()
}

ยงFeature flags

The following optional features are available:

NameDescriptionDefault?
actixEnables the integration with actix-web.No
axumEnables the integration with axum.No
debugEnables the features for ease of debugging.No
dioxusEnables the integration with dioxus.No
i18nEnables the support for internationalization.No
jwtEnables the support for JSON Web Token.No
loggerEnables the default logger.Yes
ntexEnables the integration with ntex.No
oidcEnables the support for OIDC via rauthy.No
opaEnables the support for OPA via regorus.No
ormEnables the ORM for MySQL, PostgreSQL or SQLite.No

Modulesยง

Traitsยง

Type Aliasesยง

  • HTTP server cluster for axum.
  • A specialized request extractor for axum.
  • A specialized response for axum.
  • A specialized Result type for axum.