Lightweight SQLite ORM

Kestrel a68b8ad92b Swap to using SQLITE_SERIALIZED instead of SQLITE_MULTITHREADED. hace 1 mes
microrm a68b8ad92b Swap to using SQLITE_SERIALIZED instead of SQLITE_MULTITHREADED. hace 1 mes
microrm-macros f9cddd32b6 Add Value derive macro. hace 1 mes
.gitignore a763557e88 Fix statement ordering bug with DBPool. hace 2 años
.vimrc d06683b9f6 rustfmt pass and get_one_by_multi support. hace 2 años
CHANGELOG.md 81801471a6 Bump version number to 0.4.2 and update CHANGELOG.md hace 2 meses
Cargo.toml ab06e1f3c2 Significant reworking of query interface to be more unified. hace 9 meses
README.md 4711b79330 Expand documentation somewhat. hace 7 meses
rust-analyzer.json 25603a6dfe Improve documentation and tighten trait impl requirements slightly. hace 7 meses
rustfmt.toml d53c910e9f Add rustfmt.toml. hace 7 meses

README.md

docs.rs

microrm is a simple object relational manager (ORM) for sqlite.

Unlike many fancier ORM systems, microrm is designed to be lightweight, both in terms of runtime overhead and developer LoC. By necessity, it sacrifices flexibility towards these goals, and so can be thought of as more opinionated than, say, SeaORM or Diesel. Major limitations of microrm are:

  • lack of database migration support
  • limited vocabulary for describing object-to-object relations

microrm pushes the Rust type system somewhat to provide better ergonomics, so the MSRV is currently 1.75. Don't be scared off by the web of traits in the schema module --- you should never need to interact with any of them!