Introduction
Elemental is an Object Document Mapper (ODM) for Golang and MongoDB. It is designed to address your pain points when working with the plain MongoDB Go driver.
Elemental is inspired by multiple ODMs and ORMs such as Mongoose, TypeORM, and Eloquent and its primary purpose is to improve developer experience without loss of performance or extensibility
With Elemental, you can:
-
Define an intuitive Schema and from it, a Model for your MongoDB documents.
-
Define and run complex queries using the Querybuilder API.
-
Inject middleware and utilize plugins to extend the functionality of your models.
-
Interact with multiple data sources with ease.
-
Create and manage migrations and seeders to keep your database in sync with your application needs.
-
And so much more!
For a full list of features, have a good look though the side panel. If you have any questions or need help, feel free to open an issue at the Elemental GitHub repository.