A versatile, feature-rich Rust ORM library for simplifying database interactions across multiple systems.
Njord is a versatile and feature-rich Object-Relational Mapping (ORM) library for Rust, designed to simplify database interactions across a wide range of systems with robust performance and flexibility. It provides a comprehensive toolkit for developers to manage database operations efficiently, supporting various databases and offering tools for migrations and machine learning workflows.
Rust developers building applications that require database interactions across multiple database systems, including SQLite, PostgreSQL, MySQL, MariaDB, Oracle, and MSSQL. It also targets developers working on machine learning pipelines who need integrated data handling capabilities.
Developers choose Njord for its broad multi-database support, allowing consistent ORM usage across different systems without sacrificing performance. Its planned machine learning integration (njord_ml) offers specialized tools for data extraction, transformation, and injection in ML workflows, setting it apart from traditional ORMs.
A versatile, feature-rich Rust ORM ⛵
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports SQLite, PostgreSQL, MySQL, MariaDB, Oracle, and MSSQL, with CRUD operations for most, as shown in the feature support table, enabling consistent ORM usage across systems.
Allows execution of raw SQL queries for advanced interactions, supported across all databases except some pending features, per the README's feature table.
Plans for njord_ml library to handle data extraction, transformation, and injection for ML pipelines, with a detailed feature roadmap outlined in the README.
Has multiple contributors listed, indicating ongoing development and community involvement, as seen in the contributors section.
Many key features like JOIN for PostgreSQL and transactions for most databases are marked as under construction (🏗), limiting functionality for certain use cases.
The migrations CLI is paused with no database support yet, making schema management reliant on external tools or manual work, as admitted in the README.
The machine learning integration is only a roadmap with no implemented features, so it's not usable for current projects, requiring separate data handling solutions.