/oxidizer

📦 A Rust ORM based on tokio-postgres and refinery

Primary LanguageRustMIT LicenseMIT

Oxidizer

Actions Status Crates.io API Docs MIT licensed Gitter

⚠️ Important ⚠️

Oxidizer is now EOL. Unfortunately, we have not been able to allocate time and effort to push Oxidizer forward. the code will remain available in GitHub in archived mode and everyone is welcome to fork and work on features as they wish.

Overview

A Rust ORM based on tokio-postgres and refinery that helps you reduce the boilerplate of writing entities, tables & migrations when using tokio-postgres and refinery.

  • Asynchronous from the ground up. All the database operations are efficiently handled by tokio at runtime.
  • Oxidizer macros generate code to access relations between entities with ease. Forward and reverse relations are supported.

Note that, while functional and working, this is in early stages. Use with caution.

Features/Roadmap

  • ⚙ - Work in progress
  • 🗒 - TODO
  • ⚗ - Implemented/Testing
Name Status Issue
non-integer primary keys
rustls 🗒 #13
joins 🗒 #12
mysql support 🗒 #11
recursive queries 🗒
transactions 🗒
select subset of columns 🗒

Contributing

There are a couple of ways in which you can contribute to Oxidizer, for example:

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Oxidizer by you, shall be licensed as MIT, without any additional terms or conditions.

Feedback

License

This project is licensed under the MIT license.