8 releases (4 breaking)

0.5.2 Jan 19, 2023
0.5.1 Jan 19, 2023
0.4.0 Jan 19, 2023
0.3.1 Jan 19, 2023
0.1.0 Jan 19, 2023

#2029 in Database interfaces

MIT license

27KB
632 lines

musty is an asynchronous object-document mapper library for Rust. It turns your struct's into queryable database models.

Features

  • Typed model filter/querying language via filter!() macro.
  • Support for multiple different database backends.
  • Automatically handles serializing, deserializing, id mapping, & more.
  • Straight-forward integration, requiring little change to your data structs.
  • Focus on extendability, underlying database driver is always available for advanced querying.
  • Easily define indexes and dynamic get_by functions using the #[musty()] macro.

Why use musty?

  • Spend less time building an ODM and more time building your app.
  • Leverage typed database-agnostic document queries using the filter!() macro.
  • Ability to switch to a different database backend down the line with little to no code changes.

Getting Started

musty is designed to integrate with little friction (i.e: not enforcing specific types to be used, etc), for how to get started using musty, check out the quick start.

Dependencies

~27–42MB
~843K SLoC