ent - An Entity Framework For Go
<img width="50%" align="right" style="display: block; margin:40px auto;" src="https://s3.eu-central-1.amazonaws.com/entgo.io/assets/gopher_graph.png"/>
Simple, yet powerful ORM for modeling and querying data.
- Schema As Code - model any database schema as Go objects.
- Easily Traverse Any Graph - run queries, aggregations and traverse any graph structure easily.
- Statically Typed And Explicit API - 100% statically typed and explicit API using code generation.
- Multi Storage Driver - supports MySQL, PostgreSQL, SQLite and Gremlin.
Quick Installation
go get github.com/facebook/ent/cmd/entc
For proper installation using Go modules, visit entgo.io website.
Docs
The documentation for developing and using ent is available at: https://entgo.io
Join the ent Community
In order to contribute to ent
, see the CONTRIBUTING file for how to
go get started.
If your company or your product is using ent
, please
let us know by adding yourself to the ent users page.
About the Project
The ent
project was inspired by Ent, an entity
framework we use internally. It is developed and maintained by
a8m and
alexsn from
the Facebook
Connectivity team. It is used by multiple teams and projects in
production, and the roadmap for its v1 release is described
here. Read more about the motivation of the project
here.
License
ent is licensed under Apache 2.0 as found in the LICENSE file.