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
go get github.com/elcengine/elementalElemental also provides a CLI to help you with migrations and seeding your database.
go install github.com/elcengine/elemental@latest- Go 1.23 or later - The Go programming language
- Node (optional) - If you want to make use of commitlint
- Run
make installto download all dependencies and install the required tools. This is required only once. Afterwards you could use the traditionalgo mod tidyfor dependency management. - Run
make testto run all tests suites. - Run
make test-lightspeedto run the same above tests slightly faster at the cost of readability. - Run
make test-coverageto run all test suites and generate a coverage report. - Run
make benchmarkto run all benchmarks. - Run
make lintto run the linter. - Run
make formatto format all files.
Contributions are more than welcome, as well as any suggestions / things you would differently to improve developer experience, etc...
Just open an issue or pull request and I'll surely go through it when time permits
This project is licensed under the MIT License - see the LICENSE file for details.
