Skip to content

awesome-go

A curated, community-maintained list of links to Go libraries, frameworks and tools.

Stars
192k
Forks
13.7k
Licence
MIT
Language
Go
Last update
4 days ago
Type
Curated list

What it is

Awesome Go is a long, categorized list of third-party Go (Golang) libraries, frameworks and software, grouped by topic such as web frameworks, databases, testing, CLI tools and machine learning. It is a directory of links rather than a program you install. Developers use it to find existing packages instead of searching scattered sites one by one.

  • Browse the Web Frameworks or Routers section to compare options for an HTTP server
  • Search the Database Drivers section to find a driver for a specific database
  • Look through Testing and Mock sections to pick a testing library
  • Use the Resources section to find tutorials, e-books and meetups for learning Go

Great for

  • Developers looking for a Go library for a specific task
  • Newcomers to Go who want to see what the ecosystem offers
  • Teams choosing between several options in a category before adopting one
  • Maintainers who want to submit or review a project for inclusion

Not ideal for

  • Someone who needs a single ready-to-run application, since this only lists other projects
  • Anyone who needs vetted security or quality guarantees, because listed projects are not audited by this list and the README asks readers to flag unmaintained ones
Step-by-step guide: how to use awesome-goInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Read it online

    Clone the repository locally (optional)

    git clone https://github.com/avelino/awesome-go
  2. 2

    Run it

    • Open https://awesome-go.com or the GitHub README
    • Use the Contents list to jump to a category such as Web Frameworks or Database Drivers
    • Open a project's link to read its own documentation and license
    • Check the project's activity before depending on it
  3. 3

    Get the most out of it

    • Use the expandable Contents section in the README to navigate quickly
    • Follow the contribution guidelines in CONTRIBUTING.md if you want to suggest a project
    • Check the Resources section for tutorials and guided learning material
    • Join the Golang Bridge Slack community linked in the README for discussion

Downloads

Strengths

  • Large, well-organized catalog with a detailed table of contents
  • Maintained by a community with a contribution guide and an active release of changes via pull requests
  • Released under the MIT license and free to use

Trade-offs

  • Listing does not mean endorsement; the README asks users to report projects that are no longer maintained or are not a good fit
  • The list is long, so finding the best option still requires reading each project's own documentation

How it compares

ProjectStarsTypeLevelUpdatedBest for
awesome-go (this)192kCurated listbeginner4 days agoDevelopers looking for a Go library for a specific task
resty11.8kLibraryintermediate18 days agoGo developers who call HTTP or REST APIs from their own code
project-based-learning289kCurated listbeginner4 days agoBeginners who want a concrete project to build after learning the basics
LeetCode-Go33.8kLearning resourcebeginner24 days agoDevelopers practicing LeetCode problems in Go
learn-go-with-tests23.9kLearning resourcebeginner11 days agoDevelopers who are new to Go and want a guided, hands-on tutorial
night12.3kLearning resourcebeginner2 months agoGo developers who want to deepen their understanding of the language and its source code

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.