gorm
by
jinzhu

Description: GORM V1, V2 moved to https://github.com/go-gorm/gorm

View jinzhu/gorm on GitHub ↗

Summary Information

Updated 40 minutes ago
Added to GitGenius on February 18th, 2025
Created on June 6th, 2020
Open Issues/Pull Requests: 11 (+0)
Number of forks: 193
Total Stargazers: 659 (+0)
Total Subscribers: 14 (+0)
Detailed Description

The GitHub repository [https://github.com/jinzhu/gorm](https://github.com/jinzhu/gorm) contains a Go implementation of the GORM ORM (Object-Relational Mapper) framework. GORM is a popular and powerful ORM for Go, providing a high-level abstraction over databases, allowing developers to interact with databases using Go code instead of writing raw SQL queries. This repository represents a significant, though somewhat dated, effort to create a Go version of GORM, offering a functional alternative to the official GORM library, particularly for those seeking a lighter-weight or more customized experience.

At its core, the `gorm` package provides a set of structs and methods that mirror the functionality of the original GORM library. It supports common database operations like creating, reading, updating, and deleting records (CRUD). It also includes features like model definitions, relationships between models (one-to-one, one-to-many, many-to-many), and query building. The repository emphasizes simplicity and ease of use, aiming to provide a straightforward way to interact with databases in Go. The code is written in Go and is well-documented, making it relatively easy to understand and integrate into a project.

However, it’s crucial to note that this repository is largely a legacy project. The last commit was made in 2018, indicating it hasn't been actively maintained or updated to support the latest versions of Go or the underlying database drivers. This means it may not be compatible with newer Go versions and might lack support for newer database features or optimizations. Furthermore, the documentation, while present, is not as comprehensive or up-to-date as the official GORM documentation.

Despite its age, the `gorm` repository can still be valuable for learning the fundamentals of ORM concepts in Go. It provides a tangible example of how to translate database interactions into Go code. It’s particularly useful for developers who are new to ORMs or who want to experiment with a different approach than the official GORM library. It’s also a good resource for understanding the core components of an ORM and how they interact with the database.

Ultimately, while not a recommended choice for new projects due to its lack of maintenance, the `gorm` repository offers a glimpse into the possibilities of a Go ORM and can be a helpful learning tool. Users should be aware of its limitations and the potential need for significant modifications to adapt it to modern Go development practices. Consider exploring the official GORM library for current, actively maintained support and a wider range of features.

gorm
by
jinzhujinzhu/gorm

Repository Details

Fetching additional details & charts...