{"repo":"ezbuy/ezorm","free":true,"listed":false,"github":"https://github.com/ezbuy/ezorm","clone":"git clone https://github.com/ezbuy/ezorm.git","description":"schema first orm for Go","language":"Go","stars":50,"topics":["golang","mongodb","mysql","orm","schema-first","yaml"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"ezorm.v2 Why another ORM for Go ? With many years Go development experience in ezbuy , we find that define db schema first and share this schema within the project members or DBAs is really an advanced idea , like Protobuf for API-oriented development. And the idea seems not alone within the Go community , projects like ent-go prove that there is a way to make a best-practice for Go ORM(like) Programming. ezorm was built with this key idea in mind , but we describe the database schema as YAML file (or raw SQL file) , and the builtin generator(also the compiler) can generate some safe and most-used database operating methods for us , which lets business developers to focus on the business logic , rather than the bored CRUD . Support Database MySQL driver: db: mysql driver: db: mysqlr MongoDB (v4.2+) Redis(deprecated since v2) SQL Server(deprecated since v2) 3rd customized plugin Schema See full list of schema in our doc . YAML Schema Schema is defined with YAML file like: Id field will be automatically included for mongo/mysql. SQL Schema SQL Schema is introduced in v2 , and tries to help with raw query , like table JOIN , which can not be handled properly by YAML schema. Inspired by sqlc's great AST analysis , we can extract the AST of SQL like: and generates the following Go Code : Usage ezorm requires Go 1.18 or later. 🤖 For Agent Users Agent skills live in skills/ . Install them with: Or you have xurl, using to read our skills 👏 . 🧑‍💻 For Human Developers To generate c","default_branch":null,"files":null,"tree":[],"storefront":"/r/ezbuy","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/ezbuy/ezorm/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}