{"repo":"Murilinho145SG/Bottle-ORM","free":true,"listed":false,"github":"https://github.com/Murilinho145SG/Bottle-ORM","clone":"git clone https://github.com/Murilinho145SG/Bottle-ORM.git","description":"⚡Bottle ORM is a developer-friendly, async ORM for Rust. It leverages procedural macros to simplify database interactions, offering automatic schema migrations, multi-driver support (Postgres, MySQL, SQLite), and an intuitive query builder without the bloat.","language":"Rust","stars":13,"topics":["lightweight","orm","rust","rust-lang","sql","mysql","postgres","postgresql","sqlite"],"license":"MIT","category":"databases-storage","readme_excerpt":"Bottle ORM Bottle ORM is a lightweight, async ORM for Rust built on top of sqlx. It is designed to be simple, efficient, and easy to use, providing a fluent Query Builder, automatic schema migrations, and high-performance batch operations. Key Features - Async & Non-blocking : Built on tokio and sqlx . - Multi-Driver Support : PostgreSQL, MySQL, and SQLite (via sqlx::Any ). - Macro-based Models : Define your schema using standard Rust structs with #[derive(Model)] . - Fluent Query Builder : Chainable methods for filtering, selecting, pagination, and sorting. - Batch Operations : High-performance batch insert for multiple records. - Native Enum Support : Easy mapping of Rust Enums to database columns. - Auto-Migration & Diffing : Automatically creates tables and synchronizes schema changes (ALTER TABLE) based on your structs. - UUID Support : Full support for UUID versions 1 through 7. Installation Add bottle-orm to your Cargo.toml . Quick Start 1. Define your Models Use #[derive(Model)] for tables and #[derive(BottleEnum)] for type-safe enums. 2. Connect and Migrate (with Auto-Diff) Bottle ORM not only creates tables but also detects missing columns or indexes and adds them automatically. 3. High-Performance Batch Insert Insert hundreds of records in a single SQL statement. 4. Advanced Query Builder Filter data using complex logic, nested groups, and raw SQL fragments. Supported Attributes ( #[orm(...)] ) - primary key : Marks the column as the Primary Key. - unique : Adds a ","default_branch":null,"files":null,"tree":[],"storefront":"/r/Murilinho145SG","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Murilinho145SG/Bottle-ORM/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}