{"id":13736,"url":"https://github.com/nouney/awesome-go","name":"awesome-go","description":"Daily clone of avelino/awesome-go with information from go-search","projects_count":1664,"last_synced_at":"2026-08-28T01:00:53.495Z","repository":{"id":143529966,"uuid":"76074787","full_name":"nouney/awesome-go","owner":"nouney","description":"Daily clone of avelino/awesome-go with information from go-search","archived":false,"fork":false,"pushed_at":"2019-03-11T16:06:22.000Z","size":139,"stargazers_count":48,"open_issues_count":0,"forks_count":7,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-07-20T04:05:08.049Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nouney.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-12-09T22:23:47.000Z","updated_at":"2025-03-12T16:47:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"895b3fcc-f95e-4a5a-9dd0-0f1fbc1c0fcd","html_url":"https://github.com/nouney/awesome-go","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nouney/awesome-go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouney%2Fawesome-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouney%2Fawesome-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouney%2Fawesome-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouney%2Fawesome-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nouney","download_url":"https://codeload.github.com/nouney/awesome-go/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nouney%2Fawesome-go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36404544,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-06T04:43:03.162Z","status":"online","status_checked_at":"2026-08-08T02:00:08.763Z","response_time":96,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"created_at":"2024-01-12T20:23:50.404Z","updated_at":"2026-08-28T01:00:53.495Z","primary_language":"Go","list_of_lists":false,"displayable":true,"categories":["E-Books","Websites","Software Packages","Command Line","Configuration","Distributed Systems","IoT (Internet of Things)","Logging","Miscellaneous","Text Processing","Code Analysis","Editor Plugins","Conferences","Meetups","Twitter","Financial","Goroutines","Third-party APIs","Web Frameworks","Go Generate Tools","Go Tools","ORM","Testing","Error Handling","Server Applications","Utilities","Database","GUI","Science and Data Analysis","Messaging","Email","Template Engines","Database Drivers","JSON","Geographic","Generation and Generics","Authentication and OAuth","Networking","Package Management","Serialization","Images","Audio and Music","Bot Building","Continuous Integration","CSS Preprocessors","Data Structures","Date and Time","Embeddable Scripting Languages","Files","Forms","Functional","Game Development","Go Compilers","Job Scheduler","Machine Learning","Microsoft Office","Natural Language Processing","OpenGL","Query Language","Resource Embedding","Security","Validation","Benchmarks","Gophers","Version Control","Hardware","Video","XML","UUID","Windows"],"sub_categories":["Other Software","Advanced Console UIs","Standard CLI","Strings","HTTP Clients","Routers","DevOps Tools","Tutorials","Middlewares","Microsoft Excel","Dependency Injection"],"readme":"\n### Extended Awesome Go\n\n*Daily clone of [avelino/awesome-go](https://github.com/avelino/awesome-go) with information from [Go-Search](http://go-search.org).*\n\n:arrow_down: - Number of packages that imports this package\n\n:star:  - Number of stars\n\n---\n\n# Awesome Go\n\n[![Build Status](https://travis-ci.org/avelino/awesome-go.svg?branch=master)](https://travis-ci.org/avelino/awesome-go) [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) [![Slack Widget](https://img.shields.io/badge/join-us%20on%20slack-gray.svg?longCache=true\u0026logo=slack\u0026colorB=red)](http://gophers.slack.com/messages/awesome)\n\nA curated list of awesome Go frameworks, libraries and software. Inspired by [awesome-python](https://github.com/vinta/awesome-python).\n\n### Contributing\n\nPlease take a quick gander at the [contribution guidelines](https://github.com/avelino/awesome-go/blob/master/CONTRIBUTING.md) first. Thanks to all [contributors](https://github.com/avelino/awesome-go/graphs/contributors); you rock!\n\n#### *If you see a package or project here that is no longer maintained or is not a good fit, please submit a pull request to improve this file. Thank you!*\n\n### Contents\n\n- [Awesome Go](#awesome-go)\n    - [Audio and Music](#audio-and-music)\n    - [Authentication and OAuth](#authentication-and-oauth)\n    - [Bot Building](#bot-building)\n    - [Command Line](#command-line)\n    - [Configuration](#configuration)\n    - [Continuous Integration](#continuous-integration)\n    - [CSS Preprocessors](#css-preprocessors)\n    - [Data Structures](#data-structures)\n    - [Database](#database)\n    - [Database Drivers](#database-drivers)\n    - [Date and Time](#date-and-time)\n    - [Distributed Systems](#distributed-systems)\n    - [Email](#email)\n    - [Embeddable Scripting Languages](#embeddable-scripting-languages)\n    - [Error Handling](#error-handling)\n    - [Files](#files)\n    - [Financial](#financial)\n    - [Forms](#forms)\n    - [Functional](#functional)\n    - [Game Development](#game-development)\n    - [Generation and Generics](#generation-and-generics)\n    - [Geographic](#geographic)\n    - [Go Compilers](#go-compilers)\n    - [Goroutines](#goroutines)\n    - [GUI](#gui)\n    - [Hardware](#hardware)\n    - [Images](#images)\n    - [IoT](#iot-internet-of-things)\n    - [Job Scheduler](#job-scheduler)\n    - [JSON](#json)\n    - [Logging](#logging)\n    - [Machine Learning](#machine-learning)\n    - [Messaging](#messaging)\n    - [Microsoft Office](#microsoft-office)\n        - [Microsoft Excel](#microsoft-excel)\n    - [Miscellaneous](#miscellaneous)\n        - [Dependency Injection](#dependency-injection)\n        - [Strings](#strings)\n    - [Natural Language Processing](#natural-language-processing)\n    - [Networking](#networking)\n        - [HTTP Clients](#http-clients)\n    - [OpenGL](#opengl)\n    - [ORM](#orm)\n    - [Package Management](#package-management)\n    - [Query Language](#query-language)\n    - [Resource Embedding](#resource-embedding)\n    - [Science and Data Analysis](#science-and-data-analysis)\n    - [Security](#security)\n    - [Serialization](#serialization)\n    - [Template Engines](#template-engines)\n    - [Testing](#testing)\n    - [Text Processing](#text-processing)\n    - [Third-party APIs](#third-party-apis)\n    - [Utilities](#utilities)\n    - [UUID](#uuid)\n    - [Validation](#validation)\n    - [Version Control](#version-control)\n    - [Video](#video)\n    - [Web Frameworks](#web-frameworks)\n        - [Middlewares](#middlewares)\n            - [Actual middlewares](#actual-middlewares)\n            - [Libraries for creating HTTP middlewares](#libraries-for-creating-http-middlewares)\n        - [Routers](#routers)\n    - [Windows](#windows)\n    - [XML](#xml)\n\n- [Tools](#tools)\n    - [Code Analysis](#code-analysis)\n    - [Editor Plugins](#editor-plugins)\n    - [Go Generate Tools](#go-generate-tools)\n    - [Go Tools](#go-tools)\n    - [Software Packages](#software-packages)\n        - [DevOps Tools](#devops-tools)\n        - [Other Software](#other-software)\n\n- [Server Applications](#server-applications)\n\n- [Resources](#resources)\n    - [Benchmarks](#benchmarks)\n    - [Conferences](#conferences)\n    - [E-Books](#e-books)\n    - [Gophers](#gophers)\n    - [Meetups](#meetups)\n    - [Twitter](#twitter)\n    - [Websites](#websites)\n        - [Tutorials](#tutorials)\n\n## Audio and Music\n\n*Libraries for manipulating audio.*\n\n* [EasyMIDI](https://github.com/algoGuy/EasyMIDI) - EasyMidi is a simple and reliable library for working with standard midi file (SMF).\n* [flac](https://github.com/eaburns/flac) - No-frills native Go FLAC decoder that decodes FLAC files into byte slices. - :arrow_down:4 - :star:52\n* [flac](https://github.com/mewkiz/flac) - Native Go FLAC encoder/decoder with support for FLAC streams. - :arrow_down:17 - :star:29\n* [gaad](https://github.com/Comcast/gaad) - Native Go AAC bitstream parser. - :arrow_down:0 - :star:11\n* [go-sox](https://github.com/krig/go-sox) - libsox bindings for go. - :arrow_down:13 - :star:37\n* [go_mediainfo](https://github.com/zhulik/go_mediainfo) - libmediainfo bindings for go. - :arrow_down:2 - :star:9\n* [gosamplerate](https://github.com/dh1tw/gosamplerate) - libsamplerate bindings for go. - :arrow_down:0 - :star:3\n* [id3v2](https://github.com/bogem/id3v2) - Fast and stable ID3 parsing and writing library for Go. - :arrow_down:10 - :star:8\n* [malgo](https://github.com/gen2brain/malgo) - Mini audio library. - :arrow_down:0 - :star:26\n* [minimp3](https://github.com/tosone/minimp3) - Lightweight MP3 decoder library. - :arrow_down:0 - :star:8\n* [mix](https://github.com/go-mix/mix) - Sequence-based Go-native audio mixer for music apps. - :arrow_down:5 - :star:40\n* [mp3](https://github.com/tcolgate/mp3) - Native Go MP3 decoder. - :arrow_down:11 - :star:19\n* [music-theory](https://github.com/go-music-theory/music-theory) - Music theory models in Go. - :arrow_down:0 - :star:120\n* [PortAudio](https://github.com/gordonklaus/portaudio) - Go bindings for the PortAudio audio I/O library. - :arrow_down:93 - :star:63\n* [portmidi](https://github.com/rakyll/portmidi) - Go bindings for PortMidi. - :arrow_down:55 - :star:93\n* [taglib](https://github.com/wtolson/go-taglib) - Go bindings for taglib. - :arrow_down:22 - :star:44\n* [vorbis](https://github.com/mccoyst/vorbis) - \"Native\" Go Vorbis decoder (uses CGO, but has no dependencies). - :arrow_down:1 - :star:9\n* [waveform](https://github.com/mdlayher/waveform) - Go package capable of generating waveform images from audio streams. - :arrow_down:1 - :star:135\n\n## Authentication and OAuth\n\n*Libraries for implementing authentications schemes.*\n\n* [authboss](https://github.com/volatiletech/authboss) - Modular authentication system for the web. It tries to remove as much boilerplate and \"hard things\" as possible so that each time you start a new web project in Go, you can plug it in, configure, and start building your app without having to build an authentication system each time. - :arrow_down:16 - :star:1426\n* [branca](https://github.com/hako/branca) - Golang implementation of Branca Tokens. - :arrow_down:0 - :star:20\n* [casbin](https://github.com/hsluoyz/casbin) - Authorization library that supports access control models like ACL, RBAC, ABAC. - :arrow_down:0 - :star:2445\n* [cookiestxt](https://github.com/mengzhuo/cookiestxt) - provides parser of cookies.txt file format. - :arrow_down:0 - :star:0\n* [go-jose](https://github.com/square/go-jose) - Fairly complete implementation of the JOSE working group's JSON Web Token, JSON Web Signatures, and JSON Web Encryption specs. - :arrow_down:284 - :star:536\n* [go-oauth2-server](https://github.com/RichardKnop/go-oauth2-server) - Standalone, specification-compliant,  OAuth2 server written in Golang. - :arrow_down:0 - :star:381\n* [gologin](https://github.com/dghubble/gologin) - chainable handlers for login with OAuth1 and OAuth2 authentication providers. - :arrow_down:70 - :star:647\n* [gorbac](https://github.com/mikespook/gorbac) - provides a lightweight role-based access control (RBAC) implementation in Golang. - :arrow_down:10 - :star:401\n* [goth](https://github.com/markbates/goth) - provides a simple, clean, and idiomatic way to use OAuth and OAuth2. Handles multiple providers out of the box. - :arrow_down:446 - :star:825\n* [httpauth](https://github.com/goji/httpauth) - HTTP Authentication middleware. - :arrow_down:68 - :star:102\n* [jwt](https://github.com/robbert229/jwt) - Clean and easy to use implementation of JSON Web Tokens (JWT). - :arrow_down:4 - :star:0\n* [jwt](https://github.com/pascaldekloe/jwt) - Lightweight JSON Web Token (JWT) library. - :arrow_down:0 - :star:1\n* [jwt-auth](https://github.com/adam-hanna/jwt-auth) - JWT middleware for Golang http servers with many configuration options.\n* [jwt-go](https://github.com/dgrijalva/jwt-go) - Golang implementation of JSON Web Tokens (JWT). - :arrow_down:2878 - :star:1459\n* [loginsrv](https://github.com/tarent/loginsrv) - JWT login microservice with plugable backends such as OAuth2 (Github), htpasswd, osiam. - :arrow_down:0 - :star:589\n* [oauth2](https://github.com/golang/oauth2) - Successor of goauth2. Generic OAuth 2.0 package that comes with JWT, Google APIs, Compute Engine and App Engine support. - :arrow_down:60 - :star:854\n* [osin](https://github.com/openshift/osin) - Golang OAuth2 server library.\n* [paseto](https://github.com/o1egl/paseto) - Golang implementation of Platform-Agnostic Security Tokens (PASETO). - :arrow_down:1 - :star:116\n* [permissions2](https://github.com/xyproto/permissions2) - Library for keeping track of users, login states and permissions. Uses secure cookies and bcrypt. - :arrow_down:21 - :star:176\n* [rbac](https://github.com/zpatrick/rbac) - Minimalistic RBAC package for Go applications. - :arrow_down:0 - :star:18\n* [securecookie](https://github.com/chmike/securecookie) - Efficient secure cookie encoding/decoding. - :arrow_down:0 - :star:17\n* [session](https://github.com/icza/session) - Go session management for web servers (including support for Google App Engine - GAE). - :arrow_down:7 - :star:6\n* [sessiongate-go](https://github.com/f0rmiga/sessiongate-go) - Go session management using the SessionGate Redis module. - :arrow_down:0 - :star:4\n* [sessions](https://github.com/adam-hanna/sessions) - Dead simple, highly performant, highly customizable sessions service for go http servers. - :arrow_down:0 - :star:29\n* [signedvalue](https://github.com/sashka/signedvalue) - Signed and timestamped strings compatible with [Tornado's](https://github.com/tornadoweb/tornado) `create_signed_value`, `decode_signed_value`, and therefore `set_secure_cookie` and `get_secure_cookie`. - :arrow_down:0 - :star:5\n\n## Bot Building\n\n*Libraries for building and working with bots.*\n\n* [go-chat-bot](https://github.com/go-chat-bot/bot) - IRC, Slack \u0026 Telegram bot written in Go. - :arrow_down:103 - :star:122\n* [go-sarah](https://github.com/oklahomer/go-sarah) - Framework to build bot for desired chat services including LINE, Slack, Gitter and more. - :arrow_down:28 - :star:94\n* [go-tgbot](https://github.com/olebedev/go-tgbot) - Pure Golang Telegram Bot API wrapper, generated from swagger file, session-based router and middleware. - :arrow_down:1 - :star:71\n* [Golang CryptoTrading Bot](https://github.com/saniales/golang-crypto-trading-bot) - A golang implementation of a console-based trading bot for cryptocurrency exchanges. - :arrow_down:0 - :star:67\n* [govkbot](https://github.com/nikepan/govkbot) - Simple Go [VK](https://vk.com) bot library. - :arrow_down:0 - :star:15\n* [hanu](https://github.com/sbstjn/hanu) - Framework for writing Slack bots. - :arrow_down:3 - :star:5\n* [margelet](https://github.com/zhulik/margelet) - Framework for building Telegram bots. - :arrow_down:6 - :star:35\n* [micha](https://github.com/onrik/micha) - Go Library for Telegram bot api. - :arrow_down:1 - :star:0\n* [slacker](https://github.com/shomali11/slacker) - Easy to use framework to create Slack bots. - :arrow_down:7 - :star:181\n* [tbot](https://github.com/yanzay/tbot) - Telegram bot server with API similar to net/http. - :arrow_down:5 - :star:2\n* [telebot](https://github.com/tucnak/telebot) - Telegram bot framework written in Go. - :arrow_down:78 - :star:229\n* [telegram-bot-api](https://github.com/Syfaro/telegram-bot-api) - Simple and clean Telegram bot client. - :arrow_down:38 - :star:304\n* [Tenyks](https://github.com/kyleterry/tenyks) - Service oriented IRC bot using Redis and JSON for messaging. - :arrow_down:0 - :star:160\n\n## Command Line\n\n### Standard CLI\n\n*Libraries for building standard or basic Command Line applications.*\n\n* [argparse](https://github.com/akamensky/argparse) - Command line argument parser inspired by Python's argparse module. - :arrow_down:4 - :star:29\n* [argv](https://github.com/cosiner/argv) - Go library to split command line string as arguments array using the bash syntax. - :arrow_down:2 - :star:8\n* [cli](https://github.com/mkideal/cli) - Feature-rich and easy to use command-line package based on golang struct tags. - :arrow_down:82 - :star:204\n* [cli](https://github.com/teris-io/cli) - Simple and complete API for building command line interfaces in Go. - :arrow_down:2 - :star:28\n* [cli-init](https://github.com/tcnksm/gcli) - The easy way to start building Golang command line applications. - :arrow_down:0 - :star:559\n* [climax](http://github.com/tucnak/climax) - Alternative CLI with \"human face\", in spirit of Go command. - :arrow_down:7 - :star:98\n* [cobra](https://github.com/spf13/cobra) - Commander for modern Go CLI interactions. - :arrow_down:10018 - :star:2817\n* [commandeer](https://github.com/jaffee/commandeer) - Dev-friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags. - :arrow_down:2 - :star:57\n* [complete](https://github.com/posener/complete) - Write bash completions in Go + Go command bash completion. - :arrow_down:27 - :star:456\n* [docopt.go](https://github.com/docopt/docopt.go) - Command-line arguments parser that will make you smile. - :arrow_down:64 - :star:723\n* [env](https://github.com/codingconcepts/env) - Tag-based environment configuration for structs. - :arrow_down:5 - :star:18\n* [flag](https://github.com/cosiner/flag) - Simple but powerful command line option parsing library for Go supporting subcommand. - :arrow_down:2 - :star:2\n* [flaggy](https://github.com/integrii/flaggy) - A robust and idiomatic flags package with excellent subcommand support. - :arrow_down:0 - :star:8\n* [flagvar](https://github.com/sgreben/flagvar) - A collection of flag argument types for Go's standard `flag` package. - :arrow_down:0 - :star:23\n* [go-arg](https://github.com/alexflint/go-arg) - Struct-based argument parsing in Go. - :arrow_down:111 - :star:370\n* [go-commander](https://github.com/yitsushi/go-commander) - Go library to simplify CLI workflow. - :arrow_down:0 - :star:3\n* [go-flags](https://github.com/jessevdk/go-flags) - go command line option parser. - :arrow_down:1863 - :star:623\n* [go-getoptions](https://github.com/DavidGamba/go-getoptions) - Go option parser inspired on the flexibility of Perl’s GetOpt::Long. - :arrow_down:11 - :star:2\n* [gocmd](https://github.com/devfacet/gocmd) - Go library for building command line applications. - :arrow_down:0 - :star:15\n* [hiboot cli](https://github.com/hidevopsio/hiboot/tree/master/pkg/app/cli) - cli application framework with auto configuration and dependency injection.\n* [kingpin](https://github.com/alecthomas/kingpin) - Command line and flag parser supporting sub commands. - :arrow_down:249 - :star:732\n* [liner](https://github.com/peterh/liner) - Go readline-like library for command-line interfaces. - :arrow_down:522 - :star:325\n* [mitchellh/cli](https://github.com/mitchellh/cli) - Go library for implementing command-line interfaces. - :arrow_down:2589 - :star:460\n* [mow.cli](https://github.com/jawher/mow.cli) - Go library for building CLI applications with sophisticated flag and argument parsing and validation. - :arrow_down:207 - :star:367\n* [pflag](https://github.com/spf13/pflag) - Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags. - :arrow_down:8473 - :star:107\n* [readline](https://github.com/chzyer/readline) - Pure golang implementation that provides most features in GNU-Readline under MIT license. - :arrow_down:252 - :star:634\n* [sand](https://github.com/Zaba505/sand) - Simple API for creating interpreters and so much more.\n* [sflags](https://github.com/octago/sflags) - Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin and other libraries. - :arrow_down:4 - :star:52\n* [strumt](https://github.com/antham/strumt) - Library to create prompt chain. - :arrow_down:3 - :star:19\n* [ukautz/clif](https://github.com/ukautz/clif) - Small command line interface framework. - :arrow_down:2 - :star:69\n* [urfave/cli](https://github.com/urfave/cli) - Simple, fast, and fun package for building command line apps in Go (formerly codegangsta/cli). - :arrow_down:2725 - :star:4621\n* [wlog](https://github.com/dixonwille/wlog) - Simple logging interface that supports cross-platform color and concurrency. - :arrow_down:5 - :star:5\n* [wmenu](https://github.com/dixonwille/wmenu) - Easy to use menu structure for cli applications that prompts users to make choices. - :arrow_down:2 - :star:7\n\n### Advanced Console UIs\n\n*Libraries for building Console Applications and Console User Interfaces.*\n\n* [asciigraph](https://github.com/guptarohit/asciigraph) - Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies. - :arrow_down:2 - :star:942\n* [aurora](https://github.com/logrusorgru/aurora) - ANSI terminal colors that supports fmt.Printf/Sprintf. - :arrow_down:33 - :star:199\n* [cfmt](https://github.com/mingrammer/cfmt) - Contextual fmt inspired by bootstrap color classes. - :arrow_down:1 - :star:39\n* [chalk](https://github.com/ttacon/chalk) - Intuitive package for prettifying terminal/console output. - :arrow_down:164 - :star:169\n* [color](https://github.com/fatih/color) - Versatile package for colored terminal output. - :arrow_down:2775 - :star:1081\n* [colourize](https://github.com/TreyBastian/colourize) - Go library for ANSI colour text in terminals. - :arrow_down:2 - :star:8\n* [ctc](https://github.com/wzshiming/ctc) - The non-invasive cross-platform terminal color library does not need to modify the Print method. - :arrow_down:0 - :star:4\n* [go-ataman](https://github.com/workanator/go-ataman) - Go library for rendering ANSI colored text templates in terminals. - :arrow_down:0 - :star:5\n* [go-colorable](https://github.com/mattn/go-colorable) - Colorable writer for windows. - :arrow_down:999 - :star:136\n* [go-colortext](https://github.com/daviddengcn/go-colortext) - Go library for color output in terminals. - :arrow_down:363 - :star:148\n* [go-isatty](https://github.com/mattn/go-isatty) - isatty for golang. - :arrow_down:696 - :star:80\n* [go-prompt](https://github.com/c-bata/go-prompt) - Library for building a powerful interactive prompt, inspired by [python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit). - :arrow_down:34 - :star:1560\n* [gocui](https://github.com/jroimartin/gocui) - Minimalist Go library aimed at creating Console User Interfaces. - :arrow_down:182 - :star:777\n* [gommon/color](https://github.com/labstack/gommon/tree/master/color) - Style terminal text.\n* [gookit/color](https://github.com/gookit/color) - Terminal color rendering tool library, support 16 colors, 256 colors, RGB color rendering output, compatible with Windows. - :arrow_down:11 - :star:44\n* [mpb](https://github.com/vbauerster/mpb) - Multi progress bar for terminal applications. - :arrow_down:10 - :star:219\n* [progressbar](https://github.com/schollz/progressbar) - Basic thread-safe progress bar that works in every OS. - :arrow_down:7 - :star:282\n* [simpletable](https://github.com/alexeyco/simpletable) - Simple tables in terminal with Go. - :arrow_down:2 - :star:92\n* [tabular](https://github.com/InVisionApp/tabular) - Print ASCII tables from command line utilities without the need to pass large sets of data to the API. - :arrow_down:1 - :star:11\n* [termbox-go](https://github.com/nsf/termbox-go) - Termbox is a library for creating cross-platform text-based interfaces. - :arrow_down:1163 - :star:1603\n* [termdash](https://github.com/mum4k/termdash) - Go terminal dashboard based on **termbox-go** and inspired by [termui](https://github.com/gizak/termui). - :arrow_down:4 - :star:15\n* [termtables](https://github.com/apcera/termtables) - Go port of the Ruby library [terminal-tables](https://github.com/tj/terminal-table) for simple ASCII table generation as well as providing markdown and HTML output. - :arrow_down:33 - :star:64\n* [termui](https://github.com/gizak/termui) - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). - :arrow_down:299 - :star:5091\n* [uilive](https://github.com/gosuri/uilive) - Library for updating terminal output in realtime. - :arrow_down:49 - :star:465\n* [uiprogress](https://github.com/gosuri/uiprogress) - Flexible library to render progress bars in terminal applications. - :arrow_down:82 - :star:831\n* [uitable](https://github.com/gosuri/uitable) - Library to improve readability in terminal apps using tabular data. - :arrow_down:124 - :star:347\n\n## Configuration\n\n*Libraries for configuration parsing.*\n\n* [config](https://github.com/olebedev/config) - JSON or YAML configuration wrapper with environment variables and flags parsing. - :arrow_down:84 - :star:81\n* [configure](https://github.com/paked/configure) - Provides configuration through multiple sources, including JSON, flags and environment variables. - :arrow_down:22 - :star:20\n* [confita](https://github.com/heetch/confita) - Load configuration in cascade from multiple backends into a struct. - :arrow_down:1 - :star:44\n* [conflate](https://github.com/the4thamigo-uk/conflate) - Library/tool to merge multiple JSON/YAML/TOML files from arbitrary URLs, validation against a JSON schema, and application of default values defined in the schema.\n* [env](https://github.com/caarlos0/env) - Parse environment variables to Go structs (with defaults). - :arrow_down:88 - :star:162\n* [envcfg](https://github.com/tomazk/envcfg) - Un-marshaling environment variables to Go structs. - :arrow_down:1 - :star:79\n* [envconf](https://github.com/ian-kent/envconf) - Configuration from environment. - :arrow_down:13 - :star:3\n* [envconfig](https://github.com/vrischmann/envconfig) - Read your configuration from environment variables. - :arrow_down:19 - :star:93\n* [envh](https://github.com/antham/envh) - Helpers to manage environment variables. - :arrow_down:6 - :star:85\n* [gcfg](https://github.com/go-gcfg/gcfg) - read INI-style configuration files into Go structs; supports user-defined types and subsections.\n* [go-up](https://github.com/ufoscout/go-up) - A simple configuration library with recursive placeholders resolution and no magic. - :arrow_down:1 - :star:13\n* [goConfig](https://github.com/crgimenes/goConfig) - Parses a struct as input and populates the fields of this struct with parameters from command line, environment variables and configuration file. - :arrow_down:3 - :star:70\n* [godotenv](https://github.com/joho/godotenv) - Go port of Ruby's dotenv library (Loads environment variables from `.env`). - :arrow_down:675 - :star:348\n* [gofigure](https://github.com/ian-kent/gofigure) - Go application configuration made easy. - :arrow_down:14 - :star:36\n* [gone/jconf](https://github.com/One-com/gone/tree/master/jconf) - Modular JSON configuration. Keep you config structs along with the code they configure and delegate parsing to submodules without sacrificing full config serialization.\n* [gookit/config](https://github.com/gookit/config) - application config manage(load,get,set). support JSON, YAML, TOML, INI, HCL. multi file load, data override merge. - :arrow_down:5 - :star:25\n* [hjson](https://github.com/hjson/hjson-go) - Human JSON, a configuration file format for humans. Relaxed syntax, fewer mistakes, more comments. - :arrow_down:11 - :star:51\n* [ingo](https://github.com/schachmat/ingo) - Flags persisted in an ini-like config file. - :arrow_down:8 - :star:10\n* [ini](https://github.com/go-ini/ini) - Go package to read and write INI files. - :arrow_down:379 - :star:370\n* [joshbetz/config](https://github.com/joshbetz/config) - Small configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP. - :arrow_down:0 - :star:192\n* [kelseyhightower/envconfig](https://github.com/kelseyhightower/envconfig) - Go library for managing configuration data from environment variables. - :arrow_down:540 - :star:479\n* [mini](https://github.com/sasbury/mini) - Golang package for parsing ini-style configuration files. - :arrow_down:0 - :star:8\n* [sprbox](https://github.com/oblq/sprbox) - Build-environment aware toolbox factory and agnostic config parser (YAML, TOML, JSON and Environment vars). - :arrow_down:1 - :star:3\n* [store](https://github.com/tucnak/store) - Lightweight configuration manager for Go. - :arrow_down:1 - :star:202\n* [viper](https://github.com/spf13/viper) - Go configuration with fangs. - :arrow_down:6478 - :star:1947\n* [xdg](https://github.com/OpenPeeDeeP/xdg) - Cross platform package that follows the [XDG Standard](https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html). - :arrow_down:2 - :star:5\n\n## Continuous Integration\n\n*Tools for help with continuous integration.*\n\n* [drone](https://github.com/drone/drone) - Drone is a Continuous Integration platform built on Docker, written in Go.\n* [duci](https://github.com/duck8823/duci) - A simple ci server no needs domain specific languages. - :arrow_down:0 - :star:16\n* [gomason](https://github.com/nikogura/gomason) - Test, Build, Sign, and Publish your go binaries from a clean workspace. - :arrow_down:0 - :star:4\n* [goveralls](https://github.com/mattn/goveralls) - Go integration for Coveralls.io continuous code coverage tracking system. - :arrow_down:0 - :star:285\n* [overalls](https://github.com/go-playground/overalls) - Multi-Package go project coverprofile for tools like goveralls. - :arrow_down:0 - :star:27\n* [roveralls](https://github.com/LawrenceWoodman/roveralls) - Recursive coverage testing tool. - :arrow_down:0 - :star:0\n\n## CSS Preprocessors\n\n*Libraries for preprocessing CSS files.*\n\n* [gcss](https://github.com/yosssi/gcss) - Pure Go CSS Preprocessor. - :arrow_down:20 - :star:356\n* [go-libsass](https://github.com/wellington/go-libsass) - Go wrapper to the 100% Sass compatible libsass project. - :arrow_down:34 - :star:36\n\n## Data Structures\n\n*Generic datastructures and algorithms in Go.*\n* [algorithms](https://github.com/shady831213/algorithms) - Algorithms and data structures.CLRS study.\n* [binpacker](https://github.com/zhuangsirui/binpacker) - Binary packer and unpacker helps user build custom binary stream. - :arrow_down:1 - :star:24\n* [bit](https://github.com/yourbasic/bit) - Golang set data structure with bonus bit-twiddling functions. - :arrow_down:0 - :star:20\n* [bitset](https://github.com/willf/bitset) - Go package implementing bitsets. - :arrow_down:190 - :star:210\n* [bloom](https://github.com/zhenjl/bloom) - Bloom filters implemented in Go. - :arrow_down:11 - :star:87\n* [bloom](https://github.com/yourbasic/bloom) - Golang Bloom filter implementation. - :arrow_down:0 - :star:5\n* [boomfilters](https://github.com/tylertreat/BoomFilters) - Probabilistic data structures for processing continuous, unbounded streams. - :arrow_down:25 - :star:736\n* [concurrent-writer](https://github.com/free/concurrent-writer) - Highly concurrent drop-in replacement for `bufio.Writer`.\n* [conjungo](https://github.com/InVisionApp/conjungo) - A small, powerful and flexible merge library. - :arrow_down:0 - :star:32\n* [count-min-log](https://github.com/seiflotfy/count-min-log) - Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory). - :arrow_down:2 - :star:23\n* [cuckoofilter](https://github.com/seiflotfy/cuckoofilter) - Cuckoo filter: a good alternative to a counting bloom filter implemented in Go. - :arrow_down:9 - :star:186\n* [deque](https://github.com/edwingeng/deque) - A highly optimized double-ended queue.\n* [deque](https://github.com/gammazero/deque) - Fast ring-buffer deque (double-ended queue). - :arrow_down:0 - :star:8\n* [encoding](https://github.com/zhenjl/encoding) - Integer Compression Libraries for Go. - :arrow_down:0 - :star:46\n* [go-adaptive-radix-tree](https://github.com/plar/go-adaptive-radix-tree) - Go implementation of Adaptive Radix Tree. - :arrow_down:5 - :star:10\n* [go-datastructures](https://github.com/Workiva/go-datastructures) - Collection of useful, performant, and thread-safe data structures. - :arrow_down:0 - :star:2716\n* [go-ef](https://github.com/amallia/go-ef) - A Go implementation of the Elias-Fano encoding. - :arrow_down:0 - :star:5\n* [go-geoindex](https://github.com/hailocab/go-geoindex) - In-memory geo index. - :arrow_down:9 - :star:201\n* [go-mcache](https://github.com/OrlovEvgeny/go-mcache) - Fast in-memory key:value store/cache library. Pointer caches. - :arrow_down:0 - :star:8\n* [go-rquad](https://github.com/aurelien-rainone/go-rquad) - Region quadtrees with efficient point location and neighbour finding. - :arrow_down:0 - :star:0\n* [goconcurrentqueue](https://github.com/enriquebris/goconcurrentqueue) - Concurrent FIFO queue.\n* [gods](https://github.com/emirpasic/gods) - Go Data Structures. Containers, Sets, Lists, Stacks, Maps, BidiMaps, Trees, HashSet etc.\n* [golang-set](https://github.com/deckarep/golang-set) - Thread-Safe and Non-Thread-Safe high-performance sets for Go. - :arrow_down:263 - :star:419\n* [goset](https://github.com/zoumo/goset) - A useful Set collection implementation for Go. - :arrow_down:0 - :star:6\n* [goskiplist](https://github.com/ryszard/goskiplist) - Skip list implementation in Go.\n* [gota](https://github.com/kniren/gota) - Implementation of dataframes, series, and data wrangling methods for Go.\n* [hide](https://github.com/emvi/hide) - ID type with marshalling to/from hash to prevent sending IDs to clients.\n* [hilbert](https://github.com/google/hilbert) - Go package for mapping values to and from space-filling curves, such as Hilbert and Peano curves. - :arrow_down:3 - :star:35\n* [hyperloglog](https://github.com/axiomhq/hyperloglog) - HyperLogLog implementation with Sparse, LogLog-Beta bias correction and TailCut space reduction. - :arrow_down:6 - :star:585\n* [levenshtein](https://github.com/agext/levenshtein) - Levenshtein distance and similarity metrics with customizable edit costs and Winkler-like bonus for common prefix. - :arrow_down:13 - :star:0\n* [levenshtein](https://github.com/agnivade/levenshtein) - Implementation to calculate levenshtein distance in Go. - :arrow_down:4 - :star:5\n* [mafsa](https://github.com/smartystreets/mafsa) - MA-FSA implementation with Minimal Perfect Hashing. - :arrow_down:16 - :star:214\n* [merkletree](https://github.com/cbergoon/merkletree) - Implementation of a merkle tree providing an efficient and secure verification of the contents of data structures. - :arrow_down:1 - :star:61\n* [mspm](https://github.com/BlackRabbitt/mspm) - Multi-String Pattern Matching Algorithm for information retrieval.\n* [null](https://github.com/emvi/null) - Nullable Go types that can be marshalled/unmarshalled to/from JSON.\n* [pipeline](https://github.com/hyfather/pipeline) - An implementation of pipelines with fan-in and fan-out. - :arrow_down:1 - :star:5\n* [ring](https://github.com/TheTannerRyan/ring) - Go implementation of a high performance, thread safe bloom filter.\n* [roaring](https://github.com/RoaringBitmap/roaring) - Go package implementing compressed bitsets. - :arrow_down:59 - :star:154\n* [set](https://github.com/StudioSol/set) - Simple set data structure implementation in Go using LinkedHashMap. - :arrow_down:0 - :star:5\n* [skiplist](https://github.com/MauriceGit/skiplist) - Very fast Go Skiplist implementation. - :arrow_down:0 - :star:67\n* [skiplist](https://github.com/gansidui/skiplist) - Skiplist implementation in Go. - :arrow_down:0 - :star:30\n* [timedmap](https://github.com/zekroTJA/timedmap) - Map with expiring key-value pairs.\n* [trie](https://github.com/derekparker/trie) - Trie implementation in Go. - :arrow_down:4 - :star:142\n* [ttlcache](https://github.com/diegobernardes/ttlcache) - In-memory LRU string-interface{} map with expiration for golang. - :arrow_down:3 - :star:31\n* [willf/bloom](https://github.com/willf/bloom) - Go package implementing Bloom filters. - :arrow_down:86 - :star:251\n\n## Database\n\n*Databases implemented in Go.*\n\n* [badger](https://github.com/dgraph-io/badger) - Fast key-value store in Go. - :arrow_down:137 - :star:3792\n* [BigCache](https://github.com/allegro/bigcache) - Efficient key/value cache for gigabytes of data. - :arrow_down:36 - :star:774\n* [bolt](https://github.com/boltdb/bolt) - Low-level key/value database for Go. - :arrow_down:3599 - :star:4737\n* [buntdb](https://github.com/tidwall/buntdb) - Fast, embeddable, in-memory key/value database for Go with custom indexing and spatial support. - :arrow_down:48 - :star:1048\n* [cache2go](https://github.com/muesli/cache2go) - In-memory key:value cache which supports automatic invalidation based on timeouts. - :arrow_down:25 - :star:110\n* [clusteredBigCache](https://github.com/oaStuff/clusteredBigCache) - BigCache with clustering support and individual item expiration.\n* [cockroach](https://github.com/cockroachdb/cockroach) - Scalable, Geo-Replicated, Transactional Datastore. - :arrow_down:0 - :star:7668\n* [couchcache](https://github.com/codingsince1985/couchcache) - RESTful caching micro-service backed by Couchbase server. - :arrow_down:0 - :star:15\n* [CovenantSQL](https://github.com/CovenantSQL/CovenantSQL) - CovenantSQL is a SQL database on blockchain.\n* [dgraph](https://github.com/dgraph-io/dgraph) - Scalable, Distributed, Low Latency, High Throughput Graph Database.\n* [diskv](https://github.com/peterbourgon/diskv) - Home-grown disk-backed key-value store. - :arrow_down:144 - :star:386\n* [eliasdb](https://github.com/krotik/eliasdb) - Dependency-free, transactional graph database with REST API, phrase search and SQL-like query language.\n* [fastcache](https://github.com/VictoriaMetrics/fastcache) - fast thread-safe inmemory cache for big number of entries. Minimizes GC overhead.\n* [GCache](https://github.com/bluele/gcache) - Cache library with support for expirable Cache, LFU, LRU and ARC. - :arrow_down:43 - :star:115\n* [go-cache](https://github.com/pmylund/go-cache) - In-memory key:value store/cache (similar to Memcached) library for Go, suitable for single-machine applications. - :arrow_down:212 - :star:620\n* [goleveldb](https://github.com/syndtr/goleveldb) - Implementation of the [LevelDB](https://github.com/google/leveldb) key/value database in Go.\n* [gorocksdb](https://github.com/kapitan-k/gorocksdb) - Gorocksdb is a wrapper for [RocksDB](https://rocksdb.org) written in Go. - :arrow_down:0 - :star:4\n* [groupcache](https://github.com/golang/groupcache) - Groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases. - :arrow_down:120 - :star:4747\n* [influxdb](https://github.com/influxdb/influxdb) - Scalable datastore for metrics, events, and real-time analytics. - :arrow_down:698 - :star:8728\n* [ledisdb](https://github.com/siddontang/ledisdb) - Ledisdb is a high performance NoSQL like Redis based on LevelDB.\n* [levigo](https://github.com/jmhodges/levigo) - Levigo is a Go wrapper for LevelDB. - :arrow_down:166 - :star:276\n* [moss](https://github.com/couchbase/moss) - Moss is a simple LSM key-value storage engine written in 100% Go. - :arrow_down:25 - :star:30\n* [nutsdb](https://github.com/xujiajun/nutsdb) - Nutsdb is a simple, fast, embeddable, persistent key/value store written in pure Go. It supports fully serializable transactions and many data structures such as  list, set, sorted set.\n* [piladb](https://github.com/fern4lvarez/piladb) - Lightweight RESTful database engine based on stack data structures. - :arrow_down:0 - :star:2\n* [prometheus](https://github.com/prometheus/prometheus) - Monitoring system and time series database.\n* [pudge](https://github.com/recoilme/pudge) - Fast and simple  key/value store written using Go's standard library.\n* [rqlite](https://github.com/rqlite/rqlite) - The lightweight, distributed, relational database built on SQLite. - :arrow_down:0 - :star:1870\n* [Scribble](https://github.com/nanobox-io/golang-scribble) - Tiny flat file JSON store. - :arrow_down:17 - :star:23\n* [slowpoke](https://github.com/recoilme/slowpoke) - Key-value store with persistence. - :arrow_down:6 - :star:34\n* [tempdb](https://github.com/rafaeljesus/tempdb) - Key-value store for temporary items. - :arrow_down:0 - :star:10\n* [tidb](https://github.com/pingcap/tidb) - TiDB is a distributed SQL database. Inspired by the design of Google F1. - :arrow_down:141 - :star:4651\n* [tiedot](https://github.com/HouzuoGuo/tiedot) - Your NoSQL database powered by Golang. - :arrow_down:0 - :star:1609\n* [Vasto](https://github.com/chrislusf/vasto) - A distributed high-performance key-value store. On Disk. Eventual consistent. HA. Able to grow or shrink without service interruption. - :arrow_down:0 - :star:76\n\n*Database schema migration.*\n\n* [darwin](https://github.com/GuiaBolso/darwin) - Database schema evolution library for Go. - :arrow_down:6 - :star:24\n* [go-fixtures](https://github.com/RichardKnop/go-fixtures) - Django style fixtures for Golang's excellent built-in database/sql library. - :arrow_down:20 - :star:1\n* [go-pg-migrations](https://github.com/robinjoseph08/go-pg-migrations) - A Go package to help write migrations with go-pg/pg.\n* [goose](https://github.com/steinbacher/goose) - Database migration tool. You can manage your database's evolution by creating incremental SQL or Go scripts. - :arrow_down:1 - :star:17\n* [gormigrate](https://github.com/go-gormigrate/gormigrate) - Database schema migration helper for Gorm ORM. - :arrow_down:2 - :star:9\n* [migrate](https://github.com/golang-migrate/migrate) - Database migrations. CLI and Golang library. - :arrow_down:15 - :star:198\n* [pravasan](https://github.com/pravasan/pravasan) - Simple Migration tool - currently for MySQL but planning to soon support Postgres, SQLite, MongoDB, etc. - :arrow_down:0 - :star:12\n* [soda](https://github.com/gobuffalo/pop/tree/master/soda) - Database migration, creation, ORM, etc... for MySQL, PostgreSQL, and SQLite.\n* [sql-migrate](https://github.com/rubenv/sql-migrate) - Database migration tool. Allows embedding migrations into the application using go-bindata. - :arrow_down:273 - :star:497\n\n*Database tools.*\n\n* [chproxy](https://github.com/Vertamedia/chproxy) - HTTP proxy for ClickHouse database. - :arrow_down:0 - :star:123\n* [clickhouse-bulk](https://github.com/nikepan/clickhouse-bulk) - Collects small insterts and sends big requests to ClickHouse servers. - :arrow_down:0 - :star:66\n* [dbbench](https://github.com/sj14/dbbench) - Database benchmarking tool with support for several databases and scripts.\n* [go-mysql](https://github.com/siddontang/go-mysql) - Go toolset to handle MySQL protocol and replication.\n* [go-mysql-elasticsearch](https://github.com/siddontang/go-mysql-elasticsearch) - Sync your MySQL data into Elasticsearch automatically.\n* [kingshard](https://github.com/flike/kingshard) - kingshard is a high performance proxy for MySQL powered by Golang.\n* [myreplication](https://github.com/2tvenom/myreplication) - MySql binary log replication listener. Supports statement and row based replication. - :arrow_down:0 - :star:58\n* [octillery](https://github.com/knocknote/octillery) - Go package for sharding databases ( Supports every ORM or raw SQL ).\n* [orchestrator](https://github.com/github/orchestrator) - MySQL replication topology manager \u0026 visualizer.\n* [pgweb](https://github.com/sosedoff/pgweb) - Web-based PostgreSQL database browser. - :arrow_down:0 - :star:3630\n* [prep](https://github.com/hexdigest/prep) - Use prepared SQL statements without changing your code. - :arrow_down:0 - :star:19\n* [pREST](https://github.com/nuveo/prest) - Serve a RESTful API from any PostgreSQL database. - :arrow_down:0 - :star:1684\n* [rwdb](https://github.com/andizzle/rwdb) - rwdb provides read replica capability for multiple database servers setup. - :arrow_down:0 - :star:8\n* [vitess](https://github.com/youtube/vitess) - vitess provides servers and tools which facilitate scaling of MySQL databases for large scale web services. - :arrow_down:0 - :star:3923\n\n*SQL query builder, libraries for building and using SQL.*\n\n* [Dotsql](https://github.com/gchaincl/dotsql) - Go library that helps you keep sql files in one place and use them with ease. - :arrow_down:12 - :star:237\n* [gendry](https://github.com/didi/gendry) - Non-invasive SQL builder and powerful data binder.\n* [godbal](https://github.com/xujiajun/godbal) - Database Abstraction Layer (dbal) for go. Support SQL builder and get result easily. - :arrow_down:0 - :star:43\n* [goqu](https://github.com/doug-martin/goqu) - Idiomatic SQL builder and query library. - :arrow_down:10 - :star:266\n* [igor](https://github.com/galeone/igor) - Abstraction layer for PostgreSQL that supports advanced functionality and uses gorm-like syntax. - :arrow_down:4 - :star:53\n* [ormlite](https://github.com/pupizoid/ormlite) - Lightweight package containing some ORM-like features and helpers for sqlite databases. - :arrow_down:0 - :star:0\n* [ozzo-dbx](https://github.com/go-ozzo/ozzo-dbx) - Powerful data retrieval methods as well as DB-agnostic query building capabilities. - :arrow_down:13 - :star:108\n* [scaneo](https://github.com/variadico/scaneo) - Generate Go code to convert database rows into arbitrary structs. - :arrow_down:0 - :star:79\n* [sqrl](https://github.com/elgris/sqrl) - SQL query builder, fork of Squirrel with improved performance. - :arrow_down:9 - :star:45\n* [Squalus](https://gitlab.com/qosenergy/squalus) - Thin layer over the Go SQL package that makes it easier to perform queries.\n* [Squirrel](https://github.com/Masterminds/squirrel) - Go library that helps you build SQL queries. - :arrow_down:166 - :star:904\n* [xo](https://github.com/knq/xo) - Generate idiomatic Go code for databases based on existing schema definitions or custom queries supporting PostgreSQL, MySQL, SQLite, Oracle, and Microsoft SQL Server. - :arrow_down:0 - :star:723\n\n## Database Drivers\n\n*Libraries for connecting and operating databases.*\n\n* Relational Databases\n    * [avatica](https://github.com/apache/calcite-avatica-go) - Apache Avatica/Phoenix SQL driver for database/sql. - :arrow_down:2 - :star:13\n    * [bgc](https://github.com/viant/bgc) - Datastore Connectivity for BigQuery for go. - :arrow_down:1 - :star:0\n    * [firebirdsql](https://github.com/nakagami/firebirdsql) - Firebird RDBMS SQL driver for Go. - :arrow_down:7 - :star:46\n    * [go-adodb](https://github.com/mattn/go-adodb) - Microsoft ActiveX Object DataBase driver for go that uses database/sql. - :arrow_down:71 - :star:40\n    * [go-mssqldb](https://github.com/denisenkom/go-mssqldb) - Microsoft MSSQL driver for Go. - :arrow_down:332 - :star:395\n    * [go-oci8](https://github.com/mattn/go-oci8) - Oracle driver for go that uses database/sql. - :arrow_down:78 - :star:157\n    * [go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) - MySQL driver for Go. - :arrow_down:6830 - :star:2669\n    * [go-sqlite3](https://github.com/mattn/go-sqlite3) - SQLite3 driver for go that uses database/sql. - :arrow_down:3953 - :star:1408\n    * [gofreetds](https://github.com/minus5/gofreetds) - Microsoft MSSQL driver. Go wrapper over [FreeTDS](http://www.freetds.org). - :arrow_down:1 - :star:39\n    * [goracle](https://github.com/go-goracle/goracle) - Oracle driver for Go, using the ODPI-C driver. - :arrow_down:1 - :star:18\n    * [pgx](https://github.com/jackc/pgx) - PostgreSQL driver supporting features beyond those exposed by database/sql. - :arrow_down:302 - :star:684\n    * [pq](https://github.com/lib/pq) - Pure Go Postgres driver for database/sql. - :arrow_down:5873 - :star:2324\n\n* NoSQL Databases\n    * [aerospike-client-go](https://github.com/aerospike/aerospike-client-go) - Aerospike client in Go language. - :arrow_down:303 - :star:182\n    * [arangolite](https://github.com/solher/arangolite) - Lightweight golang driver for ArangoDB. - :arrow_down:6 - :star:34\n    * [asc](https://github.com/viant/asc) - Datastore Connectivity for Aerospike for go. - :arrow_down:1 - :star:1\n    * [dynago](https://github.com/underarmour/dynago) - Dynago is a principle of least surprise client for DynamoDB. - :arrow_down:1 - :star:18\n    * [forestdb](https://github.com/couchbase/goforestdb) - Go bindings for ForestDB. - :arrow_down:11 - :star:22\n    * [go-couchbase](https://github.com/couchbase/go-couchbase) - Couchbase client in Go. - :arrow_down:296 - :star:217\n    * [go-couchdb](https://github.com/fjl/go-couchdb) - Yet another CouchDB HTTP API wrapper for Go. - :arrow_down:18 - :star:35\n    * [go-pilosa](https://github.com/pilosa/go-pilosa) - Go client library for Pilosa. - :arrow_down:6 - :star:20\n    * [go-rejson](https://github.com/nitishm/go-rejson) - Golang client for redislabs' ReJSON module using Redigo golang client. Store and manipulate structs as JSON objects in redis with ease. - :arrow_down:1 - :star:42\n    * [gocb](https://github.com/couchbase/gocb) - Official Couchbase Go SDK. - :arrow_down:43 - :star:183\n    * [gocql](http://gocql.github.io) - Go language driver for Apache Cassandra.\n    * [godscache](https://github.com/defcronyke/godscache) - A wrapper for the Google Cloud Platform Go Datastore package that adds caching using memcached. - :arrow_down:0 - :star:3\n    * [gomemcache](https://github.com/bradfitz/gomemcache/) - memcache client library for the Go programming language.\n    * [gorethink](https://github.com/dancannon/gorethink) - Go language driver for RethinkDB. - :arrow_down:415 - :star:1024\n    * [goriak](https://github.com/zegl/goriak) - Go language driver for Riak KV. - :arrow_down:2 - :star:1\n    * [mgo](https://github.com/globalsign/mgo) - MongoDB driver for the Go language that implements a rich and well tested selection of features under a very simple API following standard Go idioms. - :arrow_down:163 - :star:726\n    * [mongo-go-driver](https://github.com/mongodb/mongo-go-driver) - Official MongoDB driver for the Go language.\n    * [neo4j](https://github.com/cihangir/neo4j) - Neo4j Rest API Bindings for Golang. - :arrow_down:0 - :star:15\n    * [Neo4j-GO](https://github.com/davemeehan/Neo4j-GO) - Neo4j REST Client in golang. - :arrow_down:4 - :star:63\n    * [neoism](https://github.com/jmcvetta/neoism) - Neo4j client for Golang. - :arrow_down:113 - :star:271\n    * [redigo](https://github.com/gomodule/redigo) - Redigo is a Go client for the Redis database.\n    * [redis](https://github.com/go-redis/redis) - Redis client for Golang. - :arrow_down:377 - :star:1105\n    * [redis](https://github.com/bsm/redeo) - Redis-protocol compatible TCP servers/services. - :arrow_down:11 - :star:107\n    * [xredis](https://github.com/shomali11/xredis) - Typesafe, customizable, clean \u0026 easy to use Redis client. - :arrow_down:2 - :star:7\n\n* Search and Analytic Databases.\n    * [bleve](https://github.com/blevesearch/bleve) - Modern text indexing library for go. - :arrow_down:646 - :star:2796\n    * [elastic](https://github.com/olivere/elastic) - Elasticsearch client for Go. - :arrow_down:161 - :star:827\n    * [elasticsql](https://github.com/cch123/elasticsql) - Convert sql to elasticsearch dsl in Go. - :arrow_down:1 - :star:15\n    * [elastigo](https://github.com/mattbaird/elastigo) - Elasticsearch client library. - :arrow_down:1 - :star:799\n    * [goes](https://github.com/OwnLocal/goes) - Library to interact with Elasticsearch. - :arrow_down:1 - :star:4\n    * [riot](https://github.com/go-ego/riot) - Go Open Source, Distributed, Simple and efficient Search Engine. - :arrow_down:17 - :star:3565\n    * [skizze](https://github.com/seiflotfy/skizze) - probabilistic data-structures service and storage.\n\n* Multiple Backends.\n    * [cachego](https://github.com/fabiorphp/cachego) - Golang Cache component for multiple drivers. - :arrow_down:0 - :star:10\n    * [cayley](https://github.com/google/cayley) - Graph database with support for multiple backends. - :arrow_down:21 - :star:8622\n    * [dsc](https://github.com/viant/dsc) - Datastore connectivity for SQL, NoSQL, structured files. - :arrow_down:5 - :star:1\n    * [gokv](https://github.com/philippgille/gokv) - Simple key-value store abstraction and implementations for Go (Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB and many more)\n\n## Date and Time\n\n*Libraries for working with dates and times.*\n\n* [carbon](https://github.com/uniplaces/carbon) - Simple Time extension with a lot of util methods, ported from PHP Carbon library. - :arrow_down:6 - :star:45\n* [date](https://github.com/rickb777/date) - Augments Time for working with dates, date ranges, time spans, periods, and time-of-day. - :arrow_down:3 - :star:3\n* [dateparse](https://github.com/araddon/dateparse) - Parse date's without knowing format in advance. - :arrow_down:45 - :star:8\n* [durafmt](https://github.com/hako/durafmt) - Time duration formatting library for Go. - :arrow_down:16 - :star:124\n* [feiertage](https://github.com/wlbr/feiertage) - Set of functions to calculate public holidays in Germany, incl. specialization on the states of Germany (Bundesländer). Things like Easter, Pentecost, Thanksgiving... - :arrow_down:2 - :star:1\n* [go-persian-calendar](https://github.com/yaa110/go-persian-calendar) - The implementation of the Persian (Solar Hijri) Calendar in Go (golang). - :arrow_down:0 - :star:47\n* [go-sunrise](https://github.com/nathan-osman/go-sunrise) - Calculate the sunrise and sunset times for a given location. - :arrow_down:0 - :star:4\n* [goweek](https://github.com/grsmv/goweek) - Library for working with week entity in golang. - :arrow_down:3 - :star:7\n* [iso8601](https://github.com/relvacode/iso8601) - Efficiently parse ISO8601 date-times without regex. - :arrow_down:0 - :star:4\n* [kair](https://github.com/GuilhermeCaruso/kair) - Date and Time - Golang Formatting Library.\n* [now](https://github.com/jinzhu/now) - Now is a time toolkit for golang. - :arrow_down:135 - :star:701\n* [NullTime](https://github.com/kirillDanshin/nulltime) - Nullable `time.Time`. - :arrow_down:0 - :star:1\n* [strftime](https://github.com/awoodbeck/strftime) - C99-compatible strftime formatter. - :arrow_down:0 - :star:1\n* [timespan](https://github.com/SaidinWoT/timespan) - For interacting with intervals of time, defined as a start time and a duration. - :arrow_down:1 - :star:35\n* [timeutil](https://github.com/leekchan/timeutil) - Useful extensions (Timedelta, Strftime, ...) to the golang's time package. - :arrow_down:8 - :star:110\n* [tuesday](https://github.com/osteele/tuesday) - Ruby-compatible Strftime function. - :arrow_down:1 - :star:5\n\n## Distributed Systems\n\n*Packages that help with building Distributed Systems.*\n\n* [celeriac](https://github.com/svcavallar/celeriac.v1) - Library for adding support for interacting and monitoring Celery workers, tasks and events in Go.\n* [consistent](https://github.com/buraksezer/consistent) - Consistent hashing with bounded loads. - :arrow_down:1 - :star:103\n* [digota](https://github.com/digota/digota) - grpc ecommerce microservice. - :arrow_down:0 - :star:213\n* [doublejump](https://github.com/edwingeng/doublejump) - A revamped Google's jump consistent hash.\n* [drmaa](https://github.com/dgruber/drmaa) - Job submission library for cluster schedulers based on the DRMAA standard. - :arrow_down:11 - :star:14\n* [dynamolock](https://cirello.io/dynamolock) - DynamoDB-backed distributed locking implementation.\n* [dynatomic](https://github.com/tylfin/dynatomic) - A library for using DynamoDB as an atomic counter.\n* [emitter-io](https://github.com/emitter-io/emitter) - High performance, distributed, secure and low latency publish-subscribe platform built with MQTT, Websockets and love. - :arrow_down:0 - :star:1184\n* [flowgraph](https://github.com/vectaport/flowgraph) - flow-based programming package. - :arrow_down:5 - :star:19\n* [gleam](https://github.com/chrislusf/gleam) - Fast and scalable distributed map/reduce system written in pure Go and Luajit, combining Go's high concurrency with Luajit's high performance, runs standalone or distributed. - :arrow_down:0 - :star:54\n* [glow](https://github.com/chrislusf/glow) - Easy-to-Use scalable distributed big data processing, Map-Reduce, DAG execution, all in pure Go. - :arrow_down:0 - :star:1210\n* [go-health](https://github.com/InVisionApp/go-health) - Library for enabling asynchronous dependency health checks in your service. - :arrow_down:3 - :star:189\n* [go-jump](https://github.com/dgryski/go-jump) - Port of Google's \"Jump\" Consistent Hash function. - :arrow_down:19 - :star:84\n* [go-kit](https://github.com/go-kit/kit) - Microservice toolkit with support for service discovery, load balancing, pluggable transports, request tracking, etc.\n* [gorpc](https://github.com/valyala/gorpc) - Simple, fast and scalable RPC library for high load. - :arrow_down:22 - :star:275\n* [grpc-go](https://github.com/grpc/grpc-go) - The Go language implementation of gRPC. HTTP/2 based RPC. - :arrow_down:0 - :star:2391\n* [hprose](https://github.com/hprose/hprose-golang) - Very newbility RPC Library, support 25+ languages now. - :arrow_down:0 - :star:22\n* [jaeger](https://github.com/jaegertracing/jaeger) - A distributed tracing system. - :arrow_down:0 - :star:4908\n* [jsonrpc](https://github.com/osamingo/jsonrpc) - The jsonrpc package helps implement of JSON-RPC 2.0. - :arrow_down:0 - :star:9\n* [jsonrpc](https://github.com/ybbus/jsonrpc) - JSON-RPC 2.0 HTTP client implementation. - :arrow_down:2 - :star:1\n* [KrakenD](https://github.com/devopsfaith/krakend) - Ultra performant API Gateway framework with middlewares.\n* [micro](https://github.com/micro/micro) - Pluggable microservice toolkit and distributed systems platform. - :arrow_down:0 - :star:2352\n* [NATS](https://github.com/nats-io/gnatsd) - Lightweight, high performance messaging system for microservices, IoT, and cloud native systems. - :arrow_down:0 - :star:2327\n* [outboxer](https://github.com/italolelis/outboxer) - Outboxer is a go library that implements the outbox pattern.\n* [pglock](https://cirello.io/pglock) - PostgreSQL-backed distributed locking implementation.\n* [raft](https://github.com/hashicorp/raft) - Golang implementation of the Raft consensus protocol, by HashiCorp. - :arrow_down:682 - :star:759\n* [raft](https://github.com/coreos/etcd/tree/master/raft) - Go implementation of the Raft consensus protocol, by CoreOS.\n* [redis-lock](https://github.com/bsm/redis-lock) - Simplified distributed locking implementation using Redis. - :arrow_down:6 - :star:4\n* [ringpop-go](https://github.com/uber/ringpop-go) - Scalable, fault-tolerant application-layer sharding for Go applications. - :arrow_down:28 - :star:179\n* [rpcx](https://github.com/smallnest/rpcx) - Distributed pluggable RPC service framework like alibaba Dubbo. - :arrow_down:18 - :star:268\n* [sleuth](https://github.com/ursiform/sleuth) - Library for master-less p2p auto-discovery and RPC between HTTP services (using [ZeroMQ](https://github.com/zeromq/libzmq)). - :arrow_down:0 - :star:188\n* [tendermint](https://github.com/tendermint/tendermint) - High-performance middleware for transforming a state machine written in any programming language into a Byzantine Fault Tolerant replicated state machine using the Tendermint consensus and blockchain protocols.\n* [torrent](https://github.com/anacrolix/torrent) - BitTorrent client package. - :arrow_down:106 - :star:1325\n    * [dht](https://godoc.org/github.com/anacrolix/dht) - BitTorrent Kademlia DHT implementation.\n    * [go-peerflix](https://github.com/Sioro-Neoku/go-peerflix) - Video streaming torrent client. - :arrow_down:0 - :star:203\n\n## Email\n\n*Libraries and tools that implement email creation and sending.*\n\n* [chasquid](https://blitiri.com.ar/p/chasquid) - SMTP server written in Go.\n* [douceur](https://github.com/aymerick/douceur) - CSS inliner for your HTML emails. - :arrow_down:0 - :star:64\n* [email](https://github.com/jordan-wright/email) - A robust and flexible email library for Go. - :arrow_down:127 - :star:701\n* [go-dkim](https://github.com/toorop/go-dkim) - DKIM library, to sign \u0026 verify email. - :arrow_down:9 - :star:20\n* [go-imap](https://github.com/emersion/go-imap) - IMAP library for clients and servers. - :arrow_down:66 - :star:122\n* [go-message](https://github.com/emersion/go-message) - Streaming library for the Internet Message Format and mail messages. - :arrow_down:13 - :star:48\n* [Gomail](https://github.com/go-gomail/gomail/) - Gomail is a very simple and powerful package to send emails.\n* [Hectane](https://github.com/hectane/hectane) - Lightweight SMTP client providing an HTTP API. - :arrow_down:0 - :star:72\n* [hermes](https://github.com/matcornic/hermes) - Golang package that generates clean, responsive HTML e-mails. - :arrow_down:13 - :star:1262\n* [MailHog](https://github.com/mailhog/MailHog) - Email and SMTP testing with web and API interface. - :arrow_down:0 - :star:1198\n* [SendGrid](https://github.com/sendgrid/sendgrid-go) - SendGrid's Go library for sending email. - :arrow_down:157 - :star:211\n* [smtp](https://github.com/mailhog/smtp) - SMTP server protocol state machine. - :arrow_down:14 - :star:25\n\n## Embeddable Scripting Languages\n\n*Embedding other languages inside your go code.*\n\n* [agora](https://github.com/PuerkitoBio/agora) - Dynamically typed, embeddable programming language in Go. - :arrow_down:0 - :star:241\n* [anko](https://github.com/mattn/anko) - Scriptable interpreter written in Go.\n* [binder](https://github.com/alexeyco/binder) - Go to Lua binding library, based on [gopher-lua](https://github.com/yuin/gopher-lua). - :arrow_down:0 - :star:12\n* [expr](https://github.com/antonmedv/expr) - an engine that can evaluate expressions. - :arrow_down:1 - :star:239\n* [gisp](https://github.com/jcla1/gisp) - Simple LISP in Go. - :arrow_down:0 - :star:333\n* [go-duktape](https://github.com/olebedev/go-duktape) - Duktape JavaScript engine bindings for Go. - :arrow_down:14 - :star:390\n* [go-lua](https://github.com/Shopify/go-lua) - Port of the Lua 5.2 VM to pure Go. - :arrow_down:65 - :star:737\n* [go-php](https://github.com/deuill/go-php) - PHP bindings for Go. - :arrow_down:0 - :star:186\n* [go-python](https://github.com/sbinet/go-python) - naive go bindings to the CPython C-API. - :arrow_down:36 - :star:411\n* [golua](https://github.com/aarzilli/golua) - Go bindings for Lua C API.\n* [gopher-lua](https://github.com/yuin/gopher-lua) - Lua 5.1 VM and compiler written in Go. - :arrow_down:377 - :star:1317\n* [gval](https://github.com/PaesslerAG/gval) - A highly customizable expression language written in Go. - :arrow_down:1 - :star:2\n* [ngaro](https://github.com/db47h/ngaro) - Embeddable Ngaro VM implementation enabling scripting in Retro.\n* [otto](https://github.com/robertkrimen/otto) - JavaScript interpreter written in Go. - :arrow_down:1015 - :star:2409\n* [purl](https://github.com/ian-kent/purl) - Perl 5.18.2 embedded in Go. - :arrow_down:0 - :star:13\n* [tengo](https://github.com/d5/tengo) - Bytecode compiled script language for Go.\n\n## Error Handling\n\n*Libraries for handling errors.*\n\n* [errors](https://github.com/pkg/errors) - Package that provides simple error handling primitives. - :arrow_down:15775 - :star:1032\n* [errorx](https://github.com/joomcode/errorx) - A feature rich error package with stack traces, composition of errors and more.\n* [go-multierror](https://github.com/hashicorp/go-multierror) - Go (golang) package for representing a list of errors as a single error. - :arrow_down:2643 - :star:205\n* [tracerr](https://github.com/ztrue/tracerr) - Golang errors with stack trace and source fragments.\n* [werr](https://github.com/txgruppi/werr) - Error Wrapper creates an wrapper for the error type in Go which captures the File, Line and Stack of where it was called. - :arrow_down:0 - :star:5\n\n## Files\n\n*Libraries for  handling files and file systems.*\n\n* [afero](https://github.com/spf13/afero) - FileSystem Abstraction System for Go. - :arrow_down:1689 - :star:703\n* [go-csv-tag](https://github.com/artonge/go-csv-tag) - Load csv file using tag. - :arrow_down:3 - :star:23\n* [go-decent-copy](https://github.com/hugocarreira/go-decent-copy) - Copy files for humans.\n* [go-gtfs](https://github.com/artonge/go-gtfs) - Load gtfs files in go. - :arrow_down:0 - :star:5\n* [notify](https://github.com/rjeczalik/notify) - File system event notification library with simple API, similar to os/signal. - :arrow_down:77 - :star:178\n* [opc](https://github.com/qmuntal/opc) - Load Open Packaging Conventions (OPC) files for Go.\n* [pdfcpu](https://github.com/hhrutter/pdfcpu) - PDF processor.\n* [skywalker](https://github.com/dixonwille/skywalker) - Package to allow one to concurrently go through a filesystem with ease. - :arrow_down:1 - :star:28\n* [tarfs](https://github.com/posener/tarfs) - Implementation of the [`FileSystem` interface](https://godoc.org/github.com/kr/fs#FileSystem) for tar files. - :arrow_down:0 - :star:19\n* [vfs](https://github.com/C2FO/vfs) - A pluggable, extensible, and opinionated set of filesystem functionality for Go across a number of filesystem types such as os, S3, and GCS.\n\n## Financial\n\n*Packages for accounting and finance.*\n\n* [accounting](https://github.com/leekchan/accounting) - money and currency formatting for golang. - :arrow_down:11 - :star:221\n* [decimal](https://github.com/shopspring/decimal) - Arbitrary-precision fixed-point decimal numbers. - :arrow_down:1310 - :star:321\n* [go-finance](https://github.com/FlashBoys/go-finance) - Comprehensive financial markets data in Go. - :arrow_down:4 - :star:359\n* [go-finance](https://github.com/alpeb/go-finance) - Library of financial functions for time value of money (annuities), cash flow, interest rate conversions, bonds and depreciation calculations.\n* [go-money](https://github.com/rhymond/go-money) - Implementation of Fowler's Money pattern. - :arrow_down:1 - :star:513\n* [ofxgo](https://github.com/aclindsa/ofxgo) - Query OFX servers and/or parse the responses (with example command-line client). - :arrow_down:1 - :star:40\n* [orderbook](https://github.com/i25959341/orderbook) - Matching Engine for Limit Order Book in Golang.\n* [techan](https://github.com/sdcoffey/techan) - Technical analysis library with advanced market analysis and trading strategies. - :arrow_down:2 - :star:42\n* [transaction](https://github.com/claygod/transaction) - Embedded transactional database of accounts, running in multithreaded mode. - :arrow_down:0 - :star:20\n* [vat](https://github.com/dannyvankooten/vat) - VAT number validation \u0026 EU VAT rates. - :arrow_down:0 - :star:28\n\n## Forms\n\n*Libraries for working with forms.*\n\n* [bind](https://github.com/robfig/bind) - Bind form data to any Go values. - :arrow_down:0 - :star:14\n* [binding](https://github.com/mholt/binding) - Binds form and JSON data from net/http Request to struct. - :arrow_down:102 - :star:510\n* [conform](https://github.com/leebenson/conform) - Keeps user input in check. Trims, sanitizes \u0026 scrubs data based on struct tags. - :arrow_down:7 - :star:34\n* [form](https://github.com/go-playground/form) - Decodes url.Values into Go value(s) and Encodes Go value(s) into url.Values. Dual Array and Full map support. - :arrow_down:18 - :star:132\n* [formam](https://github.com/monoculum/formam) - decode form's values into a struct. - :arrow_down:38 - :star:63\n* [forms](https://github.com/albrow/forms) - Framework-agnostic library for parsing and validating form/JSON data which supports multipart forms and files. - :arrow_down:9 - :star:63\n* [gorilla/csrf](https://github.com/gorilla/csrf) - CSRF protection for Go web applications \u0026 services. - :arrow_down:124 - :star:136\n* [nosurf](https://github.com/justinas/nosurf) - CSRF protection middleware for Go. - :arrow_down:126 - :star:667\n\n## Functional\n\n*Packages to support functional programming in Go.*\n\n* [fpGo](https://github.com/TeaEntityLab/fpGo) - Monad, Functional Programming features for Golang. - :arrow_down:0 - :star:64\n* [fuego](https://github.com/seborama/fuego) - Functional Experiment in Go.\n* [go-underscore](https://github.com/tobyhede/go-underscore) - Useful collection of helpfully functional Go collection utilities. - :arrow_down:1 - :star:866\n\n## Game Development\n\n*Awesome game development libraries.*\n\n* [Azul3D](https://github.com/azul3d/engine) - 3D game engine written in Go.\n* [Ebiten](https://github.com/hajimehoshi/ebiten) - dead simple 2D game library in Go. - :arrow_down:188 - :star:151\n* [engo](https://github.com/EngoEngine/engo) - Engo is an open-source 2D game engine written in Go. It follows the Entity-Component-System paradigm. - :arrow_down:0 - :star:290\n* [g3n](https://github.com/g3n/engine) - Go 3D Game Engine.\n* [GarageEngine](https://github.com/vova616/GarageEngine) - 2d game engine written in Go working on OpenGL. - :arrow_down:0 - :star:238\n* [glop](https://github.com/runningwild/glop) - Glop (Game Library Of Power) is a fairly simple cross-platform game library.\n* [go-astar](https://github.com/beefsack/go-astar) - Go implementation of the A\\* path finding algorithm. - :arrow_down:8 - :star:156\n* [go-collada](https://github.com/GlenKelley/go-collada) - Go package for working with the Collada file format. - :arrow_down:15 - :star:9\n* [go-sdl2](https://github.com/veandco/go-sdl2) - Go bindings for the [Simple DirectMedia Layer](https://www.libsdl.org/).\n* [go3d](https://github.com/ungerik/go3d) - Performance oriented 2D/3D math package for Go. - :arrow_down:0 - :star:112\n* [gonet](https://github.com/xtaci/gonet) - Game server skeleton implemented with golang.\n* [goworld](https://github.com/xiaonanln/goworld) - Scalable game server engine, featuring space-entity framework and hot-swapping. - :arrow_down:0 - :star:637\n* [Leaf](https://github.com/name5566/leaf) - Lightweight game server framework. - :arrow_down:5 - :star:787\n* [nano](https://github.com/lonng/nano) - Lightweight, facility, high performance golang based game server framework.\n* [Oak](https://github.com/oakmound/oak) - Pure Go game engine. - :arrow_down:13 - :star:481\n* [Pitaya](https://github.com/topfreegames/pitaya) - Scalable game server framework with clustering support and client libraries for iOS, Android, Unity and others through the C SDK. - :arrow_down:1 - :star:16\n* [Pixel](https://github.com/faiface/pixel) - Hand-crafted 2D game library in Go. - :arrow_down:82 - :star:1367\n* [raylib-go](https://github.com/gen2brain/raylib-go) - Go bindings for [raylib](http://www.raylib.com/), a simple and easy-to-use library to learn videogames programming.\n* [termloop](https://github.com/JoelOtter/termloop) - Terminal-based game engine for Go, built on top of Termbox. - :arrow_down:25 - :star:658\n\n## Generation and Generics\n\n*Tools to enhance the language with features like generics via code generation.*\n\n* [efaceconv](https://github.com/t0pep0/efaceconv) - Code generation tool for high performance conversion from interface{} to immutable type without allocations. - :arrow_down:0 - :star:15\n* [gen](https://github.com/clipperhouse/gen) - Code generation tool for ‘generics’-like functionality. - :arrow_down:0 - :star:731\n* [go-enum](https://github.com/abice/go-enum) - Code generation for enums from code comments. - :arrow_down:0 - :star:46\n* [go-linq](https://github.com/ahmetalpbalkan/go-linq) - .NET LINQ-like query methods for Go. - :arrow_down:32 - :star:828\n* [goderive](https://github.com/awalterschulze/goderive) - Derives functions from input types. - :arrow_down:0 - :star:573\n* [gotype](https://github.com/wzshiming/gotype) - Golang source code parsing, usage like reflect package. - :arrow_down:0 - :star:12\n* [GoWrap](https://github.com/hexdigest/gowrap) - Generate decorators for Go interfaces using simple templates.\n* [interfaces](https://github.com/rjeczalik/interfaces) - Command line tool for generating interface definitions. - :arrow_down:2 - :star:78\n* [jennifer](https://github.com/dave/jennifer) - Generate arbitrary Go code without templates. - :arrow_down:0 - :star:707\n* [pkgreflect](https://github.com/ungerik/pkgreflect) - Go preprocessor for package scoped reflection. - :arrow_down:0 - :star:39\n\n## Geographic\n\n*Geographic tools and servers*\n\n* [geocache](https://github.com/melihmucuk/geocache) - In-memory cache that is suitable for geolocation based applications. - :arrow_down:0 - :star:47\n* [geoserver](https://github.com/hishamkaram/geoserver) - geoserver Is a Go Package For Manipulating a GeoServer Instance via the GeoServer REST API. - :arrow_down:0 - :star:6\n* [gismanager](https://github.com/hishamkaram/gismanager) - Publish Your GIS Data(Vector Data) to PostGIS and Geoserver.\n* [osm](https://github.com/paulmach/osm) - Library for reading, writing and working with OpenStreetMap data and APIs. - :arrow_down:15 - :star:9\n* [pbf](https://github.com/maguro/pbf) - OpenStreetMap PBF golang encoder/decoder. - :arrow_down:0 - :star:6\n* [S2 geometry](https://github.com/golang/geo) - S2 geometry library in Go.\n* [Tile38](https://github.com/tidwall/tile38) - Geolocation DB with spatial index and realtime geofencing.\n\n## Go Compilers\n\n*Tools for compiling Go to other languages.*\n\n* [c4go](https://github.com/Konstantin8105/c4go) - Transpile C code to Go code. - :arrow_down:0 - :star:9\n* [f4go](https://github.com/Konstantin8105/f4go) - Transpile FORTRAN 77 code to Go code. - :arrow_down:0 - :star:9\n* [gopherjs](https://github.com/gopherjs/gopherjs) - Compiler from Go to JavaScript. - :arrow_down:0 - :star:4209\n* [llgo](https://github.com/go-llvm/llgo) - LLVM-based compiler for Go.\n* [tardisgo](https://github.com/tardisgo/tardisgo) - Golang to Haxe to CPP/CSharp/Java/JavaScript transpiler. - :arrow_down:0 - :star:316\n\n## Goroutines\n\n*Tools for managing and working with Goroutines.*\n\n* [ants](https://github.com/panjf2000/ants) - A high-performance goroutine pool for golang. - :arrow_down:1 - :star:1052\n* [artifex](https://github.com/borderstech/artifex) - Simple in-memory job queue for Golang using worker-based dispatching.\n* [async](https://github.com/studiosol/async) - A safe way to execute functions asynchronously, recovering them in case of panic.\n* [breaker](https://github.com/kamilsk/breaker) - 🚧 Flexible mechanism to make your code breakable.\n* [cyclicbarrier](https://github.com/marusama/cyclicbarrier) - CyclicBarrier for golang. - :arrow_down:0 - :star:12\n* [go-floc](https://github.com/workanator/go-floc) - Orchestrate goroutines with ease. - :arrow_down:0 - :star:140\n* [go-flow](https://github.com/kamildrazkiewicz/go-flow) - Control goroutines execution order. - :arrow_down:1 - :star:2\n* [go-trylock](https://github.com/subchen/go-trylock) - TryLock support on read-write lock for Golang. - :arrow_down:0 - :star:4\n* [GoSlaves](https://github.com/themester/GoSlaves) - Simple and Asynchronous Goroutine pool library. - :arrow_down:0 - :star:25\n* [goworker](https://github.com/benmanns/goworker) - goworker is a Go-based background worker. - :arrow_down:21 - :star:1484\n* [gpool](https://github.com/Sherifabdlnaby/gpool) - manages a resizeable pool of context-aware goroutines to bound concurrency.\n* [grpool](https://github.com/ivpusic/grpool) - Lightweight Goroutine pool. - :arrow_down:6 - :star:123\n* [oversight](https://cirello.io/oversight) - Oversight is a complete implementation of the Erlang supervision trees.\n* [parallel-fn](https://github.com/rafaeljesus/parallel-fn) - Run functions in parallel. - :arrow_down:0 - :star:15\n* [pool](https://github.com/go-playground/pool) - Limited consumer goroutine or unlimited goroutine pool for easier goroutine handling and cancellation. - :arrow_down:0 - :star:220\n* [semaphore](https://github.com/kamilsk/semaphore) - Semaphore pattern implementation with timeout of lock/unlock operations based on channel and context. - :arrow_down:1 - :star:0\n* [semaphore](https://github.com/marusama/semaphore) - Fast resizable semaphore implementation based on CAS (faster than channel-based semaphore implementations). - :arrow_down:4 - :star:32\n* [stl](https://github.com/ssgreg/stl) - Software transactional locks based on Software Transactional Memory (STM) concurrency control mechanism. - :arrow_down:0 - :star:5\n* [threadpool](https://github.com/shettyh/threadpool) - Golang threadpool implementation. - :arrow_down:1 - :star:4\n* [tunny](https://github.com/Jeffail/tunny) - Goroutine pool for golang. - :arrow_down:2 - :star:379\n* [worker-pool](https://github.com/vardius/worker-pool) - goworker is a Go simple async worker pool. - :arrow_down:1 - :star:11\n* [workerpool](https://github.com/gammazero/workerpool) - Goroutine pool that limits the concurrency of task execution, not the number of tasks queued. - :arrow_down:0 - :star:1\n\n## GUI\n\n*Libraries for building GUI Applications.*\n\n*Toolkits*\n\n* [app](https://github.com/murlokswarm/app) - Package to create apps with GO, HTML and CSS. Supports: MacOS, Windows in progress. - :arrow_down:12 - :star:1\n* [fyne](https://github.com/fyne-io/fyne) - Cross platform native GUIs designed for Go, rendered using EFL. Supports: Linux, macOS, Windows. - :arrow_down:6 - :star:269\n* [go-astilectron](https://github.com/asticode/go-astilectron) - Build cross platform GUI apps with GO and HTML/JS/CSS (powered by Electron). - :arrow_down:42 - :star:1643\n* [go-gtk](http://mattn.github.io/go-gtk/) - Go bindings for GTK.\n* [go-sciter](https://github.com/sciter-sdk/go-sciter) - Go bindings for Sciter: the Embeddable HTML/CSS/script engine for modern desktop UI development. Cross platform. - :arrow_down:6 - :star:1002\n* [gotk3](https://github.com/gotk3/gotk3) - Go bindings for GTK3.\n* [gowd](https://github.com/dtylman/gowd) - Rapid and simple desktop UI development with GO, HTML, CSS and NW.js. Cross platform. - :arrow_down:3 - :star:114\n* [qt](https://github.com/therecipe/qt) - Qt binding for Go (support for Windows / macOS / Linux / Android / iOS / Sailfish OS / Raspberry Pi). - :arrow_down:31 - :star:179\n* [ui](https://github.com/andlabs/ui) - Platform-native GUI library for Go. Cross platform. - :arrow_down:74 - :star:3288\n* [walk](https://github.com/lxn/walk) - Windows application library kit for Go. - :arrow_down:457 - :star:3116\n* [webview](https://github.com/zserge/webview) - Cross-platform webview window with simple two-way JavaScript bindings (Windows / macOS / Linux). - :arrow_down:16 - :star:1965\n\n*Interaction*\n\n* [gosx-notifier](https://github.com/deckarep/gosx-notifier) - OSX Desktop Notifications library for Go. - :arrow_down:37 - :star:310\n* [robotgo](https://github.com/go-vgo/robotgo) - Go Native cross-platform GUI system automation. Control the mouse, keyboard and other. - :arrow_down:31 - :star:255\n* [systray](https://github.com/getlantern/systray) - Cross platform Go library to place an icon and menu in the notification area. - :arrow_down:28 - :star:107\n* [trayhost](https://github.com/shurcooL/trayhost) - Cross-platform Go library to place an icon in the host operating system's taskbar. - :arrow_down:2 - :star:66\n\n\n## Hardware\n\n*Libraries, tools, and tutorials for interacting with hardware.*\n\nSee [go-hardware](https://github.com/rakyll/go-hardware) for a comprehensive list.\n\n## Images\n\n*Libraries for manipulating images.*\n\n* [bild](https://github.com/anthonynsimon/bild) - Collection of image processing algorithms in pure Go.\n* [bimg](https://github.com/h2non/bimg) - Small package for fast and efficient image processing using libvips. - :arrow_down:4 - :star:185\n* [cameron](https://github.com/aofei/cameron) - An avatar generator for Go.\n* [geopattern](https://github.com/pravj/geopattern) - Create beautiful generative image patterns from a string. - :arrow_down:12 - :star:867\n* [gg](https://github.com/fogleman/gg) - 2D rendering in pure Go. - :arrow_down:121 - :star:665\n* [gift](https://github.com/disintegration/gift) - Package of image processing filters. - :arrow_down:102 - :star:813\n* [go-cairo](https://github.com/ungerik/go-cairo) - Go binding for the cairo graphics library. - :arrow_down:33 - :star:54\n* [go-gd](https://github.com/bolknote/go-gd) - Go binding for GD library. - :arrow_down:11 - :star:39\n* [go-nude](https://github.com/koyachi/go-nude) - Nudity detection with Go. - :arrow_down:6 - :star:188\n* [go-opencv](https://github.com/lazywei/go-opencv) - Go bindings for OpenCV. - :arrow_down:0 - :star:443\n* [go-webcolors](https://github.com/jyotiska/go-webcolors) - Port of webcolors library from Python to Go. - :arrow_down:9 - :star:18\n* [gocv](https://github.com/hybridgroup/gocv) - Go package for computer vision using OpenCV 3.3+.\n* [goimagehash](https://github.com/corona10/goimagehash) - Go Perceptual image hashing package. - :arrow_down:1 - :star:93\n* [govatar](https://github.com/o1egl/govatar) - Library and CMD tool for generating funny avatars. - :arrow_down:3 - :star:10\n* [image2ascii](https://github.com/qeesung/image2ascii) - Convert image to ASCII.\n* [imagick](https://github.com/gographics/imagick) - Go binding to ImageMagick's MagickWand C API.\n* [imaginary](https://github.com/h2non/imaginary) - Fast and simple HTTP microservice for image resizing. - :arrow_down:0 - :star:820\n* [imaging](https://github.com/disintegration/imaging) - Simple Go image processing package. - :arrow_down:494 - :star:875\n* [img](https://github.com/hawx/img) - Selection of image manipulation tools. - :arrow_down:0 - :star:80\n* [ln](https://github.com/fogleman/ln) - 3D line art rendering in Go.\n* [mergi](https://github.com/noelyahan/mergi) - Tool \u0026 Go library for image manipulation (Merge, Crop, Resize, Watermark, Animate).\n* [mort](https://github.com/aldor007/mort) - Storage and image processing server written in Go.\n* [mpo](https://github.com/donatj/mpo) - Decoder and conversion tool for MPO 3D Photos. - :arrow_down:1 - :star:3\n* [picfit](https://github.com/thoas/picfit) - An image resizing server written in Go. - :arrow_down:0 - :star:518\n* [pt](https://github.com/fogleman/pt) - Path tracing engine written in Go. - :arrow_down:0 - :star:952\n* [resize](https://github.com/nfnt/resize) - Image resizing for Go with common interpolation methods. - :arrow_down:956 - :star:1150\n* [rez](https://github.com/bamiaux/rez) - Image resizing in pure Go and SIMD. - :arrow_down:16 - :star:119\n* [smartcrop](https://github.com/muesli/smartcrop) - Finds good crops for arbitrary images and crop sizes. - :arrow_down:15 - :star:304\n* [steganography](https://github.com/auyer/steganography) - Pure Go Library for LSB steganography. - :arrow_down:1 - :star:10\n* [stegify](https://github.com/DimitarPetrov/stegify) - Go tool for LSB steganography, capable of hiding any file within an image.\n* [svgo](https://github.com/ajstarks/svgo) - Go Language Library for SVG generation. - :arrow_down:393 - :star:766\n* [tga](https://github.com/ftrvxmtrx/tga) - Package tga is a TARGA image format decoder/encoder. - :arrow_down:4 - :star:13\n\n## IoT (Internet of Things)\n\n*Libraries for programming devices of the IoT.*\n\n* [connectordb](https://github.com/connectordb/connectordb) - Open-Source Platform for Quantified Self \u0026 IoT.\n* [devices](https://github.com/goiot/devices) - Suite of libraries for IoT devices, experimental for x/exp/io.\n* [eywa](https://github.com/xcodersun/eywa) - Project Eywa is essentially a connection manager that keeps track of connected devices.\n* [flogo](https://github.com/tibcosoftware/flogo) - Project Flogo is an Open Source Framework for IoT Edge Apps \u0026 Integration.\n* [gatt](https://github.com/paypal/gatt) - Gatt is a Go package for building Bluetooth Low Energy peripherals. - :arrow_down:70 - :star:383\n* [gobot](https://github.com/hybridgroup/gobot/) - Gobot is a framework for robotics, physical computing, and the Internet of Things.\n* [huego](https://github.com/amimof/huego) - An extensive Philips Hue client library for Go. - :arrow_down:0 - :star:7\n* [iot](https://github.com/vaelen/iot/) - IoT is a simple framework for implementing a Google IoT Core device.\n* [mainflux](https://github.com/Mainflux/mainflux) - Industrial IoT Messaging and Device Management Server.\n* [periph](https://periph.io/) - Peripherals I/O to interface with low-level board facilities.\n* [sensorbee](https://github.com/sensorbee/sensorbee) - Lightweight stream processing engine for IoT.\n\n## Job Scheduler\n\n*Libraries for scheduling jobs.*\n\n* [clockwerk](http://github.com/onatm/clockwerk) - Go package to schedule periodic jobs using a simple, fluent syntax. - :arrow_down:0 - :star:44\n* [clockwork](https://github.com/whiteShtef/clockwork) - Simple and intuitive job scheduling library in Go. - :arrow_down:1 - :star:32\n* [go-cron](https://github.com/rk/go-cron) - Simple Cron library for go that can execute closures or functions at varying intervals, from once a second to once a year on a specific date and time. Primarily for web applications and long running daemons. - :arrow_down:4 - :star:123\n* [gron](https://github.com/roylee0704/gron) - Define time-based tasks using a simple Go API and Gron’s scheduler will run them accordingly. - :arrow_down:7 - :star:442\n* [JobRunner](https://github.com/bamzi/jobrunner) - Smart and featureful cron job scheduler with job queuing and live monitoring built in. - :arrow_down:21 - :star:296\n* [jobs](https://github.com/albrow/jobs) - Persistent and flexible background jobs library. - :arrow_down:9 - :star:353\n* [leprechaun](https://github.com/kilgaloon/leprechaun) - Job scheduler that supports webhooks, crons and classic scheduling.\n* [scheduler](https://github.com/carlescere/scheduler) - Cronjobs scheduling made easy. - :arrow_down:26 - :star:103\n\n## JSON\n\n*Libraries for working with JSON.*\n\n* [gjo](https://github.com/skanehira/gjo) - Small utility to create JSON objects.\n* [GJSON](https://github.com/tidwall/gjson) - Get a JSON value with one line of code. - :arrow_down:184 - :star:665\n* [go-respond](https://github.com/nicklaw5/go-respond) - Go package for handling common HTTP JSON responses. - :arrow_down:0 - :star:8\n* [gojq](https://github.com/elgs/gojq) - JSON query in Golang. - :arrow_down:18 - :star:44\n* [gojson](https://github.com/ChimeraCoder/gojson) - Automatically generate Go (golang) struct definitions from example JSON. - :arrow_down:18 - :star:1132\n* [JayDiff](https://github.com/yazgazan/jaydiff) - JSON diff utility written in Go. - :arrow_down:0 - :star:12\n* [JSON-to-Go](https://mholt.github.io/json-to-go/) - Convert JSON to Go struct.\n* [jsonapi-errors](https://github.com/AmuzaTkts/jsonapi-errors) - Go bindings based on the JSON API errors reference. - :arrow_down:0 - :star:0\n* [jsonf](https://github.com/miolini/jsonf) - Console tool for highlighted formatting and struct query fetching JSON. - :arrow_down:0 - :star:29\n* [jsongo](https://github.com/ricardolonga/jsongo) - Fluent API to make it easier to create Json objects. - :arrow_down:0 - :star:51\n* [jsonhal](https://github.com/RichardKnop/jsonhal) - Simple Go package to make custom structs marshal into HAL compatible JSON responses. - :arrow_down:17 - :star:1\n* [kazaam](https://github.com/Qntfy/kazaam) - API for arbitrary transformation of JSON documents.\n* [mp](https://github.com/sanbornm/mp) - Simple cli email parser. It currently takes stdin and outputs JSON. - :arrow_down:0 - :star:14\n\n## Logging\n\n*Libraries for generating and working with log files.*\n\n* [distillog](https://github.com/amoghe/distillog) - distilled levelled logging (think of it as stdlib + log levels). - :arrow_down:12 - :star:0\n* [glg](https://github.com/kpango/glg) - glg is simple and fast leveled logging library for Go. - :arrow_down:36 - :star:13\n* [glo](https://github.com/lajosbencz/glo) - PHP Monolog inspired logging facility with identical severity levels.\n* [glog](https://github.com/golang/glog) - Leveled execution logs for Go. - :arrow_down:55481 - :star:1073\n* [go-cronowriter](https://github.com/utahta/go-cronowriter) - Simple writer that rotate log files automatically based on current date and time, like cronolog. - :arrow_down:0 - :star:9\n* [go-log](https://github.com/subchen/go-log) - Simple and configurable Logging in Go, with level, formatters and writers. - :arrow_down:3 - :star:4\n* [go-log](https://github.com/siddontang/go-log) - Log lib supports level and multi handlers.\n* [go-log](https://github.com/ian-kent/go-log) - Log4j implementation in Go. - :arrow_down:0 - :star:19\n* [go-logger](https://github.com/apsdehal/go-logger) - Simple logger of Go Programs, with level handlers. - :arrow_down:17 - :star:159\n* [gologger](https://github.com/sadlil/gologger) - Simple easy to use log lib for go, logs in Colored Console, Simple Console, File or Elasticsearch. - :arrow_down:0 - :star:20\n* [gomol](https://github.com/aphistic/gomol) - Multiple-output, structured logging for Go with extensible logging outputs. - :arrow_down:12 - :star:2\n* [gone/log](https://github.com/One-com/gone/tree/master/log) - Fast, extendable, full-featured, std-lib source compatible log library.\n* [journald](https://github.com/ssgreg/journald) - Go implementation of systemd Journal's native API for logging. - :arrow_down:1 - :star:5\n* [log](https://github.com/apex/log) - Structured logging package for Go. - :arrow_down:971 - :star:303\n* [log](https://github.com/go-playground/log) - Simple, configurable and scalable Structured Logging for Go. - :arrow_down:93 - :star:193\n* [log](https://github.com/teris-io/log) - Structured log interface for Go cleanly separates logging facade from its implementation. - :arrow_down:3 - :star:17\n* [log-voyage](https://github.com/firstrow/logvoyage) - Full-featured logging saas written in golang. - :arrow_down:0 - :star:61\n* [log15](https://github.com/inconshreveable/log15) - Simple, powerful logging for Go. - :arrow_down:347 - :star:506\n* [logdump](https://github.com/ewwwwwqm/logdump) - Package for multi-level logging. - :arrow_down:0 - :star:5\n* [logex](https://github.com/chzyer/logex) - Golang log lib, supports tracking and level, wrap by standard log lib. - :arrow_down:26 - :star:26\n* [logger](https://github.com/azer/logger) - Minimalistic logging library for Go. - :arrow_down:30 - :star:68\n* [logmatic](https://github.com/borderstech/logmatic) - Colorized logger for Golang with dynamic log level configuration.\n* [logo](https://github.com/mbndr/logo) - Golang logger to different configurable writers. - :arrow_down:3 - :star:2\n* [logrus](https://github.com/Sirupsen/logrus) - Structured logger for Go. - :arrow_down:50167 - :star:3335\n* [logrusly](https://github.com/sebest/logrusly) - [logrus](https://github.com/sirupsen/logrus) plug-in to send errors to a [Loggly](https://www.loggly.com/). - :arrow_down:15 - :star:13\n* [logutils](https://github.com/hashicorp/logutils) - Utilities for slightly better logging in Go (Golang) extending the standard logger. - :arrow_down:805 - :star:139\n* [logxi](https://github.com/mgutz/logxi) - 12-factor app logger that is fast and makes you happy. - :arrow_down:14 - :star:219\n* [lumberjack](https://github.com/natefinch/lumberjack) - Simple rolling logger, implements io.WriteCloser. - :arrow_down:40 - :star:343\n* [mlog](https://github.com/jbrodriguez/mlog) - Simple logging module for go, with 5 levels, an optional rotating logfile feature and stdout/stderr output. - :arrow_down:9 - :star:5\n* [onelog](https://github.com/francoispqt/onelog) - Onelog is a dead simple but very efficient JSON logger. It is the fastest JSON logger out there in all scenario. Also, it is one of the logger with the lowest allocation. - :arrow_down:3 - :star:292\n* [ozzo-log](https://github.com/go-ozzo/ozzo-log) - High performance logging supporting log severity, categorization, and filtering. Can send filtered log messages to various targets (e.g. console, network, mail). - :arrow_down:1 - :star:59\n* [seelog](https://github.com/cihub/seelog) - Logging functionality with flexible dispatching, filtering, and formatting. - :arrow_down:1487 - :star:732\n* [spew](https://github.com/davecgh/go-spew) - Implements a deep pretty printer for Go data structures to aid in debugging.\n* [stdlog](https://github.com/alexcesaro/log) - Stdlog is an object-oriented library providing leveled logging. It is very useful for cron jobs. - :arrow_down:94 - :star:37\n* [tail](https://github.com/hpcloud/tail) - Go package striving to emulate the features of the BSD tail program. - :arrow_down:204 - :star:595\n* [xlog](https://github.com/xfxdev/xlog) - Plugin architecture and flexible log system for Go, with level ctrl, multiple log target and custom log format. - :arrow_down:4 - :star:0\n* [xlog](https://github.com/rs/xlog) - Structured logger for `net/context` aware HTTP handlers with flexible dispatching. - :arrow_down:63 - :star:92\n* [zap](https://github.com/uber-go/zap) - Fast, structured, leveled logging in Go. - :arrow_down:258 - :star:1149\n* [zerolog](https://github.com/rs/zerolog) - Zero-allocation JSON logger. - :arrow_down:136 - :star:1121\n\n## Machine Learning\n\n*Libraries for Machine Learning.*\n\n* [bayesian](https://github.com/jbrukh/bayesian) - Naive Bayesian Classification for Golang. - :arrow_down:35 - :star:367\n* [CloudForest](https://github.com/ryanbressler/CloudForest) - Fast, flexible, multi-threaded ensembles of decision trees for machine learning in pure Go. - :arrow_down:53 - :star:388\n* [eaopt](https://github.com/MaxHalford/eaopt) - An evolutionary optimization library. - :arrow_down:0 - :star:568\n* [evoli](https://github.com/khezen/evoli) - Genetic Algorithm and Particle Swarm Optimization library. - :arrow_down:0 - :star:3\n* [fonet](https://github.com/Fontinalis/fonet) - A Deep Neural Network library written in Go. - :arrow_down:0 - :star:14\n* [go-cluster](https://github.com/e-XpertSolutions/go-cluster) - Go implementation of the k-modes and k-prototypes clustering algorithms.\n* [go-deep](https://github.com/patrikeh/go-deep) - A feature-rich neural network library in Go. - :arrow_down:2 - :star:171\n* [go-fann](https://github.com/white-pony/go-fann) - Go bindings for Fast Artificial Neural Networks(FANN) library. - :arrow_down:7 - :star:75\n* [go-galib](https://github.com/thoj/go-galib) - Genetic Algorithms library written in Go / golang. - :arrow_down:15 - :star:130\n* [go-pr](https://github.com/daviddengcn/go-pr) - Pattern recognition package in Go lang. - :arrow_down:0 - :star:42\n* [gobrain](https://github.com/goml/gobrain) - Neural Networks written in go. - :arrow_down:4 - :star:115\n* [godist](https://github.com/e-dard/godist) - Various probability distributions, and associated methods. - :arrow_down:0 - :star:11\n* [goga](https://github.com/tomcraven/goga) - Genetic algorithm library for Go. - :arrow_down:2 - :star:43\n* [GoLearn](https://github.com/sjwhitworth/golearn) - General Machine Learning library for Go. - :arrow_down:0 - :star:3201\n* [golinear](https://github.com/danieldk/golinear) - liblinear bindings for Go. - :arrow_down:5 - :star:28\n* [GoMind](https://github.com/surenderthakran/gomind) - A simplistic Neural Network Library in Go. - :arrow_down:0 - :star:0\n* [goml](https://github.com/cdipaolo/goml) - On-line Machine Learning in Go.\n* [goRecommend](https://github.com/timkaye11/goRecommend) - Recommendation Algorithms library written in Go.\n* [gorgonia](https://github.com/chewxy/gorgonia) - graph-based computational library like Theano for Go that provides primitives for building various machine learning and neural network algorithms. - :arrow_down:3 - :star:679\n* [gorse](https://github.com/zhenghaoz/gorse) - A High Performance Recommender System Package based on Collaborative Filtering for Go.\n* [goscore](https://github.com/asafschers/goscore) - Go Scoring API for PMML. - :arrow_down:0 - :star:13\n* [gosseract](https://github.com/otiai10/gosseract) - Go package for OCR (Optical Character Recognition), by using Tesseract C++ library. - :arrow_down:13 - :star:196\n* [libsvm](https://github.com/datastream/libsvm) - libsvm golang version derived work based on LIBSVM 3.14. - :arrow_down:0 - :star:43\n* [mlgo](https://github.com/NullHypothesis/mlgo) - This project aims to provide minimalistic machine learning algorithms in Go. - :arrow_down:1 - :star:1\n* [neat](https://github.com/jinyeom/neat) - Plug-and-play, parallel Go framework for NeuroEvolution of Augmenting Topologies (NEAT). - :arrow_down:0 - :star:39\n* [neural-go](https://github.com/schuyler/neural-go) - Multilayer perceptron network implemented in Go, with training via backpropagation.\n* [probab](https://github.com/ThePaw/probab) - Probability distribution functions. Bayesian inference. Written in pure Go. - :arrow_down:0 - :star:2\n* [regommend](https://github.com/muesli/regommend) - Recommendation \u0026 collaborative filtering engine. - :arrow_down:6 - :star:122\n* [shield](https://github.com/eaigner/shield) - Bayesian text classifier with flexible tokenizers and storage backends for Go. - :arrow_down:1 - :star:83\n* [tfgo](https://github.com/galeone/tfgo) - Easy to use Tensorflow bindings: simplifies the usage of the official Tensorflow Go bindings. Define computational graphs in Go, load and execute models trained in Python. - :arrow_down:2 - :star:848\n* [Varis](https://github.com/Xamber/Varis) - Golang Neural Network. - :arrow_down:0 - :star:10\n\n## Messaging\n\n*Libraries that implement messaging systems.*\n\n* [APNs2](https://github.com/sideshow/apns2) - HTTP/2 Apple Push Notification provider for Go — Send push notifications to iOS, tvOS, Safari and OSX apps. - :arrow_down:63 - :star:1281\n* [Benthos](https://github.com/Jeffail/benthos) - A message streaming bridge between a range of protocols.\n* [Centrifugo](https://github.com/centrifugal/centrifugo) - Real-time messaging (Websockets or SockJS) server in Go. - :arrow_down:0 - :star:1222\n* [dbus](https://github.com/godbus/dbus) - Native Go bindings for D-Bus. - :arrow_down:1045 - :star:99\n* [drone-line](https://github.com/appleboy/drone-line) - Sending [Line](https://at.line.me/en) notifications using a binary, docker or Drone CI. - :arrow_down:0 - :star:48\n* [emitter](https://github.com/olebedev/emitter) - Emits events using Go way, with wildcard, predicates, cancellation possibilities and many other good wins. - :arrow_down:4 - :star:73\n* [event](https://github.com/agoalofalife/event) - Implementation of the pattern observer. - :arrow_down:1 - :star:12\n* [EventBus](https://github.com/asaskevich/EventBus) - The lightweight event bus with async compatibility. - :arrow_down:28 - :star:168\n* [gaurun-client](https://github.com/osamingo/gaurun-client) - Gaurun Client written in Go. - :arrow_down:0 - :star:6\n* [Glue](https://github.com/desertbit/glue) - Robust Go and Javascript Socket Library (Alternative to Socket.io). - :arrow_down:18 - :star:186\n* [go-notify](https://github.com/TheCreeper/go-notify) - Native implementation of the freedesktop notification spec. - :arrow_down:7 - :star:13\n* [go-nsq](https://github.com/nsqio/go-nsq) - the official Go package for NSQ. - :arrow_down:513 - :star:642\n* [go-socket.io](https://github.com/googollee/go-socket.io) - socket.io library for golang, a realtime application framework. - :arrow_down:237 - :star:1397\n* [go-vitotrol](https://github.com/maxatome/go-vitotrol) - Client library to Viessmann Vitotrol web service. - :arrow_down:0 - :star:0\n* [Gollum](https://github.com/trivago/gollum) - A n:m multiplexer that gathers messages from different sources and broadcasts them to a set of destinations. - :arrow_down:0 - :star:468\n* [golongpoll](https://github.com/jcuga/golongpoll) - HTTP longpoll server library that makes web pub-sub simple. - :arrow_down:7 - :star:296\n* [goose](https://github.com/ian-kent/goose) - Server Sent Events in Go. - :arrow_down:6 - :star:23\n* [gopush-cluster](https://github.com/Terry-Mao/gopush-cluster) - gopush-cluster is a go push server cluster.\n* [gorush](https://github.com/appleboy/gorush) - Push notification server using [APNs2](https://github.com/sideshow/apns2) and google [GCM](https://github.com/google/go-gcm). - :arrow_down:0 - :star:277\n* [guble](https://github.com/smancke/guble) - Messaging server using push notifications (Google Firebase Cloud Messaging, Apple Push Notification services, SMS) as well as websockets, a REST API, featuring distributed operation and message-persistence. - :arrow_down:0 - :star:34\n* [hub](https://github.com/leandro-lugaresi/hub) - A Message/Event Hub for Go applications, using publish/subscribe pattern with support for alias like rabbitMQ exchanges. - :arrow_down:5 - :star:4\n* [jazz](https://github.com/socifi/jazz) - A simple RabbitMQ abstraction layer for queue administration and publishing and consuming of messages.\n* [machinery](https://github.com/RichardKnop/machinery) - Asynchronous task queue/job queue based on distributed message passing. - :arrow_down:0 - :star:701\n* [mangos](https://github.com/go-mangos/mangos) - Pure go implementation of the Nanomsg (\"Scalable Protocols\") with transport interoperability. - :arrow_down:191 - :star:942\n* [melody](https://github.com/olahol/melody) - Minimalist framework for dealing with websocket sessions, includes broadcasting and automatic ping/pong handling. - :arrow_down:34 - :star:478\n* [Mercure](https://github.com/dunglas/mercure) - Server and library to dispatch server-sent updates using the Mercure protocol (built on top of Server-Sent Events).\n* [messagebus](https://github.com/vardius/message-bus) - messagebus is a Go simple async message bus, perfect for using as event bus when doing event sourcing, CQRS, DDD. - :arrow_down:4 - :star:15\n* [NATS Go Client](https://github.com/nats-io/nats) - Lightweight and high performance publish-subscribe and distributed queueing messaging system - this is the Go library. - :arrow_down:447 - :star:934\n* [nsq-event-bus](https://github.com/rafaeljesus/nsq-event-bus) - A tiny wrapper around NSQ topic and channel. - :arrow_down:0 - :star:30\n* [oplog](https://github.com/dailymotion/oplog) - Generic oplog/replication system for REST APIs. - :arrow_down:0 - :star:74\n* [pubsub](https://github.com/tuxychandru/pubsub) - Simple pubsub package for go. - :arrow_down:17 - :star:106\n* [rabbus](https://github.com/rafaeljesus/rabbus) - A tiny wrapper over amqp exchanges and queues. - :arrow_down:0 - :star:39\n* [rabtap](https://github.com/jandelgado/rabtap) - RabbitMQ swiss army knife cli app.\n* [RapidMQ](https://github.com/sybrexsys/RapidMQ) - RapidMQ is a lightweight and reliable library for managing of the local messages queue.\n* [rmqconn](https://github.com/sbabiv/rmqconn) - RabbitMQ Reconnection. Wrapper over amqp.Connection and amqp.Dial. Allowing to do a reconnection when the connection is broken before forcing the call to the Close () method to be closed.\n* [sarama](https://github.com/Shopify/sarama) - Go library for Apache Kafka. - :arrow_down:1310 - :star:1282\n* [Uniqush-Push](https://github.com/uniqush/uniqush-push) - Redis backed unified push service for server-side notifications to mobile devices. - :arrow_down:0 - :star:862\n* [zmq4](https://github.com/pebbe/zmq4) - Go interface to ZeroMQ version 4. Also available for [version 3](https://github.com/pebbe/zmq3) and [version 2](https://github.com/pebbe/zmq2). - :arrow_down:433 - :star:415\n\n## Microsoft Office\n\n### Microsoft Excel\n*Libraries for working with Microsoft Excel.*\n\n* [excelize](https://github.com/360EntSecGroup-Skylar/excelize) - Golang library for reading and writing Microsoft Excel™ (XLSX) files. - :arrow_down:18 - :star:2098\n* [go-excel](https://github.com/szyhf/go-excel) - A simple and light reader to read a relate-db-like excel as a table. - :arrow_down:0 - :star:27\n* [goxlsxwriter](https://github.com/fterrag/goxlsxwriter) - Golang bind","projects_url":"https://awesome.ecosyste.ms/api/v1/lists/nouney%2Fawesome-go/projects"}