シンプルながらもパワフルなGoのエンティティフレームワークであり、大規模なデータモデルを持つアプリケーションを容易に構築・保守できるようにします。
- Schema As Code(コードとしてのスキーマ) - あらゆるデータベーススキーマをGoオブジェクトとしてモデル化します。
- 任意のグラフを簡単にトラバースできます - クエリや集約の実行、任意のグラフ構造の走査を容易に実行できます。
- 100%静的に型付けされた明示的なAPI - コード生成により、100%静的に型付けされた曖昧さのないAPIを提供します。
- マルチストレージドライバ - MySQL、MariaDB、 TiDB、PostgreSQL、CockroachDB、SQLite、Gremlinをサポートしています。
- 拡張性 - Goテンプレートを使用して簡単に拡張、カスタマイズできます。
go install entgo.io/ent/cmd/ent@latest
Go modulesを使ったインストールについては、entgo.ioのWebサイトをご覧ください。
entを開発・使用するためのドキュメントは、こちら: https://entgo.io
議論やサポートについては、Issueを開くか、gophers Slackのチャンネルに参加してください。
ent
の構築は、コミュニティ全体の協力なしには実現できませんでした。 私たちは、このent
の貢献者をリストアップしたcontributorsページを管理しています。
ent
に貢献するときは、まずCONTRIBUTINGを参照してください。
もし、あなたの会社や製品でent
を利用している場合は、ent usersページに追記する形で、そのことをぜひ教えて下さい。
最新情報については、Twitter(https://twitter.com/entgo_io)をフォローしてください。
ent
プロジェクトは、私たちが社内で使用しているエンティティフレームワークであるEntからインスピレーションを得ています。
entは、Facebook Connectivityチームのa8mとalexsnが開発・保守しています。
本番環境では複数のチームやプロジェクトで使用されており、v1リリースまでのロードマップはこちらに記載されています。
このプロジェクトの動機についてはこちらをご覧ください。
entは、LICENSEファイルにもある通り、Apache 2.0でライセンスされています。