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/elemental
Elemental 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 install
to download all dependencies and install the required tools. This is required only once. Afterwards you could use the traditionalgo mod tidy
for dependency management. - Run
make test
to run all tests suites. - Run
make test-lightspeed
to run the same above tests slightly faster at the cost of readability. - Run
make test-coverage
to run all test suites and generate a coverage report. - Run
make benchmark
to run all benchmarks. - Run
make lint
to run the linter. - Run
make format
to 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.