This organization contains several repositories with Go language tutorial projects. All projects are based on the official Go documentation at Tutorials - The Go Programming Language.It is designed to help the majority of Go language lovers better learn and use this language.
Follow projects in this organization are based on the official Go documentation at Tutorials - The Go Programming Language.
- getting-started: Introduces the basic concepts and syntax of the Go language.
- create-a-module: Introduces how to create and use Go language modules.
- multi-module-workspaces: Introduces how to use multiple modules to compose a workspace.
- accessing-a-relational-database: Introduces how to connect to and use a relational database.
- developing-a-restful-api: Introduces how to develop a RESTful API using Go and the Gin framework.
- getting-started-with-generics: Introduces how to use Go's generic features.
- getting-started-with-fuzzing: Introduces how to use Go language for fuzz testing.
- a-tour-of-go: Introduces the basic concepts and syntax of the Go language, suitable for beginners.
Others:
- go-gin-web-server: Deploy Go Gin Web Server on Render
- go-gin-file-server: A simple file server built with Gin framework, featuring file uploads, downloads, and tracking of upload history in MySQL using GORM, as well as event notification using Kafka-go and logging with Zap.
- ggt-simple-gin:A web framework project that imitates the hand-written implementation of gin. It aims to gain a deeper understanding of the underlying principles and design patterns of gin and ultimately create a simplified version of a web framework called gsg.
- ggt-dist-cache:A project that aims to handwrite a distributed cache system as an imitation of groupcache. The goal is to gain a deeper understanding of the underlying principles and design patterns of groupcache and eventually implement a simplified version of a distributed cache system called "gdc"
- ggt-rpc: ggt-rpc is an RPC framework implemented from scratch based on the official standard library net/rpc of Go language, and adds features such as protocol exchange, registration center, service discovery, load balancing, and timeout processing on this basis.
We welcome contributions from the community, including additional Go language tutorial programs that you may create. If you have a project that you would like to share with others, please feel free to submit a pull request with your program code. Thank you for your contribution!
If you'd like to contribute to any of the projects in this organization, feel free to submit a pull request. Please make sure to follow the branch protection rules for the repositories. If you have any questions or concerns, please open an issue in the respective repository. Thank you for your contribution!
While most of the organization's projects are released under the MIT license, there may be other licenses, such as the GPL, for certain repositories. Please review the license files in each repository to ensure compliance.