/zino

Next-generation framework for composable applications in Rust.

Primary LanguageRustMIT LicenseMIT

zino

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

Crates.io Documentation License

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 and dioxus.

Getting started

You can start with the example actix-app, axum-app or dioxus-desktop. It requires Rust 1.75+ to build the project.

cd examples/axum-app
cargo run

Here is the simplest application to run a server:

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

[dependencies]
zino = { version = "0.20", features = ["axum"] }
use zino::prelude::*;

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

Crates

Name Description Crates.io Documentation
zino-core Core types and traits. Crates.io Documentation
zino-derive Derived traits. Crates.io Documentation
zino-model Domain models. Crates.io Documentation
zino-extra Extra utilities. Crates.io Documentation
zino-dioxus Dioxus components. Crates.io Documentation
zino-cli CLI tools. Crates.io Documentation

License

This project is licensed under the MIT license.

Community

If you have any problems or ideas, please don't hesitate to open an issue.