awesome-go
A curated list of awesome Go frameworks, libraries and software
130k stars
3k watching
12k forks
Language: Go
last commit: about 7 hours ago
Linked from 16 awesome lists
awesomeawesome-listgogolanggolang-libraryhacktoberfest
Awesome Go | |||
Your app, enterprise-ready. Start selling to enterprise customers with just a few lines of code. Add Single Sign-On (and more) in minutes instead of months. | |||
An open, source-available software licensing and distribution API. Securely license and distribute Go applications with a single API. Add auto updates with only a few lines of code. | |||
Awesome Go / Actor Model | |||
Ergo | 3,595 | 12 days ago | An actor-based Framework with network transparency for creating event-driven architecture in Golang. Inspired by Erlang |
Goakt | 171 | 14 days ago | Fast and Distributed Actor framework using protocol buffers as message for Golang |
Hollywood | 1,175 | about 2 months ago | Blazingly fast and light-weight Actor engine written in Golang |
ProtoActor | 5,050 | about 2 months ago | Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin |
Awesome Go / Artificial Intelligence | |||
chromem-go | 234 | about 1 month ago | Embeddable vector database for Go with Chroma-like interface and zero third-party dependencies. In-memory with optional persistence |
fun | The simplest but powerful way to use large language models (LLMs) in Go | ||
langchaingo | 4,392 | 29 days ago | LangChainGo is a framework for developing applications powered by language models |
LocalAI | 23,807 | 3 days ago | Open Source OpenAI alternative, self-host AI models |
Ollama | 91,834 | 10 days ago | Run large language models locally |
OllamaFarm | 27 | 27 days ago | Manage, load-balance, and failover packs of Ollamas |
Awesome Go / Audio and Music | |||
flac | 316 | 2 months ago | Native Go FLAC encoder/decoder with support for FLAC streams |
gaad | 126 | over 1 year ago | Native Go AAC bitstream parser |
GoAudio | 345 | 6 months ago | Native Go Audio Processing Library |
gosamplerate | 34 | 9 months ago | libsamplerate bindings for go |
id3v2 | 335 | 12 months ago | ID3 decoding and encoding library for Go |
malgo | 293 | 6 months ago | Mini audio library |
minimp3 | 125 | about 1 year ago | Lightweight MP3 decoder library |
Oto | 1,561 | 10 days ago | A low-level library to play sound on multiple platforms |
PortAudio | 698 | over 1 year ago | Go bindings for the PortAudio audio I/O library |
Awesome Go / Authentication and OAuth | |||
authboss | 3,827 | 3 months ago | 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 it, and start building your app without having to build an authentication system each time |
branca | 84 | about 1 month ago | branca token for Golang 1.15+ |
casbin | 17,589 | 26 days ago | Authorization library that supports access control models like ACL, RBAC, and ABAC |
cookiestxt | 16 | 7 months ago | provides a parser of cookies.txt file format |
go-guardian | 550 | 3 months ago | Go-Guardian is a golang library that provides a simple, clean, and idiomatic way to create powerful modern API and web authentication that supports LDAP, Basic, Bearer token, and Certificate based authentication |
go-jose | 318 | about 1 month ago | Fairly complete implementation of the JOSE working group's JSON Web Token, JSON Web Signatures, and JSON Web Encryption specs |
gologin | 1,816 | 17 days ago | chainable handlers for login with OAuth1 and OAuth2 authentication providers |
gorbac | 1,599 | 3 months ago | provides a lightweight role-based access control (RBAC) implementation in Golang |
gosession | 253 | 2 months ago | This is quick session for net/http in GoLang. This package is perhaps the best implementation of the session mechanism, or at least it tries to become one |
goth | 5,472 | about 2 months ago | provides a simple, clean, and idiomatic way to use OAuth and OAuth2. Handles multiple providers out of the box |
jeff | 265 | over 1 year ago | Simple, flexible, secure, and idiomatic web session management with pluggable backends |
jwt | 354 | over 1 year ago | Lightweight JSON Web Token (JWT) library |
jwt | 664 | 3 months ago | Safe, simple, and fast JSON Web Tokens for Go |
jwt-auth | 231 | about 3 years ago | JWT middleware for Golang http servers with many configuration options |
jwt-go | 7,064 | about 1 month ago | A full featured implementation of JSON Web Tokens (JWT). This library supports the parsing and verification as well as the generation and signing of JWTs |
jwx | 1,923 | 9 days ago | Go module implementing various JWx (JWA/JWE/JWK/JWS/JWT, otherwise known as JOSE) technologies |
keto | 4,800 | 11 days ago | Open Source (Go) implementation of "Zanzibar: Google's Consistent, Global Authorization System". Ships gRPC, REST APIs, newSQL, and an easy and granular permission language. Supports ACL, RBAC, and other access models |
loginsrv | 1,919 | over 3 years ago | JWT login microservice with pluggable backends such as OAuth2 (Github), htpasswd, osiam |
oauth2 | 5,343 | about 1 month ago | Successor of goauth2. Generic OAuth 2.0 package that comes with JWT, Google APIs, Compute Engine, and App Engine support |
oidc | 1,361 | 4 days ago | Easy to use OpenID Connect client and server library written for Go and certified by the OpenID Foundation |
openfga | 2,779 | 10 days ago | Implementation of fine-grained authorization based on the "Zanzibar: Google's Consistent, Global Authorization System" paper. Backed by |
osin | 1,907 | 2 months ago | Golang OAuth2 server library |
otpgen | 136 | 9 months ago | Library to generate TOTP/HOTP codes |
otpgo | 67 | over 3 years ago | Time-Based One-Time Password (TOTP) and HMAC-Based One-Time Password (HOTP) library for Go |
paseto | 851 | over 1 year ago | Golang implementation of Platform-Agnostic Security Tokens (PASETO) |
permissions2 | 513 | about 1 month ago | Library for keeping track of users, login states, and permissions. Uses secure cookies and bcrypt |
scope | 38 | over 3 years ago | Easily Manage OAuth2 Scopes In Go |
scs | 2,115 | 3 months ago | Session Manager for HTTP servers |
securecookie | 79 | over 1 year ago | Efficient secure cookie encoding/decoding |
session | 117 | about 2 months ago | Go session management for web servers (including support for Google App Engine - GAE) |
sessions | 78 | about 1 year ago | Dead simple, highly performant, highly customizable sessions service for go http servers |
sessionup | 124 | over 2 years ago | Simple, yet effective HTTP session management and identification package |
sjwt | 118 | 8 months ago | Simple jwt generator and parser |
Awesome Go / Blockchain | |||
cometbft | 626 | 10 days ago | A distributed, Byzantine fault-tolerant, deterministic state machine replication engine. It is a fork of Tendermint Core and implements the Tendermint consensus algorithm |
cosmos-sdk | 6,222 | 9 days ago | A Framework for Building Public Blockchains in the Cosmos Ecosystem |
gno | 880 | 10 days ago | A comprehensive smart contract suite built with Golang and Gnolang, a deterministic, purpose-built Go variant for blockchains |
go-ethereum | 47,289 | 10 days ago | Official Go implementation of the Ethereum protocol |
gosemble | 11 | about 1 month ago | A Go-based framework for building Polkadot/Substrate-compatible runtimes |
gossamer | 427 | 10 days ago | A Go implementation of the Polkadot Host |
kubo | 16,096 | 4 days ago | A blockchain framework implemented in Go. It provides content-addressable storage which can be used for decentralized storage in DApps. It is based on the IPFS protocol |
lnd | 7,646 | 10 days ago | A complete implementation of a Lighting Network node |
solana-go | 824 | about 2 months ago | Go library to interface with Solana JSON RPC and WebSocket interfaces |
tendermint | 5,705 | 12 days ago | 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 |
Awesome Go / Bot Building | |||
bot | 675 | 19 days ago | Zero-dependencies Telegram Bot library with additional UI components |
echotron | 363 | 20 days ago | An elegant and concurrent library for Telegram Bots in Go |
ephemeral-roles | 90 | 5 months ago | A Discord bot for managing ephemeral roles based upon voice channel member presence |
go-chat-bot | 825 | 7 months ago | IRC, Slack & Telegram bot written in Go |
go-joe | A general-purpose bot library inspired by Hubot but written in Go | ||
go-sarah | 261 | over 1 year ago | Framework to build a bot for desired chat services including LINE, Slack, Gitter, and more |
go-tg | 95 | 4 months ago | Generated from official docs Go client library for accessing Telegram Bot API, with batteries for building complex bots included |
go-tgbot | 121 | over 6 years ago | Pure Golang Telegram Bot API wrapper, generated from swagger file, session-based router, and middleware |
go-twitch-irc | 356 | 13 days ago | Library to write bots for twitch.tv chat |
Golang CryptoTrading Bot | 1,065 | 9 months ago | A golang implementation of a console-based trading bot for cryptocurrency exchanges |
govkbot | 50 | 12 months ago | Simple Go bot library |
hanu | 155 | over 1 year ago | Framework for writing Slack bots |
Kelp | 1,096 | 11 months ago | official trading and market-making bot for the DEX. Works out-of-the-box, written in Golang, compatible with centralized exchanges and custom trading strategies |
larry | 160 | 8 months ago | Larry 🐦 is a really simple Twitter bot generator that tweets random repositories from Github built in Go |
margelet | 85 | about 2 years ago | Framework for building Telegram bots |
micha | 30 | about 2 months ago | Go Library for Telegram bot api |
olivia | 3,676 | 10 months ago | A chatbot built with an artificial neural network |
slack-bot | 179 | 12 days ago | Ready to use Slack Bot for lazy developers: Custom commands, Jenkins, Jira, Bitbucket, Github |
slacker | 40 | about 2 months ago | Easy to use framework to create Slack bots |
slackscot | 56 | over 1 year ago | Another framework for building Slack bots |
tbot | 355 | 10 months ago | Telegram bot server with API similar to net/http |
telebot | 3,948 | 19 days ago | Telegram bot framework is written in Go |
telego | 524 | 12 days ago | Telegram Bot API library for Golang with full one-to-one API implementation |
telegram-bot-api | 5,745 | about 2 months ago | Simple and clean Telegram bot client |
teleterm | 37 | over 1 year ago | Telegram Bot Exec Terminal Command |
Tenyks | 178 | over 1 year ago | Service oriented IRC bot using Redis and JSON for messaging |
wayback | 1,767 | 11 days ago | A bot for Telegram, Mastodon, Slack, and other messaging platforms archives webpages |
Awesome Go / Build Automation | |||
1build | 226 | over 1 year ago | Command line tool to frictionlessly manage project-specific commands |
air | 17,603 | 17 days ago | Air - Live reload for Go apps |
anko | 36 | over 3 years ago | Simple application watcher for multiple programming languages |
gaper | 80 | about 1 year ago | Builds and restarts a Go project when it crashes or some watched file changes |
gilbert | Build system and task runner for Go projects | ||
gob | 9 | about 2 months ago | / like build tool for Go projects |
goyek | 559 | 12 days ago | Create build pipelines in Go |
mage | 4,121 | 4 months ago | Mage is a make/rake-like build tool using Go |
mmake | 1,717 | over 1 year ago | Modern Make |
realize | 4,460 | over 3 years ago | Go build a system with file watchers and live to reload. Run, build and watch file changes with custom paths |
Task | 11,165 | 10 days ago | simple "Make" alternative |
taskctl | 293 | 5 months ago | Concurrent task runner |
xc | 1,163 | 26 days ago | Task runner with README.md defined tasks, executable markdown |
Awesome Go / Command Line / Advanced Console UIs | |||
asciigraph | 2,652 | 2 months ago | Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies |
aurora | 1,420 | about 2 years ago | ANSI terminal colors that support fmt.Printf/Sprintf |
box-cli-maker | 531 | about 2 months ago | Make Highly Customized Boxes for your CLI |
bubble-table | 444 | about 1 month ago | An interactive table component for bubbletea |
bubbles | 5,431 | 12 days ago | TUI components for bubbletea |
bubbletea | 27,171 | 15 days ago | Go framework to build terminal apps, based on The Elm Architecture |
cfmt | 103 | almost 6 years ago | Contextual fmt inspired by bootstrap color classes |
cfmt | 67 | over 3 years ago | Simple and convenient formatted stylized output fully compatible with fmt library |
chalk | 448 | about 5 years ago | Intuitive package for prettifying terminal/console output |
colourize | 27 | about 2 years ago | Go library for ANSI colour text in terminals |
crab-config-files-templating | 7 | about 2 years ago | Dynamic configuration file templating tool for kubernetes manifest or general configuration files |
ctc | 47 | over 1 year ago | The non-invasive cross-platform terminal color library does not need to modify the Print method |
go-ataman | 17 | almost 4 years ago | Go library for rendering ANSI colored text templates in terminals |
go-colorable | 762 | 9 months ago | Colorable writer for windows |
go-colortext | 214 | over 4 years ago | Go library for color output in terminals |
go-isatty | 827 | 2 months ago | isatty for golang |
go-palette | 17 | over 1 year ago | Go library that provides elegant and convenient style definitions using ANSI colors. Fully compatible & wraps the for nice terminal layouts |
go-prompt | 5,271 | 3 months ago | Library for building a powerful interactive prompt, inspired by |
gocui | 9,863 | about 1 month ago | Minimalist Go library aimed at creating Console User Interfaces |
gommon/color | 538 | 10 months ago | Style terminal text |
gookit/color | 1,500 | about 1 month ago | Terminal color rendering tool library, support 16 colors, 256 colors, RGB color rendering output, compatible with Windows |
lipgloss | 7,960 | 18 days ago | Declaratively define styles for color, format and layout in the terminal |
marker | 48 | about 1 year ago | Easiest way to match and mark strings for colorful terminal outputs |
mpb | 2,298 | about 2 months ago | Multi progress bar for terminal applications |
progressbar | 4,077 | 15 days ago | Basic thread-safe progress bar that works in every OS |
pterm | 4,774 | about 1 month ago | A library to beautify console output on every platform with many combinable components |
simpletable | 528 | over 3 years ago | Simple tables in a terminal with Go |
spinner | 2,332 | 4 months ago | Go package to easily provide a terminal spinner with options |
tabby | 355 | almost 4 years ago | A tiny library for super simple Golang tables |
table | 50 | over 1 year ago | Small library for terminal color based tables |
tabular | 75 | over 1 year ago | Print ASCII tables from command line utilities without the need to pass large sets of data to the API |
termbox-go | 4,667 | over 2 years ago | Termbox is a library for creating cross-platform text-based interfaces |
termdash | 2,702 | 18 days ago | Go terminal dashboard based on and inspired by |
termenv | 1,724 | about 1 month ago | Advanced ANSI style & color support for your terminal applications |
termui | 13,158 | 3 months ago | Go terminal dashboard based on and inspired by |
uilive | 1,692 | about 1 year ago | Library for updating terminal output in real time |
uiprogress | 2,098 | 8 months ago | Flexible library to render progress bars in terminal applications |
uitable | 735 | almost 2 years ago | Library to improve readability in terminal apps using tabular data |
yacspin | 438 | almost 3 years ago | Yet Another CLi Spinner package, for working with terminal spinners |
Awesome Go / Command Line / Standard CLI | |||
acmd | 115 | 6 months ago | Simple, useful, and opinionated CLI package in Go |
argparse | 605 | almost 2 years ago | Command line argument parser inspired by Python's argparse module |
argv | 41 | over 4 years ago | Go library to split command line string as arguments array using the bash syntax |
carapace | 319 | 20 days ago | Command argument completion generator for spf13/cobra |
carapace-bin | 861 | 11 days ago | Multi-shell multi-command argument completer |
carapace-spec | 17 | 19 days ago | Define simple completions using a spec file |
climax | 216 | about 4 years ago | Alternative CLI with "human face", in spirit of Go command |
clîr | 178 | 4 months ago | A Simple and Clear CLI library. Dependency free |
cmd | 41 | about 4 years ago | Extends the standard package to support sub commands and more in idiomatic way |
cmdr | 133 | 18 days ago | A POSIX/GNU style, getopt-like command-line UI Go library |
cobra | 37,780 | about 2 months ago | Commander for modern Go CLI interactions |
command-chain | 60 | over 1 year ago | A go library for configure and run command chains - such as pipelining in unix shells |
commandeer | 173 | about 2 years ago | Dev-friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags |
complete | 928 | about 1 year ago | Write bash completions in Go + Go command bash completion |
Dnote | 2,774 | 3 months ago | A simple command line notebook with multi-device sync |
elvish | 5,648 | 10 days ago | An expressive programming language and a versatile interactive shell |
env | 114 | 4 months ago | Tag-based environment configuration for structs |
flag | 131 | almost 4 years ago | Simple but powerful command line option parsing library for Go supporting subcommand |
flaggy | 856 | over 1 year ago | A robust and idiomatic flags package with excellent subcommand support |
flagvar | 43 | 16 days ago | A collection of flag argument types for Go's standard package |
go-andotp | 30 | over 1 year ago | A CLI program to encrypt/decrypt files. Can be used as a library as well |
go-arg | 2,000 | about 1 month ago | Struct-based argument parsing in Go |
go-commander | 35 | over 4 years ago | Go library to simplify CLI workflow |
go-flags | 2,567 | 3 months ago | go command line option parser |
go-getoptions | 55 | 11 days ago | Go option parser inspired by the flexibility of Perl’s GetOpt::Long |
gocmd | 66 | over 1 year ago | Go library for building command line applications |
hiboot cli | 180 | about 2 months ago | cli application framework with auto configuration and dependency injection |
job | 145 | over 4 years ago | JOB, make your short-term command as a long-term job |
kingpin | 3,486 | 13 days ago | Command line and flag parser supporting sub commands (superseded by ; see below) |
liner | 1,043 | over 1 year ago | Go readline-like library for command-line interfaces |
mcli | 30 | 6 months ago | A minimal but very powerful cli library for Go |
mitchellh/cli | 1,730 | 3 months ago | Go library for implementing command-line interfaces |
mkideal/cli | 730 | 8 months ago | Feature-rich and easy to use command-line package based on golang struct tags |
mow.cli | 871 | 7 months ago | Go library for building CLI applications with sophisticated flag and argument parsing and validation |
ops | 1,273 | 18 days ago | Unikernel Builder/Orchestrator |
pflag | 2,397 | 3 months ago | Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags |
readline | 87 | about 2 months ago | Shell library with modern and easy to use UI features |
sand | 26 | almost 6 years ago | Simple API for creating interpreters and so much more |
sflags | 150 | about 3 years ago | Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin, and other libraries |
strumt | 60 | about 2 months ago | Library to create prompt chain |
subcmd | 8 | 3 months ago | Another approach to parsing and running subcommands. Works alongside the standard package |
survey | 4,085 | 6 months ago | Build interactive and accessible prompts with full support for windows and posix terminals |
teris-io/cli | 129 | over 3 years ago | Simple and complete API for building command line interfaces in Go |
ts | 20 | over 5 years ago | Timestamp convert & compare tool |
ukautz/clif | 129 | over 5 years ago | Small command line interface framework |
urfave/cli | 22,226 | about 1 month ago | Simple, fast, and fun package for building command line apps in Go (formerly codegangsta/cli) |
version | 97 | about 1 year ago | Collects and displays CLI version information in multiple formats along with upgrade notice |
wlog | 66 | 5 months ago | Simple logging interface that supports cross-platform color and concurrency |
wmenu | 216 | 5 months ago | Easy to use menu structure for cli applications that prompt users to make choices |
Awesome Go / Configuration | |||
aconfig | 539 | 7 months ago | Simple, useful and opinionated config loader |
bcl | 19 | 2 months ago | BCL is a configuration language similar to HCL |
cleanenv | 1,618 | about 2 months ago | Minimalistic configuration reader (from files, ENV, and wherever you want) |
config | 336 | over 2 years ago | Cloud native application configuration. Bind ENV to structs in only two lines |
config | 49 | 11 months ago | configure your app using file, environment variables, or flags in two lines of code |
configuration | 108 | 6 months ago | Library for initializing configuration structs from env variables, files, flags and 'default' tag |
configure | 56 | over 5 years ago | Provides configuration through multiple sources, including JSON, flags and environment variables |
configuro | 94 | about 2 years ago | opinionated configuration loading & validation framework from ENV and Files focused towards 12-Factor compliant applications |
confiq | 34 | 6 months ago | Structured data format to config struct decoder library for Go - supporting multiple data formats |
confita | 495 | 7 months ago | Load configuration in cascade from multiple backends into a struct |
conflate | 32 | about 1 year ago | 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 |
env | 4,827 | about 2 months ago | Parse environment variables to Go structs (with defaults) |
env | 62 | about 2 months ago | A lightweight package for loading environment variables into structs |
env | 4 | 11 days ago | An environment utility package with support for unmarshaling into structs |
envconfig | 240 | almost 3 years ago | Read your configuration from environment variables |
envh | 99 | 7 months ago | Helpers to manage environment variables |
fig | 373 | 7 months ago | Tiny library for reading configuration from a file and from environment variables (with validation & defaults) |
genv | 38 | about 5 years ago | Read environment variables easily with dotenv support |
go-array | 19 | 6 months ago | A Go package that read or set data from map, slice or json |
go-aws-ssm | 58 | 6 months ago | Go package that fetches parameters from AWS System Manager - Parameter Store |
go-cfg | 42 | 2 months ago | The library provides a unified way to read configuration data into a structure from various sources, such as env, flags, and configuration files (.json, .yaml, .toml, .env) |
go-conf | 10 | almost 3 years ago | Simple library for application configuration based on annotated structs. It supports reading the configuration from environment variables, config files and command line parameters |
go-ini | 14 | about 2 months ago | A Go package that marshals and unmarshals INI-files |
go-ssm-config | 22 | about 1 year ago | Go utility for loading configuration parameters from AWS SSM (Parameter Store) |
go-up | 43 | over 4 years ago | A simple configuration library with recursive placeholders resolution and no magic |
GoCfg | 6 | 3 months ago | Config manager with Struct Tags based contracts, custom value providers, parsers, and documentation generation. Customizable yet simple |
goConfig | Parses a struct as input and populates the fields of this struct with parameters from command line, environment variables and configuration file | ||
godotenv | 8,228 | 4 months ago | Go port of Ruby's dotenv library (Loads environment variables from ) |
gofigure | 68 | about 5 years ago | Go application configuration made easy |
GoLobby/Config | 362 | almost 2 years ago | GoLobby Config is a lightweight yet powerful configuration manager for the Go programming language |
gone/jconf | 48 | over 3 years ago | Modular JSON configuration. Keep your config structs along with the code they configure and delegate parsing to submodules without sacrificing full config serialization |
gonfig | 9 | about 3 years ago | Tag-based configuration parser which loads values from different providers into typesafe struct |
gookit/config | 534 | 7 months ago | application config manage(load,get,set). support JSON, YAML, TOML, INI, HCL. multi file load, data override merge |
harvester | 131 | about 2 months ago | Harvester, an easy to use static and dynamic configuration package supporting seeding, env vars and Consul integration |
hjson | 330 | 6 months ago | Human JSON, a configuration file format for humans. Relaxed syntax, fewer mistakes, more comments |
hocon | 77 | about 1 month ago | Configuration library for working with the HOCON(a human-friendly JSON superset) format, supports features like environment variables, referencing other values, comments and multiple files |
ingo | 38 | over 7 years ago | Flags persisted in an ini-like config file |
ini | 3,449 | 5 months ago | Go package to read and write INI files |
ini | 15 | about 1 year ago | INI Parser & Write Library, Unmarshal to Struct, Marshal to Json, Write File, watch file |
joshbetz/config | 216 | almost 3 years ago | Small configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP |
kelseyhightower/envconfig | 5,023 | 3 months ago | Go library for managing configuration data from environment variables |
koanf | 2,702 | 10 days ago | Light weight, extensible library for reading config in Go applications. Built in support for JSON, TOML, YAML, env, command line |
konf | 227 | 12 days ago | The simplest API for reading/watching config from file, env, flag and clouds (e.g. AWS, Azure, GCP) |
konfig | 648 | almost 4 years ago | Composable, observable and performant config handling for Go for the distributed processing era |
kong | 2,088 | 20 days ago | Command-line parser with support for arbitrarily complex command-line structures and additional sources of configuration such as YAML, JSON, TOML, etc (successor to ) |
mini | 35 | almost 6 years ago | Golang package for parsing ini-style configuration files |
nasermirzaei89/env | 18 | 6 months ago | Simple useful package for read environment variables |
nfigure | 7 | about 1 month ago | Per-library struct-tag based configuration from command lines (Posix & Go-style); environment, JSON, YAML |
onion | 116 | over 1 year ago | Layer based configuration for Go, Supports JSON, TOML, YAML, properties, etcd, env, and encryption using PGP |
piper | 8 | almost 3 years ago | Viper wrapper with config inheritance and key generation |
sonic | 6,786 | 19 days ago | A blazingly fast JSON serializing & deserializing library |
store | 273 | about 1 year ago | Lightweight configuration manager for Go |
swap | 8 | almost 3 years ago | Instantiate/configure structs recursively, based on build environment. (YAML, TOML, JSON and env) |
typenv | 9 | over 1 year ago | Minimalistic, zero dependency, typed environment variables library |
uConfig | 70 | 6 months ago | Lightweight, zero-dependency, and extendable configuration management |
viper | 26,918 | 12 days ago | Go configuration with fangs |
xdg | 682 | about 1 month ago | Go implementation of the and |
xdg | 79 | almost 4 years ago | Cross platform package that follows the |
yamagiconf | 15 | about 1 month ago | The "safe subset" of YAML for Go configs |
Awesome Go / Continuous Integration | |||
abstruse | 936 | 8 months ago | Abstruse is a distributed CI platform |
Bencher | A suite of continuous benchmarking tools designed to catch performance regressions in CI | ||
CDS | 4,563 | 10 days ago | Enterprise-Grade CI/CD and DevOps Automation Open Source Platform |
dot | 18 | 2 months ago | A minimal, local first continuous integration system that uses Docker to run jobs concurrently in stages |
drone | 32,174 | about 24 hours ago | Drone is a Continuous Integration platform built on Docker, written in Go |
go-beautiful-html-coverage | 11 | 5 months ago | A GitHub Action to track code coverage in your pull requests, with a beautiful HTML preview, for free |
go-fuzz-action | 15 | 7 months ago | Use Go 1.18's built-in fuzz testing in GitHub Actions |
go-semver-release | 10 | 10 days ago | Automate the semantic versioning of Git repositories |
go-test-coverage | 83 | 10 days ago | Tool and GitHub action which reports issues when test coverage is below set threshold |
gomason | 65 | 3 months ago | Test, Build, Sign, and Publish your go binaries from a clean workspace |
gotestfmt | 506 | over 1 year ago | go test output for humans |
goveralls | 789 | over 1 year ago | Go integration for Coveralls.io continuous code coverage tracking system |
muffet | 2,495 | 18 days ago | Fast website link checker in Go, see |
overalls | 114 | almost 5 years ago | Multi-Package go project coverprofile for tools like goveralls |
roveralls | 20 | almost 7 years ago | Recursive coverage testing tool |
woodpecker | 4,179 | 2 days ago | Woodpecker is a community fork of the Drone CI system |
Awesome Go / CSS Preprocessors | |||
gcss | 496 | 7 months ago | Pure Go CSS Preprocessor |
go-libsass | 205 | 10 months ago | Go wrapper to the 100% Sass compatible libsass project |
Awesome Go / Data Integration Frameworks | |||
Benthos | 8,110 | 1 day ago | A message streaming bridge between a range of protocols |
CloudQuery | A high-performance ELT data integration framework with pluggable architecture | ||
omniparser | 931 | 3 months ago | A versatile ETL library that parses text input (CSV/txt/JSON/XML/EDI/X12/EDIFACT/etc) in streaming fashion and transforms data into JSON output using data-driven schema |
Awesome Go / Data Structures and Algorithms / Bit-packing and Compression | |||
bingo | 40 | 4 months ago | Fast, zero-allocation, lexicographical-order-preserving packing of native types to bytes |
binpacker | 220 | about 3 years ago | Binary packer and unpacker helps user build custom binary stream |
bit | 157 | almost 2 years ago | Golang set data structure with bonus bit-twiddling functions |
crunch | 96 | over 1 year ago | Go package implementing buffers for handling various datatypes easily |
go-ef | 31 | 4 months ago | A Go implementation of the Elias-Fano encoding |
roaring | 2,475 | 25 days ago | Go package implementing compressed bitsets |
Awesome Go / Data Structures and Algorithms / Bit Sets | |||
bitmap | 304 | 11 months ago | Dense, zero-allocation, SIMD-enabled bitmap/bitset in Go |
bitset | 1,327 | 11 days ago | Go package implementing bitsets |
Awesome Go / Data Structures and Algorithms / Bloom and Cuckoo Filters | |||
bloom | 2,415 | about 1 month ago | Go package implementing Bloom filters |
bloom | 147 | over 6 years ago | Bloom filters implemented in Go |
bloom | 86 | over 7 years ago | Golang Bloom filter implementation |
bloomfilter | 17 | 2 months ago | Yet another Bloomfilter implementation in Go, compatible with Java's Guava library |
boomfilters | 1,592 | over 3 years ago | Probabilistic data structures for processing continuous, unbounded streams |
cuckoo-filter | 294 | about 1 year ago | Cuckoo filter: a comprehensive cuckoo filter, which is configurable and space optimized compared with other implements, and all features mentioned in original paper are available |
cuckoofilter | 1,116 | 3 months ago | Cuckoo filter: a good alternative to a counting bloom filter implemented in Go |
ring | 138 | about 4 years ago | Go implementation of a high performance, thread safe bloom filter |
Awesome Go / Data Structures and Algorithms / Data Structure and Algorithm Collections | |||
algorithms | 803 | over 3 years ago | Algorithms and data structures.CLRS study |
go-datastructures | 7,647 | 5 months ago | Collection of useful, performant, and thread-safe data structures |
gods | 16,195 | about 2 months ago | Go Data Structures. Containers, Sets, Lists, Stacks, Maps, BidiMaps, Trees, HashSet etc |
gostl | 1,044 | 2 months ago | Data structure and algorithm library for go, designed to provide functions similar to C++ STL |
Awesome Go / Data Structures and Algorithms / Iterators | |||
goterator | 16 | 3 months ago | Iterator implementation to provide map and reduce functionalities |
iter | 185 | over 2 years ago | Go implementation of C++ STL iterators and algorithms |
Awesome Go / Data Structures and Algorithms / Maps | |||
cmap | 91 | 11 months ago | a thread-safe concurrent map for go, support using as key and auto scale up shards |
dict | 45 | almost 4 years ago | Python-like dictionaries (dict) for Go |
go-shelve | 5 | 19 days ago | A persistent, map-like object for the Go programming language. Supports multiple embedded key-value stores |
goradd/maps | 39 | about 1 year ago | Go 1.18+ generic map interface for maps; safe maps; ordered maps; ordered, safe maps; etc |
Awesome Go / Data Structures and Algorithms / Miscellaneous Data Structures and Algorithms | |||
concurrent-writer | 54 | almost 7 years ago | Highly concurrent drop-in replacement for |
conjungo | 127 | over 1 year ago | A small, powerful and flexible merge library |
count-min-log | 66 | over 7 years ago | Go implementation Count-Min-Log sketch: Approximately counting with approximate counters (Like Count-Min sketch but using less memory) |
fsm | 63 | over 1 year ago | Finite-State Machine package |
genfuncs | 51 | about 2 years ago | Go 1.18+ generics package inspired by Kotlin's Sequence and Map |
go-generics | 73 | about 2 months ago | Generic slice, map, set, iterator, and goroutine utilities |
go-geoindex | 355 | over 6 years ago | In-memory geo index |
go-rampart | 100 | 4 months ago | Determine how intervals relate to each other |
go-rquad | 134 | over 2 years ago | Region quadtrees with efficient point location and neighbour finding |
go-tuple | 81 | about 1 year ago | Generic tuple implementation for Go 1.18+ |
go18ds | 45 | about 1 year ago | Go Data Structures using Go 1.18 generics |
gofal | 18 | about 5 years ago | fractional api for Go |
gogu | 97 | over 1 year ago | A comprehensive, reusable and efficient concurrent-safe generics utility functions and data structures library |
gota | 3,038 | about 1 year ago | Implementation of dataframes, series, and data wrangling methods for Go |
hide | 69 | almost 3 years ago | ID type with marshalling to/from hash to prevent sending IDs to clients |
hilbert | 278 | about 2 years ago | Go package for mapping values to and from space-filling curves, such as Hilbert and Peano curves |
hyperloglog | 940 | about 2 months ago | HyperLogLog implementation with Sparse, LogLog-Beta bias correction and TailCut space reduction |
quadtree | 36 | about 1 year ago | Generic, zero-alloc, 100%-test covered quadtree |
slices | 17 | almost 4 years ago | Functions that operate on slices; like but adapted to work with slices |
slices | 20 | over 2 years ago | Pure, generic functions for slices |
Awesome Go / Data Structures and Algorithms / Nullable Types | |||
nan | 85 | over 1 year ago | Zero allocation Nullable structures in one library with handy conversion functions, marshallers and unmarshallers |
null | 36 | almost 3 years ago | Nullable Go types that can be marshalled/unmarshalled to/from JSON |
typ | 46 | almost 3 years ago | Null Types, Safe primitive type conversion and fetching value from complex structures |
Awesome Go / Data Structures and Algorithms / Queues | |||
deque | 179 | about 1 year ago | A highly optimized double-ended queue |
deque | 568 | over 1 year ago | Fast ring-buffer deque (double-ended queue) |
goconcurrentqueue | 392 | over 1 year ago | Concurrent FIFO queue |
hatchet | 4,137 | about 17 hours ago | Distributed, Fault-tolerant task queue |
memlog | 117 | 2 months ago | An easy to use, lightweight, thread-safe and append-only in-memory data structure inspired by Apache Kafka |
queue | 267 | 3 months ago | Multiple thread-safe, generic queue implementations for Go |
Awesome Go / Data Structures and Algorithms / Sets | |||
dsu | 14 | over 2 years ago | Disjoint Set data structure implementation in Go |
golang-set | 4,146 | 2 months ago | Thread-Safe and Non-Thread-Safe high-performance sets for Go |
goset | 52 | almost 4 years ago | A useful Set collection implementation for Go |
set | 27 | about 2 years ago | Simple set data structure implementation in Go using LinkedHashMap |
Awesome Go / Data Structures and Algorithms / Text Analysis | |||
bleve | 10,017 | 16 days ago | Modern text indexing library for go |
go-adaptive-radix-tree | 359 | 6 months ago | Go implementation of Adaptive Radix Tree |
go-edlib | 475 | over 2 years ago | Go string comparison and edit distance algorithms library (Levenshtein, LCS, Hamming, Damerau levenshtein, Jaro-Winkler, etc.) compatible with Unicode |
levenshtein | 85 | almost 4 years ago | Levenshtein distance and similarity metrics with customizable edit costs and Winkler-like bonus for common prefix |
levenshtein | 349 | 18 days ago | Implementation to calculate levenshtein distance in Go |
mspm | 25 | over 6 years ago | Multi-String Pattern Matching Algorithm for information retrieval |
parsefields | 8 | over 5 years ago | Tools for parse JSON-like logs for collecting unique fields and events |
ptrie | 39 | 6 months ago | An implementation of prefix tree |
trie | 757 | 26 days ago | Trie implementation in Go |
Awesome Go / Data Structures and Algorithms / Trees | |||
hashsplit | Split byte streams into chunks, and arrange chunks into trees, with boundaries determined by content, not position | ||
merkle | 17 | 3 months ago | Space-efficient computation of Merkle root hashes and inclusion proofs |
skiplist | 276 | over 1 year ago | Very fast Go Skiplist implementation |
skiplist | 84 | almost 10 years ago | Skiplist implementation in Go |
treap | 27 | almost 5 years ago | Persistent, fast ordered map using tree heaps |
treemap | 59 | over 2 years ago | Generic key-sorted map using a red-black tree under the hood |
Awesome Go / Data Structures and Algorithms / Pipes | |||
ordered-concurrently | 38 | over 1 year ago | Go module that processes work concurrently and returns output in a channel in the order of input |
parapipe | 31 | over 3 years ago | FIFO Pipeline which parallels execution on each stage while maintaining the order of messages and results |
pipeline | 57 | almost 3 years ago | An implementation of pipelines with fan-in and fan-out |
Awesome Go / Database / Caches | |||
2q | 40 | over 1 year ago | 2Q in-memory cache implementation |
bcache | 151 | over 1 year ago | Eventually consistent distributed in-memory cache Go library |
BigCache | 7,492 | 2 months ago | Efficient key/value cache for gigabytes of data |
cache | 184 | almost 2 years ago | In-memory key:value store with expiration time, 0 dependencies, <100 LoC, 100% coverage |
cache2go | 2,114 | 3 months ago | In-memory key:value cache which supports automatic invalidation based on timeouts |
cachego | 368 | 6 months ago | Golang Cache component for multiple drivers |
clusteredBigCache | 45 | over 6 years ago | BigCache with clustering support and individual item expiration |
coherence-go-client | 10 | 11 days ago | Full implementation of Oracle Coherence cache API for Go applications using gRPC as network transport |
couchcache | 63 | 4 months ago | RESTful caching micro-service backed by Couchbase server |
EchoVault | 391 | 14 days ago | Embeddable Distributed in-memory data store compatible with Redis clients |
fastcache | 2,110 | 3 months ago | fast thread-safe inmemory cache for big number of entries. Minimizes GC overhead |
GCache | 2,586 | 8 months ago | Cache library with support for expirable Cache, LFU, LRU and ARC |
gdcache | 13 | almost 3 years ago | A pure non-intrusive cache library implemented by golang, you can use it to implement your own distributed cache |
go-cache | 138 | about 1 year ago | A flexible multi-layer Go caching library to deal with in-memory and shared cache by adopting Cache-Aside pattern |
go-freelru | 147 | 22 days ago | A GC-less, fast and generic LRU hashmap library with optional locking, sharding, eviction and expiration |
go-mcache | 97 | over 4 years ago | Fast in-memory key:value store/cache library. Pointer caches |
gocache | 2,434 | 3 months ago | A complete Go cache library with multiple stores (memory, memcache, redis, ...), chainable, loadable, metrics cache and more |
gocache | 8 | 24 days ago | A data race free Go ache library with high performance and auto pruge functionality |
groupcache | 12,896 | 11 months ago | Groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases |
icache | 16 | 4 months ago | A High Performance, Generic, thread-safe, zero-dependency cache package |
imcache | 122 | about 1 month ago | A generic in-memory cache Go library. It supports expiration, sliding expiration, max entries limit, eviction callbacks and sharding |
nscache | 10 | 11 days ago | A Go caching framework that supports multiple data source drivers |
otter | 1,662 | 10 days ago | A high performance lockless cache for Go. Many times faster than Ristretto and friends |
remember-go | 139 | over 3 years ago | A universal interface for caching slow database queries (backed by redis, memcached, ristretto, or in-memory) |
sturdyc | 278 | 11 days ago | A caching library with advanced concurrency features designed to make I/O heavy applications robust and highly performant |
theine | 254 | 10 days ago | High performance, near optimal in-memory cache with proactive TTL expiration and generics |
timedmap | 71 | 5 months ago | Map with expiring key-value pairs |
ttlcache | 928 | 19 days ago | An in-memory cache with item expiration and generics |
ttlcache | 9 | about 2 years ago | In-memory key value storage with TTL for each record |
Awesome Go / Database / Databases Implemented in Go | |||
badger | 13,833 | 11 days ago | Fast key-value store in Go |
bbolt | 8,169 | 12 days ago | An embedded key/value database for Go |
Bitcask | Bitcask is an embeddable, persistent and fast key-value (KV) database written in pure Go with predictable read/write performance, low latency and high throughput thanks to the bitcask on-disk layout (LSM+WAL) | ||
buntdb | 4,541 | about 1 month ago | Fast, embeddable, in-memory key/value database for Go with custom indexing and spatial support |
clover | 676 | 21 days ago | A lightweight document-oriented NoSQL database written in pure Golang |
cockroach | 29,954 | 12 days ago | Scalable, Geo-Replicated, Transactional Datastore |
Coffer | 38 | over 1 year ago | Simple ACID key-value database that supports transactions |
column | 1,427 | 9 months ago | High-performance, columnar, embeddable in-memory store with bitmap indexing and transactions |
CovenantSQL | 1,493 | over 1 year ago | CovenantSQL is a SQL database on blockchain |
Databunker | 1,248 | 26 days ago | Personally identifiable information (PII) storage service built to comply with GDPR and CCPA |
dgraph | 20,345 | 12 days ago | Scalable, Distributed, Low Latency, High Throughput Graph Database |
diskv | 1,400 | almost 3 years ago | Home-grown disk-backed key-value store |
dolt | 17,805 | 9 days ago | Dolt – It's Git for Data |
dtf | 211 | over 2 years ago | A distributed transaction manager. Support XA, TCC, SAGA, Reliable Messages |
eliasdb | 998 | about 2 years ago | Dependency-free, transactional graph database with REST API, phrase search and SQL-like query language |
godis | 3,468 | 26 days ago | A Golang implemented high-performance Redis server and cluster |
goleveldb | 6,141 | 5 months ago | Implementation of the key/value database in Go |
hare | 93 | over 3 years ago | A simple database management system that stores each table as a text file of line-delimited JSON |
immudb | 8,570 | 23 days ago | immudb is a lightweight, high-speed immutable database for systems and applications written in Go |
influxdb | 28,713 | 10 days ago | Scalable datastore for metrics, events, and real-time analytics |
ledisdb | 4,097 | 12 months ago | Ledisdb is a high performance NoSQL like Redis based on LevelDB |
levigo | 414 | over 2 years ago | Levigo is a Go wrapper for LevelDB |
libradb | 168 | 6 months ago | LibraDB is a simple database with less than 1000 lines of code for learning |
LinDB | 2,997 | 13 days ago | LinDB is a scalable, high performance, high availability distributed time series database |
lotusdb | 2,050 | about 2 months ago | Fast k/v database compatible with lsm and b+tree |
Milvus | 29,730 | 12 days ago | Milvus is a vector database for embedding management, analytics and search |
moss | 953 | over 2 years ago | Moss is a simple LSM key-value storage engine written in 100% Go |
nutsdb | 3,376 | 3 months ago | 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 |
objectbox-go | 1,096 | about 1 month ago | High-performance embedded Object Database (NoSQL) with Go API |
pebble | 4,809 | 10 days ago | RocksDB/LevelDB inspired key-value database in Go |
piladb | 206 | almost 4 years ago | Lightweight RESTful database engine based on stack data structures |
pogreb | 1,298 | 2 months ago | Embedded key-value store for read-heavy workloads |
prometheus | 55,095 | 10 days ago | Monitoring system and time series database |
pudge | 368 | over 3 years ago | Fast and simple key/value store written using Go's standard library |
rosedb | 4,580 | 3 days ago | An embedded k-v database based on LSM+WAL, supports string, list, hash, set, zset |
rotom | 40 | 14 days ago | A tiny Redis server built with Golang, compatible with RESP protocols |
rqlite | 15,617 | 12 days ago | The lightweight, distributed, relational database built on SQLite |
tempdb | 19 | over 6 years ago | Key-value store for temporary items |
tidb | 36,985 | 12 days ago | TiDB is a distributed SQL database. Inspired by the design of Google F1 |
tiedot | 2,721 | about 3 years ago | Your NoSQL database powered by Golang |
unitdb | 119 | over 1 year ago | Fast timeseries database for IoT, realtime messaging applications. Access unitdb with pubsub over tcp or websocket using github.com/unit-io/unitd application |
Vasto | 260 | over 5 years ago | A distributed high-performance key-value store. On Disk. Eventual consistent. HA. Able to grow or shrink without service interruption |
VictoriaMetrics | 12,018 | 12 days ago | fast, resource-effective and scalable open source time series database. May be used as long-term remote storage for Prometheus. Supports PromQL |
Awesome Go / Database / Database Schema Migration | |||
atlas | 5,765 | 9 days ago | A Database Toolkit. A CLI designed to help companies better work with their data |
avro | 45 | 3 months ago | Discover SQL schemas and convert them to AVRO schemas. Query SQL records into AVRO bytes |
bytebase | 11,186 | 10 days ago | Safe database schema change and version control for DevOps teams |
darwin | 144 | over 1 year ago | Database schema evolution library for Go |
dbmate | 5,289 | 26 days ago | A lightweight, framework-agnostic database migration tool |
go-fixtures | 29 | almost 5 years ago | Django style fixtures for Golang's excellent built-in database/sql library |
go-pg-migrate | 10 | about 1 year ago | CLI-friendly package for go-pg migrations management |
go-pg-migrations | 84 | over 1 year ago | A Go package to help write migrations with go-pg/pg |
goavro | 974 | 5 months ago | A Go package that encodes and decodes Avro data |
godfish | 7 | 3 months ago | Database migration manager, works with native query language. Support for cassandra, mysql, postgres, sqlite3 |
goose | 6,780 | 15 days ago | Database migration tool. You can manage your database's evolution by creating incremental SQL or Go scripts |
gorm-seeder | 13 | almost 2 years ago | Simple database seeder for Gorm ORM |
gormigrate | 1,037 | 20 days ago | Database schema migration helper for Gorm ORM |
libschema | 15 | 9 days ago | Define your migrations separately in each library. Migrations for open source libraries. MySQL & PostgreSQL |
migrate | 15,151 | 19 days ago | Database migrations. CLI and Golang library |
migrator | 170 | 7 months ago | Dead simple Go database migration library |
migrator | 25 | about 2 years ago | MySQL database migrator designed to run migrations to your features and manage database schema update with intuitive go code |
schema | 33 | about 1 month ago | Library to embed schema migrations for database/sql-compatible databases inside your Go binaries |
skeema | 1,264 | 16 days ago | Pure-SQL schema management system for MySQL, with support for sharding and external online schema change tools |
soda | 1,435 | 4 months ago | Database migration, creation, ORM, etc... for MySQL, PostgreSQL, and SQLite |
sql-migrate | 3,193 | 3 months ago | Database migration tool. Allows embedding migrations into the application using go-bindata |
sqlize | 96 | 10 days ago | Database migration generator. Allows generate sql migration from model and existing sql by differ them |
Awesome Go / Database / Database Tools | |||
chproxy | 1,276 | 11 days ago | HTTP proxy for ClickHouse database |
clickhouse-bulk | 474 | 9 months ago | Collects small inserts and sends big requests to ClickHouse servers |
dbbench | 100 | 11 days ago | Database benchmarking tool with support for several databases and scripts |
dg | 29 | about 2 months ago | A fast data generator that produces CSV files from generated relational data |
dynago | 12 | about 1 year ago | Simplify working with AWS DynamoDB |
gatewayd | 217 | 10 days ago | Cloud-native database gateway and framework for building data-driven applications. Like API gateways, for databases |
go-mysql | 4,580 | 16 days ago | Go toolset to handle MySQL protocol and replication |
gorm-multitenancy | 39 | 12 days ago | Multi-tenancy support for GORM managed databases |
hasql | Library for accessing multi-host SQL database installations | ||
octillery | 192 | 11 months ago | Go package for sharding databases ( Supports every ORM or raw SQL ) |
onedump | 89 | 2 months ago | Database backup from different drivers to different destinations with one command and configuration |
pg_timetable | 1,085 | 16 days ago | Advanced scheduling for PostgreSQL |
pgweb | 8,580 | 22 days ago | Web-based PostgreSQL database browser |
prep | 33 | almost 7 years ago | Use prepared SQL statements without changing your code |
pREST | 4,204 | about 1 month ago | Simplify and accelerate development, ⚡ instant, realtime, high-performance on any Postgres application, existing or new |
rdb | 385 | about 2 months ago | Redis RDB file parser for secondary development and memory analysis |
rwdb | 19 | almost 7 years ago | rwdb provides read replica capability for multiple database servers setup |
vitess | 18,479 | 10 days ago | vitess provides servers and tools which facilitate scaling of MySQL databases for large scale web services |
wescale | 199 | 12 days ago | WeScale is a database proxy designed to enhance the scalability, performance, security, and resilience of your applications |
Awesome Go / Database / SQL Query Builders | |||
bqb | 147 | 6 months ago | Lightweight and easy to learn query builder |
buildsqlx | 170 | 6 months ago | Go database query builder library for PostgreSQL |
builq | 89 | 6 months ago | Easily build SQL queries in Go |
dbq | 404 | over 3 years ago | Zero boilerplate database operations for Go |
Dotsql | 737 | 11 months ago | Go library that helps you keep sql files in one place and use them with ease |
gendry | 1,616 | 3 months ago | Non-invasive SQL builder and powerful data binder |
godbal | 59 | over 5 years ago | Database Abstraction Layer (dbal) for go. Support SQL builder and get result easily |
goqu | 2,370 | 5 months ago | Idiomatic SQL builder and query library |
gosql | 32 | over 2 years ago | SQL Query builder with better null values support |
Hotcoal | 19 | 10 months ago | Secure your handcrafted SQL against injection |
igor | 125 | 6 months ago | Abstraction layer for PostgreSQL that supports advanced functionality and uses gorm-like syntax |
jet | 2,515 | 16 days ago | Framework for writing type-safe SQL queries in Go, with ability to easily convert database query result into desired arbitrary object structure |
ormlite | 14 | over 1 year ago | Lightweight package containing some ORM-like features and helpers for sqlite databases |
ozzo-dbx | 634 | over 1 year ago | Powerful data retrieval methods as well as DB-agnostic query building capabilities |
qry | 35 | 8 months ago | Tool that generates constants from files with raw SQL queries |
sg | 6 | over 2 years ago | A SQL Gen for generating standard SQLs(supports: CRUD) written in Go |
sq | 196 | over 1 year ago | Type-safe SQL builder and struct mapper for Go |
sqlc | 12,476 | 10 days ago | Generate type-safe code from SQL |
sqlf | 143 | over 1 year ago | Fast SQL query builder |
sqlingo | 406 | about 1 month ago | A lightweight DSL to build SQL in Go |
sqrl | 275 | over 1 year ago | SQL query builder, fork of Squirrel with improved performance |
Squalus | Thin layer over the Go SQL package that makes it easier to perform queries | ||
Squirrel | 6,878 | 6 months ago | Go library that helps you build SQL queries |
xo | 3,715 | 4 months ago | Generate idiomatic Go code for databases based on existing schema definitions or custom queries supporting PostgreSQL, MySQL, SQLite, Oracle, and Microsoft SQL Server |
Awesome Go / Database Drivers / Interfaces to Multiple Backends | |||
cayley | 14,842 | 3 months ago | Graph database with support for multiple backends |
dsc | 33 | 5 months ago | Datastore connectivity for SQL, NoSQL, structured files |
dynamo | 18 | 8 months ago | A simple key-value abstraction to store algebraic and linked-data data types at AWS storage services: AWS DynamoDB and AWS S3 |
go-transaction-manager | 225 | about 1 month ago | Transaction manager with multiple adapters (sql, sqlx, gorm, mongo, ...) controls transaction boundaries |
gokv | 735 | 4 months ago | Simple key-value store abstraction and implementations for Go (Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB and many more) |
Awesome Go / Database Drivers / Relational Database Drivers | |||
avatica | 118 | 6 months ago | Apache Avatica/Phoenix SQL driver for database/sql |
bgc | 21 | 7 months ago | Datastore Connectivity for BigQuery for go |
firebirdsql | 227 | 2 months ago | Firebird RDBMS SQL driver for Go |
go-adodb | 142 | over 2 years ago | Microsoft ActiveX Object DataBase driver for go that uses database/sql |
go-mssqldb | 1,816 | 6 months ago | Microsoft MSSQL driver for Go |
go-oci8 | 630 | 12 months ago | Oracle driver for go that uses database/sql |
go-sql-driver/mysql | 14,479 | about 1 month ago | MySQL driver for Go |
go-sqlite3 | 7,901 | about 1 month ago | SQLite3 driver for go that uses database/sql |
godror | 527 | 12 days ago | Oracle driver for Go, using the ODPI-C driver |
gofreetds | 113 | almost 4 years ago | Microsoft MSSQL driver. Go wrapper over |
KSQL | 306 | about 2 months ago | A Simple and Powerful Golang SQL Library |
pgx | 10,464 | 18 days ago | PostgreSQL driver supporting features beyond those exposed by database/sql |
pig | 16 | over 3 years ago | Simple wrapper to execute and query results easily |
pq | 9,037 | 2 months ago | Pure Go Postgres driver for database/sql |
Sqinn-Go | 420 | 9 months ago | SQLite with pure Go |
sqlhooks | 650 | 4 months ago | Attach hooks to any database/sql driver |
surrealdb.go | 237 | 10 days ago | SurrealDB Driver for Go |
ydb-go-sdk | 138 | 10 days ago | native and database/sql driver YDB (Yandex Database) |
Awesome Go / Database Drivers / NoSQL Database Drivers | |||
aerospike-client-go | 432 | 19 days ago | Aerospike client in Go language |
arangolite | 73 | over 3 years ago | Lightweight golang driver for ArangoDB |
asc | 10 | 22 days ago | Datastore Connectivity for Aerospike for go |
forestdb | 37 | almost 8 years ago | Go bindings for ForestDB |
go-couchbase | 321 | 9 months ago | Couchbase client in Go |
go-mongox | 121 | about 1 month ago | A Go Mongo library based on the official driver, featuring streamlined document operations, generic binding of structs to collections, built-in CRUD, aggregation, automated field updates, struct validation, hooks, and plugin-based programming |
go-pilosa | 58 | about 2 years ago | Go client library for Pilosa |
go-rejson | 343 | 9 months ago | Golang client for redislabs' ReJSON module using Redigo golang client. Store and manipulate structs as JSON objects in redis with ease |
gocb | 368 | 17 days ago | Official Couchbase Go SDK |
gocosmos | 22 | about 2 months ago | REST client and standard driver for Azure Cosmos DB |
gocql | Go language driver for Apache Cassandra | ||
godis | 111 | over 4 years ago | redis client implement by golang, inspired by jedis |
godscache | 11 | over 5 years ago | A wrapper for the Google Cloud Platform Go Datastore package that adds caching using memcached |
gomemcache | 1,748 | 2 months ago | memcache client library for the Go programming language |
gomemcached | 19 | 8 months ago | A binary Memcached client for Go with support for sharding using consistent hashing, along with SASL |
gorethink | 1,648 | about 1 year ago | Go language driver for RethinkDB |
goriak | 30 | about 3 years ago | Go language driver for Riak KV |
Kivik | 312 | about 1 month ago | Kivik provides a common Go and GopherJS client library for CouchDB, PouchDB, and similar databases |
mgm | 747 | 10 months ago | MongoDB model-based ODM for Go (based on official MongoDB driver) |
mgo | 1,971 | almost 3 years ago | (unmaintained) 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 |
mongo-go-driver | 8,118 | 10 days ago | Official MongoDB driver for the Go language |
neo4j | 28 | over 9 years ago | Neo4j Rest API Bindings for Golang |
Neo4j-GO | 78 | over 6 years ago | Neo4j REST Client in golang |
neoism | 390 | over 4 years ago | Neo4j client for Golang |
qmgo | 1,300 | about 1 year ago | The MongoDB driver for Go. It‘s based on official MongoDB driver but easier to use like Mgo |
redeo | 438 | over 1 year ago | Redis-protocol compatible TCP servers/services |
redigo | 9,745 | 5 months ago | Redigo is a Go client for the Redis database |
redis | 19,974 | 3 days ago | Redis client for Golang |
rueidis | Fast Redis RESP3 client with auto pipelining and server-assisted client side caching | ||
xredis | 19 | over 5 years ago | Typesafe, customizable, clean & easy to use Redis client |
Awesome Go / Database Drivers / Search and Analytic Databases | |||
clickhouse-go | 2,877 | 9 days ago | ClickHouse SQL client for Go with a compatibility |
effdsl | 25 | 19 days ago | Elasticsearch query builder for Go |
elastic | 7,400 | 2 months ago | Elasticsearch client for Go |
elasticsql | 1,166 | about 1 year ago | Convert sql to elasticsearch dsl in Go |
elastigo | 942 | over 5 years ago | Elasticsearch client library |
go-elasticsearch | 5,651 | 25 days ago | Official Elasticsearch client for Go |
goes | 31 | almost 4 years ago | Library to interact with Elasticsearch |
skizze | 89 | over 8 years ago | probabilistic data-structures service and storage |
Awesome Go / Date and Time | |||
approx | 12 | 15 days ago | A Duration extension supporting parsing/printing durations in days, weeks and years |
carbon | 4,704 | 13 days ago | A simple, semantic and developer-friendly golang package for datetime |
carbon | 774 | 9 months ago | Simple Time extension with a lot of util methods, ported from PHP Carbon library |
cronrange | 18 | about 2 years ago | Parses Cron-style time range expressions, checks if the given time is within any ranges |
date | 131 | 3 months ago | Augments Time for working with dates, date ranges, time spans, periods, and time-of-day |
dateparse | 2,037 | 10 months ago | Parse date's without knowing format in advance |
durafmt | 494 | over 3 years ago | Time duration formatting library for Go |
feiertage | 48 | 7 months ago | Set of functions to calculate public holidays in Germany, incl. specialization on the states of Germany (Bundesländer). Things like Easter, Pentecost, Thanksgiving |
go-anytime | 20 | over 1 year ago | Parse dates/times like "next dec 22nd at 3pm" and ranges like "from today until next thursday" without knowing the format in advance |
go-datebin | 4 | 4 months ago | A simple datetime parse pkg |
go-persian-calendar | 204 | about 2 months ago | The implementation of the Persian (Solar Hijri) Calendar in Go (golang) |
go-str2duration | 101 | 12 months ago | Convert string to duration. Support time.Duration returned string and more |
go-sunrise | 145 | 6 months ago | Calculate the sunrise and sunset times for a given location |
go-week | 9 | almost 3 years ago | An efficient package to work with ISO8601 week dates |
gostradamus | 202 | 10 months ago | A Go package for working with dates |
iso8601 | 144 | 19 days ago | Efficiently parse ISO8601 date-times without regex |
kair | 24 | over 4 years ago | Date and Time - Golang Formatting Library |
now | 4,428 | over 1 year ago | Now is a time toolkit for golang |
strftime | 12 | over 6 years ago | C99-compatible strftime formatter |
timespan | 83 | over 5 years ago | For interacting with intervals of time, defined as a start time and a duration |
timeutil | 192 | over 5 years ago | Useful extensions (Timedelta, Strftime, ...) to the golang's time package |
tuesday | 12 | over 3 years ago | Ruby-compatible Strftime function |
Awesome Go / Distributed Systems | |||
arpc | 951 | 2 months ago | More effective network communication, support two-way-calling, notify, broadcast |
bedrock | 6 | 11 days ago | Provides a minimal, modular and composable foundation for quickly developing services and more use case specific frameworks in Go |
capillaries | 61 | 20 days ago | distributed batch data processing framework |
celeriac | 72 | 3 months ago | Library for adding support for interacting and monitoring Celery workers, tasks and events in Go |
consistent | 690 | 11 months ago | Consistent hashing with bounded loads |
consistenthash | 27 | 6 months ago | Consistent hashing with configurable replicas |
dht | 310 | 12 days ago | BitTorrent Kademlia DHT implementation |
digota | 508 | over 3 years ago | grpc ecommerce microservice |
dot | 87 | about 5 years ago | distributed sync using operational transformation/OT |
doublejump | 102 | almost 2 years ago | A revamped Google's jump consistent hash |
dragonboat | 5,061 | 3 months ago | A feature complete and high performance multi-group Raft library in Go |
Dragonfly | 2,218 | 11 days ago | Provide efficient, stable and secure file distribution and image acceleration based on p2p technology to be the best practice and standard solution in cloud native architectures |
drmaa | 48 | 3 months ago | Job submission library for cluster schedulers based on the DRMAA standard |
dynamolock | DynamoDB-backed distributed locking implementation | ||
dynatomic | 17 | almost 4 years ago | A library for using DynamoDB as an atomic counter |
emitter-io | 3,834 | 13 days ago | High performance, distributed, secure and low latency publish-subscribe platform built with MQTT, Websockets and love |
evans | 4,247 | 10 months ago | Evans: more expressive universal gRPC client |
failured | 12 | about 3 years ago | adaptive accrual failure detector for distributed systems |
flowgraph | 59 | over 3 years ago | flow-based programming package |
gleam | 3,440 | 4 months ago | 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 |
glow | 3,201 | almost 6 years ago | Easy-to-Use scalable distributed big data processing, Map-Reduce, DAG execution, all in pure Go |
gmsec | 25 | 9 months ago | A Go distributed systems development framework |
go-doudou | 1,431 | 14 days ago | A gossip protocol and OpenAPI 3.0 spec based decentralized microservice framework. Built-in go-doudou cli focusing on low-code and rapid dev can power up your productivity |
go-health | 747 | 10 months ago | Library for enabling asynchronous dependency health checks in your service |
go-jump | 383 | almost 3 years ago | Port of Google's "Jump" Consistent Hash function |
go-kit | 26,527 | 3 months ago | Microservice toolkit with support for service discovery, load balancing, pluggable transports, request tracking, etc |
go-micro | 21,874 | about 2 months ago | A distributed systems development framework |
go-mysql-lock | 61 | 5 months ago | MySQL based distributed lock |
go-pdu | 47 | 3 months ago | A decentralized identity-based social network |
go-sundheit | 535 | 3 months ago | A library built to provide support for defining async service health checks for golang services |
go-zero | 28,997 | 19 days ago | A web and rpc framework. It's born to ensure the stability of the busy sites with resilient design. Builtin goctl greatly improves the development productivity |
gorpc | 696 | about 2 years ago | Simple, fast and scalable RPC library for high load |
grpc-go | 20,947 | 9 days ago | The Go language implementation of gRPC. HTTP/2 based RPC |
hprose | 1,260 | 8 months ago | Very newbility RPC Library, support 25+ languages now |
jsonrpc | 188 | over 1 year ago | The jsonrpc package helps implement of JSON-RPC 2.0 |
jsonrpc | 326 | 2 months ago | JSON-RPC 2.0 HTTP client implementation |
K8gb | 864 | 11 days ago | A cloud native Kubernetes Global Balancer |
Kitex | 6,952 | 15 days ago | A high-performance and strong-extensibility Golang RPC framework that helps developers build microservices. If the performance and extensibility are the main concerns when you develop microservices, Kitex can be a good choice |
Kratos | 23,179 | 25 days ago | A modular-designed and easy-to-use microservices framework in Go |
liftbridge | 2,569 | 6 months ago | Lightweight, fault-tolerant message streams for NATS |
lura | 6,323 | 5 days ago | Ultra performant API Gateway framework with middlewares |
micro | 12,101 | 25 days ago | A distributed systems runtime for the cloud and beyond |
mochi mqtt | 1,219 | 2 months ago | Fully spec compliant, embeddable high-performance MQTT v5/v3 broker for IoT, smarthome, and pubsub |
NATS | 15,666 | 10 days ago | Lightweight, high performance messaging system for microservices, IoT, and cloud native systems |
outboxer | 157 | 12 days ago | Outboxer is a go library that implements the outbox pattern |
pglock | PostgreSQL-backed distributed locking implementation | ||
pjrpc | Golang JSON-RPC Server-Client with Protobuf spec | ||
raft | 8,178 | 18 days ago | Golang implementation of the Raft consensus protocol, by HashiCorp |
raft | 640 | 10 days ago | Go implementation of the Raft consensus protocol, by CoreOS |
rain | 965 | 17 days ago | BitTorrent client and library |
redis-lock | 1,439 | 7 months ago | Simplified distributed locking implementation using Redis |
resgate | Realtime API Gateway for building REST, real time, and RPC APIs, where all clients are synchronized seamlessly | ||
ringpop-go | 827 | about 1 year ago | Scalable, fault-tolerant application-layer sharding for Go applications |
rpcx | 8,088 | 25 days ago | Distributed pluggable RPC service framework like alibaba Dubbo |
Semaphore | 94 | over 1 year ago | A straightforward (micro) service orchestrator |
sleuth | 373 | over 1 year ago | Library for master-less p2p auto-discovery and RPC between HTTP services (using ) |
sponge | 1,300 | 12 days ago | A distributed development framework that integrates automatic code generation, gin and grpc frameworks, base development frameworks |
Tarmac | 327 | 12 days ago | Framework for writing functions, microservices, or monoliths with WebAssembly |
Temporal | 522 | 11 days ago | Durable execution system for making code fault-tolerant and simple |
torrent | 5,506 | 11 days ago | BitTorrent client package |
trpc-go | 807 | 4 months ago | The Go language implementation of tRPC, which is a pluggable, high-performance RPC framework |
Awesome Go / Dynamic DNS | |||
DDNS | 253 | 4 months ago | Personal DDNS client with Digital Ocean Networking DNS as backend |
dyndns | Background Go process to regularly and automatically check your IP Address and make updates to (one or many) Dynamic DNS records for Google domains whenever your address changes | ||
GoDNS | 1,503 | 24 days ago | A dynamic DNS client tool, supports DNSPod & HE.net, written in Go |
Awesome Go / Email | |||
chasquid | SMTP server written in Go | ||
douceur | 246 | about 2 years ago | CSS inliner for your HTML emails |
2,648 | 8 months ago | A robust and flexible email library for Go | |
email-verifier | 1,187 | about 1 month ago | A Go library for email verification without sending any emails |
go-dkim | 98 | 9 months ago | DKIM library, to sign & verify email |
go-email-normalizer | 63 | about 1 month ago | Golang library for providing a canonical representation of email address |
go-email-validator | 51 | about 1 year ago | Modular email validator for syntax, disposable, smtp, etc... checking |
go-imap | 2,073 | 14 days ago | IMAP library for clients and servers |
go-mail | 587 | 10 days ago | A simple Go library for sending mails in Go |
go-message | 382 | 14 days ago | Streaming library for the Internet Message Format and mail messages |
go-premailer | 139 | 12 days ago | Inline styling for HTML mail in Go |
go-simple-mail | 644 | 3 months ago | Very simple package to send emails with SMTP Keep Alive and two timeouts: Connect and Send |
Hectane | 225 | almost 4 years ago | Lightweight SMTP client providing an HTTP API |
hermes | 2,819 | about 1 year ago | Golang package that generates clean, responsive HTML e-mails |
Maddy | 5,032 | about 1 month ago | All-in-one (SMTP, IMAP, DKIM, DMARC, MTA-STS, DANE) email server |
mailchain | 143 | over 2 years ago | Send encrypted emails to blockchain addresses written in Go |
mailgun-go | 695 | 16 days ago | Go library for sending mail with the Mailgun API |
MailHog | 13,928 | 8 months ago | Email and SMTP testing with web and API interface |
Mailpit | 5,463 | 10 days ago | Email and SMTP testing tool for developers |
mailx | 19 | 4 months ago | Mailx is a library that makes it easier to send email via SMTP. It is an enhancement of the golang standard library |
mox | 3,559 | 6 days ago | Modern full-featured secure mail server for low-maintenance, self-hosted email |
SendGrid | 981 | 16 days ago | SendGrid's Go library for sending email |
smtp | 74 | almost 3 years ago | SMTP server protocol state machine |
smtpmock | 123 | 2 months ago | Lightweight configurable multithreaded fake SMTP server. Mimic any SMTP behaviour for your test environment |
truemail-go | 101 | about 1 month ago | Configurable Golang email validator/verifier. Verify email via Regex, DNS, SMTP and even more |
Awesome Go / Embeddable Scripting Languages | |||
anko | 1,467 | 10 months ago | Scriptable interpreter written in Go |
binder | 75 | over 2 years ago | Go to Lua binding library, based on |
cel-go | 2,218 | 11 days ago | Fast, portable, non-Turing complete expression evaluation with gradual typing |
ecal | 41 | over 3 years ago | A simple embeddable scripting language which supports concurrent event processing |
expr | 6,155 | 24 days ago | Expression evaluation engine for Go: fast, non-Turing complete, dynamic typing, static typing |
gentee | 132 | 10 months ago | Embeddable scripting programming language |
gisp | 513 | about 7 years ago | Simple LISP in Go |
go-duktape | 777 | almost 3 years ago | Duktape JavaScript engine bindings for Go |
go-lua | 3,088 | 5 months ago | Port of the Lua 5.2 VM to pure Go |
go-php | 928 | almost 3 years ago | PHP bindings for Go |
go-python | 1,523 | about 1 year ago | naive go bindings to the CPython C-API |
goal | An embeddable scripting array language | ||
goja | 5,489 | 15 days ago | ECMAScript 5.1(+) implementation in Go |
golua | 640 | 16 days ago | Go bindings for Lua C API |
gopher-lua | 6,225 | 2 months ago | Lua 5.1 VM and compiler written in Go |
gval | 731 | 5 months ago | A highly customizable expression language written in Go |
metacall | 1,559 | 17 days ago | Cross-platform Polyglot Runtime which supports NodeJS, JavaScript, TypeScript, Python, Ruby, C#, WebAssembly, Java, Cobol and more |
ngaro | 28 | over 6 years ago | Embeddable Ngaro VM implementation enabling scripting in Retro |
prolog | 610 | 10 days ago | Embeddable Prolog |
purl | 41 | almost 10 years ago | Perl 5.18.2 embedded in Go |
starlark-go | 2,314 | 17 days ago | Go implementation of Starlark: Python-like language with deterministic evaluation and hermetic execution |
starlet | 17 | 2 months ago | Go wrapper for that simplifies script execution, offers data conversion, and useful Starlark libraries and extensions |
tengo | 3,522 | 6 months ago | Bytecode compiled script language for Go |
Wa/凹语言 | 1,089 | 10 days ago | The Wa Programming Language embedded in Go |
Awesome Go / Error Handling | |||
emperror | 341 | about 4 years ago | Error handling tools and best practices for Go libraries and applications |
eris | 1,490 | over 1 year ago | A better way to handle, trace, and log errors in Go. Compatible with the standard error library and github.com/pkg/errors |
errlog | 459 | over 1 year ago | Hackable package that determines responsible source code for an error (and some other fast-debugging features). Pluggable to any logger in-place |
errors | 196 | over 2 years ago | Drop-in replacement for the standard library errors package and github.com/pkg/errors. Provides various error handling primitives |
errors | 6 | about 5 years ago | Simple golang error handling with classification primitives |
errors | 7 | over 2 years ago | The most simple error wrapper with awesome performance and minimal memory overhead |
errors | Providing errors with a stack trace and optional structured details. Compatible with github.com/pkg/errors API but does not use it internally | ||
errors | 66 | 1 day ago | Drop-in replacement for builtin Go errors. This is a minimal error handling package with custom error types, user friendly messages, Unwrap & Is. With very easy to use and straightforward helper functions |
errors | 2,086 | about 2 months ago | Go error library with error portability over the network |
errorx | 1,122 | over 1 year ago | A feature rich error package with stack traces, composition of errors and more |
exception | 31 | almost 2 years ago | A simple utility package for exception handling with try-catch in Golang |
Falcon | 11 | about 5 years ago | A Simple Yet Highly Powerful Package For Error Handling |
Fault | 159 | 9 months ago | An ergonomic mechanism for wrapping errors in order to facilitate structured metadata and context for error values |
go-multierror | 2,312 | 16 days ago | Go (golang) package for representing a list of errors as a single error |
multierr | 1,012 | 6 months ago | Package for representing a list of errors as a single error |
oops | 404 | about 2 months ago | Error handling with context, stack trace and source fragments |
tracerr | 980 | 5 months ago | Golang errors with stack trace and source fragments |
Awesome Go / File Handling | |||
afero | 5,920 | 3 months ago | FileSystem Abstraction System for Go |
afs | 302 | 6 months ago | Abstract File Storage (mem, scp, zip, tar, cloud: s3, gs) for Go |
baraka | 55 | about 2 years ago | A library to process http file uploads easily |
bigfile | 252 | over 1 year ago | A file transfer system, support to manage files with http api, rpc call and ftp client |
checksum | 104 | 10 months ago | Compute message digest, like MD5, SHA256, SHA1, CRC or BLAKE2s, for large files |
copy | 716 | 11 days ago | Copy directory recursively |
flop | 33 | almost 3 years ago | File operations library which aims to mirror feature parity with |
gdu | 3,868 | about 1 month ago | Disk usage analyzer with console interface |
go-csv-tag | 121 | 5 months ago | Load csv file using tag |
go-decent-copy | 22 | almost 5 years ago | Copy files for humans |
go-exiftool | 248 | 3 months ago | Go bindings for ExifTool, the well-known library used to extract as much metadata as possible (EXIF, IPTC, ...) from files (pictures, PDF, office, ...) |
go-gtfs | 44 | about 1 year ago | Load gtfs files in go |
go-wkhtmltopdf | 1,047 | 3 months ago | A package to convert an HTML template to a PDF file |
gofs | 465 | 11 days ago | A cross-platform real-time file synchronization tool out of the box |
gut/yos | 27 | almost 4 years ago | Simple and reliable package for file operations like copy/move/diff/list on files, directories and symbolic links |
higgs | 24 | over 2 years ago | A tiny cross-platform Go library to hide/unhide files and directories |
iso9660 | 260 | 9 months ago | A package for reading and creating ISO9660 disk images |
notify | 906 | 8 months ago | File system event notification library with simple API, similar to os/signal |
opc | 75 | 11 months ago | Load Open Packaging Conventions (OPC) files for Go |
parquet | 105 | 19 days ago | Read and write files |
pathtype | 13 | about 3 years ago | Treat paths as their own type instead of using strings |
pdfcpu | 6,813 | 13 days ago | PDF processor |
skywalker | 100 | about 3 years ago | Package to allow one to concurrently go through a filesystem with ease |
todotxt | 23 | about 1 year ago | Go library for Gina Trapani's files, supports parsing and manipulating of task lists in the |
vfs | 300 | 26 days ago | A pluggable, extensible, and opinionated set of filesystem functionality for Go across a number of filesystem types such as os, S3, and GCS |
Awesome Go / Financial | |||
accounting | 877 | about 2 years ago | money and currency formatting for golang |
ach | 455 | 10 days ago | A reader, writer, and validator for Automated Clearing House (ACH) files |
bbgo | 1,193 | 10 days ago | A crypto trading bot framework written in Go. Including common crypto exchange API, standard indicators, back-testing and many built-in strategies |
currency | 537 | 6 months ago | Handles currency amounts, provides currency information and formatting |
currency | 61 | about 6 hours ago | High performant & accurate currency computation package |
decimal | 6,298 | 2 months ago | Arbitrary-precision fixed-point decimal numbers |
decimal | 72 | about 1 month ago | Immutable decimal numbers with panic-free arithmetic |
fpdecimal | 30 | about 2 months ago | Fast and precise serialization and arithmetic for small fixed-point decimals |
fpmoney | 29 | about 1 month ago | Fast and simple ISO4217 fixed-point decimal money |
go-finance | 173 | almost 3 years ago | Library of financial functions for time value of money (annuities), cash flow, interest rate conversions, bonds and depreciation calculations |
go-finance | 27 | 4 months ago | Module to fetch exchange rates, check VAT numbers via VIES and check IBAN bank account numbers |
go-finnhub | 91 | over 4 years ago | Client for stock market, forex and crypto data from finnhub.io. Access real-time financial market data from 60+ stock exchanges, 10 forex brokers, and 15+ crypto exchanges |
go-money | 1,646 | 3 months ago | Implementation of Fowler's Money pattern |
go-nowpayments | 3 | over 1 year ago | Library for the crypto NOWPayments API |
money | 19 | 3 months ago | Immutable monetary amounts and exchange rates with panic-free arithmetic |
ofxgo | 139 | 6 months ago | Query OFX servers and/or parse the responses (with example command-line client) |
orderbook | 428 | 6 months ago | Matching Engine for Limit Order Book in Golang |
payme | 85 | 2 months ago | QR code generator (ASCII & PNG) for SEPA payments |
sleet | 140 | 8 months ago | One unified interface for multiple Payment Service Providers (PsP) to process online payment |
swift | Offline validity check of IBAN (International Bank Account Number) and retrieval of BIC (for some countries) | ||
techan | 830 | about 1 year ago | Technical analysis library with advanced market analysis and trading strategies |
ticker | 4,953 | about 1 month ago | Terminal stock watcher and stock position tracker |
transaction | 134 | 8 months ago | Embedded transactional database of accounts, running in multithreaded mode |
vat | 113 | 11 months ago | VAT number validation & EU VAT rates |
Awesome Go / Forms | |||
bind | 30 | about 10 years ago | Bind form data to any Go values |
binding | 795 | over 6 years ago | Binds form and JSON data from net/http Request to struct |
checker | 9 | about 2 months ago | Checker helps validating user input through rules defined in struct tags or directly through functions |
conform | 319 | 10 months ago | Keeps user input in check. Trims, sanitizes & scrubs data based on struct tags |
form | 758 | 5 months ago | Decodes url.Values into Go value(s) and Encodes Go value(s) into url.Values. Dual Array and Full map support |
formam | 189 | almost 2 years ago | decode form's values into a struct |
forms | 137 | almost 2 years ago | Framework-agnostic library for parsing and validating form/JSON data which supports multipart forms and files |
gbind | 8 | over 2 years ago | Bind data to any Go value. Can use built-in and custom expression binding capabilities; supports data validation |
gorilla/csrf | 1,043 | 7 months ago | CSRF protection for Go web applications & services |
httpin | 312 | 5 months ago | Decode an HTTP request into a custom struct, including querystring, forms, HTTP headers, etc |
nosurf | 1,577 | 6 months ago | CSRF protection middleware for Go |
qs | 76 | 7 months ago | Go module for encoding structs into URL query parameters |
queryparam | 19 | about 4 years ago | Decode into usable struct values of standard or custom types |
Awesome Go / Functional | |||
fp-go | 300 | almost 2 years ago | Collection of Functional Programming helpers powered by Golang 1.18+ generics |
fpGo | 346 | 11 months ago | Monad, Functional Programming features for Golang |
fuego | 141 | 6 months ago | Functional Experiment in Go |
go-functional | 430 | 17 days ago | Functional programming in Go using generics |
go-underscore | 1,297 | over 1 year ago | Useful collection of helpfully functional Go collection utilities |
gofp | 145 | over 3 years ago | A lodash like powerful utility library for Golang |
mo | 2,605 | about 1 month ago | Monads and popular FP abstractions, based on Go 1.18+ Generics (Option, Result, Either...) |
underscore | 109 | about 1 month ago | Functional programming helpers for Go 1.18 and beyond |
valor | 16 | about 1 year ago | Generic option and result types that optionally contain a value |
Awesome Go / Game Development | |||
Azul3D | 615 | almost 3 years ago | 3D game engine written in Go |
Ebitengine | 10,858 | 10 days ago | dead simple 2D game engine in Go |
ecs | 118 | about 1 month ago | Build your own Game-Engine based on the Entity Component System concept in Golang |
engo | 1,747 | 3 months ago | Engo is an open-source 2D game engine written in Go. It follows the Entity-Component-System paradigm |
fantasyname | 33 | about 2 months ago | Fantasy names generator |
g3n | 2,773 | 2 months ago | Go 3D Game Engine |
go-astar | 596 | over 2 years ago | Go implementation of the A* path finding algorithm |
go-sdl2 | 2,210 | 13 days ago | Go bindings for the |
go3d | 310 | 5 months ago | Performance oriented 2D/3D math package for Go |
gonet | 1,261 | 3 months ago | Game server skeleton implemented with golang |
goworld | 2,563 | 11 months ago | Scalable game server engine, featuring space-entity framework and hot-swapping |
grid | 17 | about 1 month ago | Generic 2D grid with ray-casting, shadow-casting and path finding |
Harfang3D | 559 | about 1 year ago | 3D engine for the Go language, works on Windows and Linux ( ) |
Leaf | 5,279 | 5 months ago | Lightweight game server framework |
nano | 2,833 | 4 months ago | Lightweight, facility, high performance golang based game server framework |
Oak | 1,545 | 3 months ago | Pure Go game engine |
Pitaya | 2,328 | about 2 months ago | Scalable game server framework with clustering support and client libraries for iOS, Android, Unity and others through the C SDK |
Pixel | 4,457 | 5 months ago | Hand-crafted 2D game library in Go |
prototype | 88 | about 2 months ago | Cross-platform (Windows/Linux/Mac) library for creating desktop games using a minimal API |
raylib-go | 1,566 | 12 days ago | Go bindings for , a simple and easy-to-use library to learn videogames programming |
termloop | 1,426 | 2 months ago | Terminal-based game engine for Go, built on top of Termbox |
tile | 153 | 10 months ago | Data-oriented and cache-friendly 2D Grid library (TileMap), includes pathfinding, observers and import/export |
Awesome Go / Generators | |||
convergen | 38 | about 1 month ago | Feature rich type-to-type copy code generator |
copygen | 352 | 7 months ago | Generate type-to-type and type-based code without reflection |
generis | 43 | over 2 years ago | Code generation tool providing generics, free-form macros, conditional compilation and HTML templating |
go-enum | 729 | 27 days ago | Code generation for enums from code comments |
go-linq | 3,501 | about 2 years ago | .NET LINQ-like query methods for Go |
goderive | 1,232 | 4 months ago | Derives functions from input types |
goverter | 500 | 29 days ago | Generate converters by defining an interface |
GoWrap | 1,055 | about 2 months ago | Generate decorators for Go interfaces using simple templates |
interfaces | 421 | about 1 month ago | Command line tool for generating interface definitions |
jennifer | 3,311 | about 1 month ago | Generate arbitrary Go code without templates |
oapi-codegen | 6,091 | 12 days ago | This package contains a set of utilities for generating Go boilerplate code for services based on OpenAPI 3.0 API definitions |
typeregistry | 23 | over 4 years ago | A library to create type dynamically |
Awesome Go / Geographic | |||
geoos | 615 | 3 months ago | A library provides spatial data and geometric algorithms |
geoserver | 88 | over 1 year ago | geoserver Is a Go Package For Manipulating a GeoServer Instance via the GeoServer REST API |
gismanager | 55 | almost 6 years ago | Publish Your GIS Data(Vector Data) to PostGIS and Geoserver |
godal | 130 | 11 days ago | Go wrapper for GDAL |
H3 | 303 | about 1 month ago | Go bindings for H3, a hierarchical hexagonal geospatial indexing system |
H3 GeoJSON | 3 | over 2 years ago | Conversion utilities between H3 indexes and GeoJSON |
H3GeoDist | 2 | over 2 years ago | Distribution of Uber H3geo cells by virtual nodes |
mbtileserver | 645 | 10 days ago | A simple Go-based server for map tiles stored in mbtiles format |
osm | 372 | 5 months ago | Library for reading, writing and working with OpenStreetMap data and APIs |
pbf | 48 | about 2 years ago | OpenStreetMap PBF golang encoder/decoder |
S2 geojson | 28 | about 2 months ago | Convert geojson to s2 cells & demonstrating some S2 geometry features on map |
S2 geometry | 1,678 | about 2 months ago | S2 geometry library in Go |
simplefeatures | 130 | 9 days ago | simplesfeatures is a 2D geometry library that provides Go types that model geometries, as well as algorithms that operate on them |
Tile38 | 9,087 | 13 days ago | Geolocation DB with spatial index and realtime geofencing |
Web-Mercator-Projection | 9 | over 2 years ago | A project to easily use and convert LonLat, Point and Tile to display info, markers, etc, in a map using the Web Mercator Projection |
WGS84 | 125 | 3 months ago | Library for Coordinate Conversion and Transformation (ETRS89, OSGB36, NAD83, RGF93, Web Mercator, UTM) |
Awesome Go / Go Compilers | |||
c2go | 307 | 5 months ago | Convert C code to Go code |
c4go | 364 | 23 days ago | Transpile C code to Go code |
esp32 | 84 | 2 months ago | Transpile Go into Arduino code |
f4go | 45 | about 1 year ago | Transpile FORTRAN 77 code to Go code |
gopherjs | 12,676 | 10 days ago | Compiler from Go to JavaScript |
tardisgo | 432 | almost 8 years ago | Golang to Haxe to CPP/CSharp/Java/JavaScript transpiler |
Awesome Go / Goroutines | |||
ants | 12,782 | 16 days ago | A high-performance and low-cost goroutine pool in Go |
artifex | 200 | 3 months ago | Simple in-memory job queue for Golang using worker-based dispatching |
async | 4 | 7 months ago | An asynchronous task package with async/await style for Go |
async | 216 | about 1 month ago | An alternative sync library for Go (Future, Promise, Locks) |
async | 137 | almost 4 years ago | A safe way to execute functions asynchronously, recovering them in case of panic |
async-job | 10 | over 2 years ago | AsyncJob is an asynchronous queue job manager with light code, clear and speed |
breaker | 18 | over 3 years ago | Flexible mechanism to make execution flow interruptible |
channelify | 31 | over 3 years ago | Transform your function to return channels for easy and powerful parallel processing |
conc | 8,952 | 6 months ago | is your toolbelt for structured concurrency in go, making common tasks easier and safer |
concurrency-limiter | 17 | almost 2 years ago | Concurrency limiter with support for timeouts, dynamic priority and context cancellation of goroutines |
conexec | 16 | over 4 years ago | A concurrent toolkit to help execute funcs concurrently in an efficient and safe way. It supports specifying the overall timeout to avoid blocking and uses goroutine pool to improve efficiency |
cyclicbarrier | 142 | over 4 years ago | CyclicBarrier for golang |
execpool | 22 | over 3 years ago | A pool built around exec.Cmd that spins up a given number of processes in advance and attaches stdin and stdout to them when needed. Very similar to FastCGI or Apache Prefork MPM but works for any command |
flowmatic | 362 | 12 days ago | Structured concurrency made easy |
go-accumulator | 7 | 2 months ago | Solution for accumulation of events and their subsequent processing |
go-actor | 144 | about 2 months ago | A tiny library for writing concurrent programs using actor model |
go-floc | 269 | about 3 years ago | Orchestrate goroutines with ease |
go-flow | 220 | over 5 years ago | Control goroutines execution order |
go-tools/multithreading | 15 | over 5 years ago | Manage a pool of goroutines using this lightweight library with a simple API |
go-trylock | 35 | over 3 years ago | TryLock support on read-write lock for Golang |
go-waitgroup | 48 | 4 months ago | Like with error handling and concurrency control |
go-workerpool | 12 | about 2 years ago | Inspired from Java Thread Pool, Go WorkerPool aims to control heavy Go Routines |
go-workers | 164 | over 2 years ago | Easily and safely run workers for large data processing pipelines |
goccm | 70 | over 1 year ago | Go Concurrency Manager package limits the number of goroutines that allowed to run concurrently |
gohive | 52 | 11 months ago | A highly performant and easy to use Goroutine pool for Go |
gollback | 124 | over 1 year ago | asynchronous simple function utilities, for managing execution of closures and callbacks |
gowl | 69 | 12 months ago | Gowl is a process management and process monitoring tool at once. An infinite worker pool gives you the ability to control the pool and processes and monitor their status |
goworker | 2,794 | about 2 years ago | goworker is a Go-based background worker |
gowp | 499 | 14 days ago | gowp is concurrency limiting goroutine pool |
gpool | 90 | almost 5 years ago | manages a resizeable pool of context-aware goroutines to bound concurrency |
grpool | 746 | over 5 years ago | Lightweight Goroutine pool |
hands | 10 | over 2 years ago | A process controller used to control the execution and return strategies of multiple goroutines |
Hunch | 103 | over 2 years ago | Hunch provides functions like: , , , etc., that makes asynchronous flow control more intuitive |
kyoo | 51 | over 1 year ago | Provides an unlimited job queue and concurrent worker pools |
neilotoole/errgroup | 160 | almost 2 years ago | Drop-in alternative to , limited to a pool of N worker goroutines |
nursery | 65 | over 3 years ago | Structured concurrency in Go |
oversight | Oversight is a complete implementation of the Erlang supervision trees | ||
parallel-fn | 36 | almost 7 years ago | Run functions in parallel |
pond | 1,471 | 13 days ago | Minimalistic and High-performance goroutine worker pool written in Go |
pool | 726 | over 3 years ago | Limited consumer goroutine or unlimited goroutine pool for easier goroutine handling and cancellation |
rill | 497 | 11 days ago | Go concurrency with channel transformations. No boilerplate, type safety, batching and error handling |
routine | 228 | about 2 months ago | is a for go library. It encapsulates and provides some easy-to-use, non-competitive, high-performance context access interfaces, which can help you access coroutine context information more gracefully |
routine | 61 | 9 months ago | go routine control with context, support: Main, Go, Pool and some useful Executors |
semaphore | 102 | over 4 years ago | Semaphore pattern implementation with timeout of lock/unlock operations based on channel and context |
semaphore | 173 | over 3 years ago | Fast resizable semaphore implementation based on CAS (faster than channel-based semaphore implementations) |
stl | 30 | about 4 years ago | Software transactional locks based on Software Transactional Memory (STM) concurrency control mechanism |
threadpool | 102 | over 4 years ago | Golang threadpool implementation |
tunny | 3,880 | over 1 year ago | Goroutine pool for golang |
worker-pool | 92 | over 3 years ago | goworker is a Go simple async worker pool |
workerpool | 1,314 | 4 months ago | Goroutine pool that limits the concurrency of task execution, not the number of tasks queued |
Awesome Go / GUI | |||
app | 7,906 | 10 days ago | Package to create apps with GO, HTML and CSS. Supports: MacOS, Windows in progress |
cimgui-go | 331 | 12 days ago | Auto generated Go wrapper for via |
Cogent Core | 1,699 | 9 days ago | A framework for building 2D and 3D apps that run on macOS, Windows, Linux, iOS, Android, and the web |
DarwinKit | 4,989 | 3 months ago | Build native macOS applications using Go |
energy | 365 | 10 days ago | Cross-platform based on LCL(Native System UI Control Library) and CEF(Chromium Embedded Framework) (Windows/ macOS / Linux) |
fyne | 24,770 | 12 days ago | Cross platform native GUIs designed for Go based on Material Design. Supports: Linux, macOS, Windows, BSD, iOS and Android |
gio | Gio is a library for writing cross-platform immediate mode GUI-s in Go. Gio supports all the major platforms: Linux, macOS, Windows, Android, iOS, FreeBSD, OpenBSD and WebAssembly | ||
go-gtk | Go bindings for GTK | ||
go-sciter | 2,577 | over 1 year ago | Go bindings for Sciter: the Embeddable HTML/CSS/script engine for modern desktop UI development. Cross platform |
Goey | Cross platform UI toolkit aggregator for Windows / Linux / Mac. GTK, Cocoa, Windows API | ||
goradd/html5tag | 10 | 10 months ago | Library for outputting HTML5 tags |
gotk3 | 2,096 | 2 months ago | Go bindings for GTK3 |
gowd | 430 | over 1 year ago | Rapid and simple desktop UI development with GO, HTML, CSS and NW.js. Cross platform |
qt | 10,410 | 7 months ago | Qt binding for Go (support for Windows / macOS / Linux / Android / iOS / Sailfish OS / Raspberry Pi) |
Spot | 1,091 | 4 months ago | Reactive, cross-platform desktop GUI toolkit |
ui | 8,336 | over 2 years ago | Platform-native GUI library for Go. Cross platform |
unison | 193 | 11 days ago | A unified graphical user experience toolkit for Go desktop applications. macOS, Windows, and Linux are supported |
Wails | Mac, Windows, Linux desktop apps with HTML UI using built-in OS HTML renderer | ||
walk | 6,831 | 9 months ago | Windows application library kit for Go |
webview | 12,552 | 12 days ago | Cross-platform webview window with simple two-way JavaScript bindings (Windows / macOS / Linux) |
AppIndicator Go | 6 | about 2 years ago | Go bindings for libappindicator3 C library |
gosx-notifier | 588 | over 4 years ago | OSX Desktop Notifications library for Go |
mac-activity-tracker | 28 | 12 months ago | OSX library to notify about any (pluggable) activity on your machine |
mac-sleep-notifier | 32 | over 5 years ago | OSX Sleep/Wake notifications in golang |
robotgo | 9,593 | 25 days ago | Go Native cross-platform GUI system automation. Control the mouse, keyboard and other |
systray | 3,273 | 3 months ago | Cross platform Go library to place an icon and menu in the notification area |
trayhost | 254 | 11 months ago | Cross-platform Go library to place an icon in the host operating system's taskbar |
zenity | 710 | about 1 month ago | Cross-platform Go library and CLI to create simple dialogs that interact graphically with the user |
Awesome Go / Hardware | |||
arduino-cli | 4,329 | 10 days ago | Official Arduino CLI and library. Can run standalone, or be incorporated into larger Go projects |
emgo | 1,067 | almost 3 years ago | Go-like language for programming embedded systems (e.g. STM32 MCU) |
ghw | 1,627 | 17 days ago | Golang hardware discovery/inspection library |
go-osc | 199 | over 1 year ago | Open Sound Control (OSC) bindings for Go |
go-rpio | 2,183 | about 1 year ago | GPIO for Go, doesn't require cgo |
goroslib | 323 | 27 days ago | Robot Operating System (ROS) library for Go |
joystick | 59 | over 1 year ago | a polled API to read the state of an attached joystick |
sysinfo | 520 | 24 days ago | A pure Go library providing Linux OS / kernel / hardware system information |
Awesome Go / Images | |||
bild | 3,984 | 18 days ago | Collection of image processing algorithms in pure Go |
bimg | 2,675 | 6 months ago | Small package for fast and efficient image processing using libvips |
cameron | 119 | about 2 years ago | An avatar generator for Go |
canvas | 1,485 | 12 days ago | Vector graphics to PDF, SVG or rasterized image |
color-extractor | 93 | about 1 year ago | Dominant color extractor with no external dependencies |
darkroom | 225 | 6 months ago | An image proxy with changeable storage backends and image processing engines with focus on speed and resiliency |
draft | 579 | about 3 years ago | Generate High Level Microservice Architecture diagrams for GraphViz using simple YAML syntax |
geopattern | 1,269 | almost 6 years ago | Create beautiful generative image patterns from a string |
gg | 4,404 | 10 months ago | 2D rendering in pure Go |
gift | 1,747 | about 1 year ago | Package of image processing filters |
gltf | 242 | about 1 month ago | Efficient and robust glTF 2.0 reader, writer and validator |
go-cairo | 143 | 7 months ago | Go binding for the cairo graphics library |
go-gd | 58 | over 6 years ago | Go binding for GD library |
go-nude | 410 | about 1 year ago | Nudity detection with Go |
go-webcolors | 27 | about 9 years ago | Port of webcolors library from Python to Go |
go-webp | 220 | 11 months ago | Library for encode and decode webp pictures, using libwebp |
gocv | 6,626 | 9 days ago | Go package for computer vision using OpenCV 3.3+ |
goimagehash | 736 | 9 months ago | Go Perceptual image hashing package |
goimghdr | 40 | over 5 years ago | The imghdr module determines the type of image contained in a file for Go |
govatar | 586 | about 2 years ago | Library and CMD tool for generating funny avatars |
govips | 1,260 | about 2 months ago | A lightning fast image processing and resizing library for Go |
gowitness | 3,026 | 10 days ago | Screenshoting webpages using go and headless chrome on command line |
gridder | 77 | about 3 years ago | A Grid based 2D Graphics library |
image2ascii | 868 | about 2 years ago | Convert image to ASCII |
imagick | 1,757 | 18 days ago | Go binding to ImageMagick's MagickWand C API |
imaginary | 5,534 | 5 months ago | Fast and simple HTTP microservice for image resizing |
imaging | 5,252 | about 1 year ago | Simple Go image processing package |
imagor | 3,370 | 19 days ago | Fast, secure image processing server and Go library, using libvips |
img | 154 | over 9 years ago | Selection of image manipulation tools |
ln | 3,269 | about 5 years ago | 3D line art rendering in Go |
mergi | 231 | over 4 years ago | Tool & Go library for image manipulation (Merge, Crop, Resize, Watermark, Animate) |
mort | 506 | over 1 year ago | Storage and image processing server written in Go |
mpo | 17 | over 1 year ago | Decoder and conversion tool for MPO 3D Photos |
picfit | 2,108 | about 1 month ago | An image resizing server written in Go |
pt | 2,077 | over 5 years ago | Path tracing engine written in Go |
rez | 213 | about 7 years ago | Image resizing in pure Go and SIMD |
scout | 15 | 3 months ago | Scout is a standalone open source software solution for DIY video security |
smartcrop | 1,812 | over 1 year ago | Finds good crops for arbitrary images and crop sizes |
steganography | 313 | 5 months ago | Pure Go Library for LSB steganography |
stegify | 1,199 | over 1 year ago | Go tool for LSB steganography, capable of hiding any file within an image |
svgo | 2,144 | almost 2 years ago | Go Language Library for SVG generation |
tga | 33 | over 9 years ago | Package tga is a TARGA image format decoder/encoder |
transformimgs | 221 | 24 days ago | Transformimgs resizes and optimises images for Web using next-generation formats |
webp-server | 73 | over 3 years ago | Simple and minimal image server capable of storing, resizing, converting and caching images |
Awesome Go / IoT (Internet of Things) | |||
connectordb | 402 | over 2 years ago | Open-Source Platform for Quantified Self & IoT |
devices | 263 | over 8 years ago | Suite of libraries for IoT devices, experimental for x/exp/io |
ekuiper | 1,467 | 4 days ago | Lightweight data stream processing engine for IoT edge |
eywa | 64 | over 7 years ago | Project Eywa is essentially a connection manager that keeps track of connected devices |
flogo | 2,416 | 6 months ago | Project Flogo is an Open Source Framework for IoT Edge Apps & Integration |
gatt | 1,135 | about 2 years ago | Gatt is a Go package for building Bluetooth Low Energy peripherals |
gobot | 8,892 | 4 months ago | Gobot is a framework for robotics, physical computing, and the Internet of Things |
huego | 250 | over 1 year ago | An extensive Philips Hue client library for Go |
iot | 66 | almost 5 years ago | IoT is a simple framework for implementing a Google IoT Core device |
mainflux | 42 | 2 months ago | Industrial IoT Messaging and Device Management Server |
periph | Peripherals I/O to interface with low-level board facilities | ||
rulego | 800 | about 8 hours ago | RuleGo is a lightweight, high-performance, embedded, orchestrable component-based rule engine for IoT edge |
sensorbee | 230 | almost 5 years ago | Lightweight stream processing engine for IoT |
shifu | 1,280 | 11 days ago | Kubernetes native IoT development framework |
smart-home | 80 | about 1 month ago | Software package for IoT automation |
Awesome Go / Job Scheduler | |||
Cadence-client | 345 | about 1 month ago | A framework for authoring workflows and activities running on top of the Cadence orchestration engine made by Uber |
cdule | 48 | almost 2 years ago | Job scheduler library with database support |
cheek | 146 | 8 days ago | A simple crontab like scheduler that aims to offer a KISS approach to job scheduling |
clockwerk | 145 | 10 days ago | Go package to schedule periodic jobs using a simple, fluent syntax |
cronticker | 16 | almost 4 years ago | A ticker implementation to support cron schedules |
Dagu | 1,552 | 3 days ago | No-code workflow executor. it executes DAGs defined in a simple YAML format |
go-cron | 230 | over 4 years ago | 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 |
go-dag | 17 | about 2 months ago | A framework developed in Go that manages the execution of workflows described by directed acyclic graphs |
go-quartz | 1,767 | 14 days ago | Simple, zero-dependency scheduling library for Go |
gocron | 5,496 | 22 days ago | Easy and fluent Go job scheduling. This is an actively maintained fork of |
goflow | 371 | 3 months ago | A simple but powerful DAG scheduler and dashboard |
gron | 1,026 | over 1 year ago | Define time-based tasks using a simple Go API and Gron’s scheduler will run them accordingly |
gronx | 399 | 19 days ago | Cron expression parser, task runner and daemon consuming crontab like task list |
JobRunner | 1,042 | almost 4 years ago | Smart and featureful cron job scheduler with job queuing and live monitoring built in |
jobs | 500 | over 6 years ago | Persistent and flexible background jobs library |
leprechaun | 104 | over 2 years ago | Job scheduler that supports webhooks, crons and classic scheduling |
sched | 28 | over 3 years ago | A job scheduler with the ability to fast-forward time |
scheduler | 446 | over 2 years ago | Cronjobs scheduling made easy |
tasks | 294 | about 1 month ago | An easy to use in-process scheduler for recurring tasks in Go |
Awesome Go / JSON | |||
ajson | 233 | about 1 month ago | Abstract JSON for golang with JSONPath support |
ask | 44 | about 1 year ago | Easy access to nested values in maps and slices. Works in combination with encoding/json and other packages that "Unmarshal" arbitrary data into Go data-types |
dynjson | 16 | over 1 year ago | Client-customizable JSON formats for dynamic APIs |
ej | 10 | over 4 years ago | Write and read JSON from different sources succinctly |
epoch | 14 | 8 months ago | Contains primitives for marshaling/unmarshalling Unix timestamp/epoch to/from build-in time.Time type in JSON |
fastjson | 2,260 | 8 months ago | Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection |
gabs | 3,458 | 4 months ago | For parsing, creating and editing unknown or dynamic JSON in Go |
gjo | 126 | over 3 years ago | Small utility to create JSON objects |
GJSON | 14,191 | 11 days ago | Get a JSON value with one line of code |
go-jsonerror | 16 | about 5 years ago | Go-JsonError is meant to allow us to easily create json response errors that follow the JsonApi spec |
go-respond | 54 | about 3 years ago | Go package for handling common HTTP JSON responses |
gojmapr | 22 | over 1 year ago | Get simple struct from complex json by json path |
gojq | 191 | over 1 year ago | JSON query in Golang |
gojson | 2,659 | about 3 years ago | Automatically generate Go (golang) struct definitions from example JSON |
htmljson | 7 | about 2 months ago | Rich rendering of JSON as HTML in Go |
JayDiff | 106 | 7 months ago | JSON diff utility written in Go |
jettison | 173 | about 1 year ago | Fast and flexible JSON encoder for Go |
jscan | 88 | 8 months ago | High performance zero-allocation JSON iterator |
JSON-to-Go | Convert JSON to Go struct | ||
JSON-to-Proto | Convert JSON to Protobuf online | ||
json2go | 131 | almost 3 years ago | Advanced JSON to Go struct conversion. Provides package that can parse multiple JSON documents and create struct to fit them all |
jsonapi-errors | 14 | almost 8 years ago | Go bindings based on the JSON API errors reference |
jsoncolor | 45 | 8 months ago | Drop-in replacement for that outputs colorized JSON |
jsondiff | 517 | 12 days ago | JSON diff library for Go based on RFC6902 (JSON Patch) |
jsonf | 65 | almost 4 years ago | Console tool for highlighted formatting and struct query fetching JSON |
jsongo | 109 | about 3 years ago | Fluent API to make it easier to create Json objects |
jsonhal | 14 | over 4 years ago | Simple Go package to make custom structs marshal into HAL compatible JSON responses |
jsonhandlers | 2 | over 1 year ago | JSON library to expose simple handlers that lets you easily read and write json from various sources |
jsonic | 11 | over 3 years ago | Utilities to handle and query JSON without defining structs in a type safe manner |
jsonvalue | 186 | 14 days ago | A fast and convenient library for unstructured JSON data, replacing |
jzon | 11 | about 1 year ago | JSON library with standard compatible API/behavior |
kazaam | 279 | over 2 years ago | API for arbitrary transformation of JSON documents |
mapslice-json | 19 | 7 months ago | Go MapSlice for ordered marshal/ unmarshal of maps in JSON |
marshmallow | 374 | over 1 year ago | Performant JSON unmarshalling for flexible use cases |
mp | 47 | over 8 years ago | Simple cli email parser. It currently takes stdin and outputs JSON |
OjG | 843 | 27 days ago | Optimized JSON for Go is a high performance parser with a variety of additional JSON tools including JSONPath |
omg.jsonparser | 6 | about 3 years ago | Simple JSON parser with validation by condition via golang struct fields tags |
ujson | 76 | 4 months ago | Fast and minimal JSON parser and transformer that works on unstructured JSON |
vjson | 41 | 4 months ago | Go package for validating JSON objects with declaring a JSON schema with fluent API |
Awesome Go / Logging | |||
distillog | 31 | about 6 years ago | distilled levelled logging (think of it as stdlib + log levels) |
glg | 190 | 25 days ago | glg is simple and fast leveled logging library for Go |
glo | 15 | over 5 years ago | PHP Monolog inspired logging facility with identical severity levels |
glog | 3,536 | 3 months ago | Leveled execution logs for Go |
go-cronowriter | 56 | over 3 years ago | Simple writer that rotate log files automatically based on current date and time, like cronolog |
go-log | 10 | 4 months ago | A logging library with stack traces, object dumping and optional timestamps |
go-log | 14 | over 6 years ago | Simple and configurable Logging in Go, with level, formatters and writers |
go-log | 34 | over 5 years ago | Log lib supports level and multi handlers |
go-log | 43 | over 6 years ago | Log4j implementation in Go |
go-logger | 288 | over 5 years ago | Simple logger of Go Programs, with level handlers |
gomol | 19 | over 5 years ago | Multiple-output, structured logging for Go with extensible logging outputs |
gone/log | 48 | over 3 years ago | Fast, extendable, full-featured, std-lib source compatible log library |
httpretty | 393 | 19 days ago | Pretty-prints your regular HTTP requests on your terminal for debugging (similar to http.DumpRequest) |
journald | 39 | over 3 years ago | Go implementation of systemd Journal's native API for logging |
kemba | 13 | about 16 hours ago | A tiny debug logging tool inspired by , great for CLI tools and applications |
log | 10 | almost 5 years ago | An O(1) logging system that allows you to connect one log to multiple writers (e.g. stdout, a file and a TCP connection) |
log | 1,366 | 11 months ago | Structured logging package for Go |
log | 293 | about 1 year ago | Simple, configurable and scalable Structured Logging for Go |
log | 26 | almost 7 years ago | Structured log interface for Go cleanly separates logging facade from its implementation |
log | 16 | almost 2 years ago | Simple leveled logging wrapper around standard log package |
log | 3 | 5 months ago | A simple logging framework out of the box |
log-voyage | 94 | over 7 years ago | Full-featured logging saas written in golang |
log15 | 1,103 | over 1 year ago | Simple, powerful logging for Go |
logdump | 11 | over 6 years ago | Package for multi-level logging |
logex | 43 | 6 months ago | Golang log lib, supports tracking and level, wrap by standard log lib |
logger | 158 | almost 3 years ago | Minimalistic logging library for Go |
logo | 12 | almost 4 years ago | Golang logger to different configurable writers |
logrus | 24,597 | 3 months ago | Structured logger for Go |
logrusiowriter | 16 | about 4 years ago | implementation using logger |
logrusly | 28 | about 3 years ago | plug-in to send errors to a |
logur | 201 | about 4 years ago | An opinionated logger interface and collection of logging best practices with adapters and integrations for well-known libraries ( , , , , etc) |
logutils | 368 | over 1 year ago | Utilities for slightly better logging in Go (Golang) extending the standard logger |
logxi | 358 | over 4 years ago | 12-factor app logger that is fast and makes you happy |
lumberjack | 4,812 | 2 months ago | Simple rolling logger, implements io.WriteCloser |
mlog | 34 | about 6 years ago | Simple logging module for go, with 5 levels, an optional rotating logfile feature and stdout/stderr output |
noodlog | 44 | over 1 year ago | Parametrized JSON logging library which lets you obfuscate sensitive data and marshal any kind of content. No more printed pointers instead of values, nor escape chars for the JSON strings |
onelog | 414 | over 5 years ago | Onelog is a dead simple but very efficient JSON logger. It is the fastest JSON logger out there in all scenarios. Also, it is one of the logger with the lowest allocation |
ozzo-log | 122 | almost 4 years ago | High performance logging supporting log severity, categorization, and filtering. Can send filtered log messages to various targets (e.g. console, network, mail) |
phuslu/log | 659 | 16 days ago | High performance structured logging |
pp | 1,844 | over 1 year ago | Colored pretty printer for Go language |
rollingwriter | 295 | 12 months ago | RollingWriter is an auto-rotate implementation with multi policies to provide log file rotation |
seelog | 1,638 | over 5 years ago | Logging functionality with flexible dispatching, filtering, and formatting |
slf4g | 3 | about 1 month ago | Simple Logging Facade for Golang: Simple structured logging; but powerful, extendable and customizable, with huge amount of learnings from decades of past logging frameworks |
slog | 391 | 10 days ago | Lightweight, configurable, extensible logger for Go |
slog-formatter | 109 | about 1 month ago | Common formatters for slog and helpers to build your own |
slog-multi | 360 | 11 days ago | Chain of slog.Handler (pipeline, fanout...) |
slogor | A colorful slog handler | ||
spew | 6,053 | 6 months ago | Implements a deep pretty printer for Go data structures to aid in debugging |
sqldb-logger | 350 | 10 months ago | A logger for Go SQL database driver without modify existing *sql.DB stdlib usage |
stdlog | 47 | about 9 years ago | Stdlog is an object-oriented library providing leveled logging. It is very useful for cron jobs |
structy/log | 5 | over 2 years ago | A simple to use log system, minimalist but with features for debugging and differentiation of messages |
tail | 2,711 | almost 2 years ago | Go package striving to emulate the features of the BSD tail program |
tint | 731 | about 1 month ago | A slog.Handler that writes tinted logs |
xlog | 8 | over 5 years ago | Plugin architecture and flexible log system for Go, with level ctrl, multiple log target and custom log format |
xlog | 139 | 3 months ago | Structured logger for aware HTTP handlers with flexible dispatching |
xylog | 16 | over 1 year ago | Leveled and structured logging, dynamic fields, high performance, zone management, simple configuration, and readable syntax |
yell | 1 | over 2 years ago | Yet another minimalistic logging library |
zap | 21,789 | 30 days ago | Fast, structured, leveled logging in Go |
zax | 23 | 24 days ago | Integrate Context with Zap logger, which leads to more flexibility in Go logging |
zerolog | 10,444 | about 2 months ago | Zero-allocation JSON logger |
zkits-logger | 26 | over 1 year ago | A powerful zero-dependency JSON logger |
zl | 5 | 2 months ago | High Developer Experience, zap based logger. It offers rich functionality but is easy to configure |
Awesome Go / Machine Learning | |||
bayesian | 801 | 11 months ago | Naive Bayesian Classification for Golang |
CloudForest | 739 | over 2 years ago | Fast, flexible, multi-threaded ensembles of decision trees for machine learning in pure Go |
ddt | 35 | over 3 years ago | Dynamic decision tree, create trees defining customizable rules |
eaopt | 885 | 7 months ago | An evolutionary optimization library |
evoli | 31 | almost 3 years ago | Genetic Algorithm and Particle Swarm Optimization library |
fonet | 82 | over 3 years ago | A Deep Neural Network library written in Go |
go-cluster | 42 | almost 2 years ago | Go implementation of the k-modes and k-prototypes clustering algorithms |
go-deep | 532 | 3 months ago | A feature-rich neural network library in Go |
go-fann | 116 | over 9 years ago | Go bindings for Fast Artificial Neural Networks(FANN) library |
go-featureprocessing | 118 | about 2 months ago | Fast and convenient feature processing for low latency machine learning in Go |
go-galib | 198 | almost 9 years ago | Genetic Algorithms library written in Go / golang |
go-pr | 65 | over 11 years ago | Pattern recognition package in Go lang |
gobrain | 558 | almost 4 years ago | Neural Networks written in go |
godist | 38 | over 9 years ago | Various probability distributions, and associated methods |
goga | 217 | over 2 years ago | Genetic algorithm library for Go |
GoLearn | 9,268 | 9 months ago | General Machine Learning library for Go |
golinear | 45 | about 6 years ago | liblinear bindings for Go |
GoMind | 84 | over 2 years ago | A simplistic Neural Network Library in Go |
goml | 1,561 | about 2 years ago | On-line Machine Learning in Go |
GoMLX | 269 | 8 days ago | An accelerated Machine Learning framework for Go |
gonet | 82 | over 4 years ago | Neural Network for Go |
Goptuna | 256 | about 1 month ago | Bayesian optimization framework for black-box functions written in Go. Everything will be optimized |
goRecommend | 204 | about 10 years ago | Recommendation Algorithms library written in Go |
gorgonia | 5,515 | 2 months ago | graph-based computational library like Theano for Go that provides primitives for building various machine learning and neural network algorithms |
gorse | 8,493 | 2 months ago | An offline recommender system backend based on collaborative filtering written in Go |
goscore | 97 | about 5 years ago | Go Scoring API for PMML |
gosseract | 2,678 | 3 months ago | Go package for OCR (Optical Character Recognition), by using Tesseract C++ library |
hugot | 265 | 26 days ago | Huggingface transformer pipelines for golang with onnxruntime |
libsvm | 73 | over 8 years ago | libsvm golang version derived work based on LIBSVM 3.14 |
m2cgen | 2,800 | 2 months ago | A CLI tool to transpile trained classic ML models into a native Go code with zero dependencies, written in Python with Go language support |
neat | 71 | over 6 years ago | Plug-and-play, parallel Go framework for NeuroEvolution of Augmenting Topologies (NEAT) |
neural-go | 69 | about 4 years ago | Multilayer perceptron network implemented in Go, with training via backpropagation |
ocrserver | 689 | about 3 years ago | A simple OCR API server, seriously easy to be deployed by Docker and Heroku |
onnx-go | 688 | about 1 month ago | Go Interface to Open Neural Network Exchange (ONNX) |
probab | 20 | about 9 years ago | Probability distribution functions. Bayesian inference. Written in pure Go |
randomforest | 46 | 8 months ago | Easy to use Random Forest library for Go |
regommend | 312 | about 5 years ago | Recommendation & collaborative filtering engine |
shield | 156 | over 4 years ago | Bayesian text classifier with flexible tokenizers and storage backends for Go |
tfgo | 2,415 | 7 months ago | 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 |
Varis | 54 | about 6 years ago | Golang Neural Network |
Awesome Go / Messaging | |||
ami | 28 | over 4 years ago | Go client to reliable queues based on Redis Cluster Streams |
amqp | 1,490 | about 2 months ago | Go RabbitMQ Client Library |
APNs2 | 2,989 | 2 months ago | HTTP/2 Apple Push Notification provider for Go — Send push notifications to iOS, tvOS, Safari and OSX apps |
Asynq | 9,503 | 3 months ago | A simple, reliable, and efficient distributed task queue for Go built on top of Redis |
Beaver | 1,543 | 24 days ago | A real time messaging server to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps |
Bus | 335 | over 1 year ago | Minimalist message bus implementation for internal communication |
Centrifugo | 8,320 | 11 days ago | Real-time messaging (Websockets or SockJS) server in Go |
Chanify | 1,264 | over 1 year ago | A push notification server send message to your iOS devices |
Commander | 66 | over 3 years ago | A high-level event driven consumer/producer supporting various "dialects" such as Apache Kafka |
Confluent Kafka Golang Client | 4,605 | 9 days ago | confluent-kafka-go is Confluent's Golang client for Apache Kafka and the Confluent Platform |
dbus | 976 | 21 days ago | Native Go bindings for D-Bus |
drone-line | 80 | over 1 year ago | Sending notifications using a binary, docker or Drone CI |
emitter | 505 | over 1 year ago | Emits events using Go way, with wildcard, predicates, cancellation possibilities and many other good wins |
event | 58 | over 6 years ago | Implementation of the pattern observer |
EventBus | 1,718 | 4 months ago | The lightweight event bus with async compatibility |
gaurun-client | 11 | about 3 years ago | Gaurun Client written in Go |
Glue | 415 | over 4 years ago | Robust Go and Javascript Socket Library (Alternative to Socket.io) |
go-eventbus | 4 | 19 days ago | Simple Event Bus package for Go |
Go-MediatR | 207 | 24 days ago | A library for handling mediator patterns and simplified CQRS patterns within an event-driven architecture, inspired by csharp MediatR library |
go-mq | 91 | about 1 year ago | RabbitMQ client with declarative configuration |
go-notify | 69 | almost 4 years ago | Native implementation of the freedesktop notification spec |
go-nsq | 2,587 | about 1 month ago | the official Go package for NSQ |
go-res | 63 | 3 months ago | Package for building REST/real-time services where clients are synchronized seamlessly, using NATS and Resgate |
go-socket.io | 5,738 | 13 days ago | socket.io library for golang, a realtime application framework |
go-vitotrol | 23 | 23 days ago | Client library to Viessmann Vitotrol web service |
Gollum | 939 | over 1 year ago | A n:m multiplexer that gathers messages from different sources and broadcasts them to a set of destinations |
golongpoll | 654 | about 1 year ago | HTTP longpoll server library that makes web pub-sub simple |
gopush-cluster | 2,084 | over 7 years ago | gopush-cluster is a go push server cluster |
gorush | 7,992 | 23 days ago | Push notification server using and google |
gosd | 24 | about 2 years ago | A library for scheduling when to dispatch a message to a channel |
guble | 158 | almost 7 years ago | 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 |
hare | 53 | about 2 years ago | A user friendly library for sending messages and listening to TCP sockets |
hub | 146 | almost 4 years ago | A Message/Event Hub for Go applications, using publish/subscribe pattern with support for alias like rabbitMQ exchanges |
hypermatch | 18 | 17 days ago | A very fast and efficient Go library for matching events to a large set of rules |
jazz | 18 | over 5 years ago | A simple RabbitMQ abstraction layer for queue administration and publishing and consuming of messages |
machinery | 7,514 | about 2 months ago | Asynchronous task queue/job queue based on distributed message passing |
mangos | 672 | 11 days ago | Pure go implementation of the Nanomsg ("Scalability Protocols") with transport interoperability |
melody | 3,706 | 3 months ago | Minimalist framework for dealing with websocket sessions, includes broadcasting and automatic ping/pong handling |
Mercure | 3,919 | 12 days ago | Server and library to dispatch server-sent updates using the Mercure protocol (built on top of Server-Sent Events) |
messagebus | 272 | over 3 years ago | messagebus is a Go simple async message bus, perfect for using as event bus when doing event sourcing, CQRS, DDD |
NATS Go Client | 5,476 | 9 days ago | Lightweight and high performance publish-subscribe and distributed queueing messaging system - this is the Go library |
nsq-event-bus | 79 | over 6 years ago | A tiny wrapper around NSQ topic and channel |
oplog | 111 | 15 days ago | Generic oplog/replication system for REST APIs |
pubsub | 425 | 5 months ago | Simple pubsub package for go |
Quamina | 393 | 11 days ago | Fast pattern-matching for filtering messages and events |
rabbitroutine | 110 | 7 months ago | Lightweight library that handles RabbitMQ auto-reconnect and publishing retries. The library takes into account the need to re-declare entities in RabbitMQ after reconnection |
rabbus | 97 | about 5 years ago | A tiny wrapper over amqp exchanges and queues |
rabtap | 264 | 19 days ago | RabbitMQ swiss army knife cli app |
RapidMQ | 68 | almost 7 years ago | RapidMQ is a lightweight and reliable library for managing of the local messages queue |
Ratus | 109 | 10 days ago | Ratus is a RESTful asynchronous task queue server |
redisqueue | 130 | 7 months ago | redisqueue provides a producer and consumer of a queue that uses Redis streams |
rmqconn | 23 | over 4 years ago | 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 |
sarama | 11,440 | 11 days ago | Go library for Apache Kafka |
Uniqush-Push | 1,537 | over 4 years ago | Redis backed unified push service for server-side notifications to mobile devices |
Watermill | 7,295 | 16 days ago | Working efficiently with message streams. Building event driven applications, enabling event sourcing, RPC over messages, sagas. Can use conventional pub/sub implementations like Kafka or RabbitMQ, but also HTTP or MySQL binlog |
zmq4 | 1,171 | 7 months ago | Go interface to ZeroMQ version 4. Also available for and |
Awesome Go / Microsoft Office | |||
unioffice | 4,351 | 26 days ago | Pure go library for creating and processing Office Word (.docx), Excel (.xlsx) and Powerpoint (.pptx) documents |
Awesome Go / Microsoft Office / Microsoft Excel | |||
excelize | 18,047 | 12 days ago | Golang library for reading and writing Microsoft Excel™ (XLSX) files |
exl | 30 | 4 months ago | Excel binding to struct written in Go.(Only supports Go1.18+) |
go-excel | 191 | about 1 year ago | A simple and light reader to read a relate-db-like excel as a table |
goxlsxwriter | 21 | over 2 years ago | Golang bindings for libxlsxwriter for writing XLSX (Microsoft Excel) files |
xlsx | 5,849 | 20 days ago | Library to simplify reading the XML format used by recent version of Microsoft Excel in Go programs |
xlsx | 174 | almost 4 years ago | Fast and safe way to read/update your existing Microsoft Excel files in Go programs |
Awesome Go / Microsoft Office / Microsoft Word | |||
godocx | 80 | about 1 month ago | Library for reading and writing Microsoft Word (Docx) files |
Awesome Go / Miscellaneous / Dependency Injection | |||
alice | 50 | over 7 years ago | Additive dependency injection container for Golang |
autowire | 8 | about 1 month ago | Dependency injection using Generics and reflection |
boot-go | Component-based development with dependency injection using reflections for Go developers | ||
componego | 27 | 14 days ago | A dependency injection framework based on components, allowing dynamic dependency replacement without duplicating code in tests |
cosban/di | A code generation based dependency injection wiring tool | ||
di | 232 | 10 months ago | A dependency injection container for go programming language |
dig | 3,878 | about 1 month ago | A reflection based dependency injection toolkit for Go |
dingo | 180 | 3 months ago | A dependency injection toolkit for Go, based on Guice |
do | 1,818 | about 2 months ago | A dependency injection framework based on Generics |
fx | 5,713 | 26 days ago | A dependency injection based application framework for Go (built on top of dig) |
gocontainer | 20 | over 4 years ago | Simple Dependency Injection Container |
goioc/di | 355 | 7 months ago | Spring-inspired Dependency Injection Container |
GoLobby/Container | 558 | 3 months ago | GoLobby Container is a lightweight yet powerful IoC dependency injection container for the Go programming language |
gontainer | 37 | about 1 month ago | A dependency injection service container for Go projects |
gontainer/gontainer | 15 | 2 months ago | A YAML-based Dependency Injection container for GO. It supports dependencies' scopes, and auto-detection of circular dependencies. Gontainer is concurrent-safe |
google/wire | 12,936 | 3 months ago | Automated Initialization in Go |
HnH/di | 8 | about 2 months ago | DI container library that is focused on clean API and flexibility |
kinit | 10 | over 3 years ago | Customizable dependency injection container with the global mode, cascade initialization and panic-safe finalization |
kod | 150 | 12 days ago | A generics based dependency injection framework for Go |
linker | 36 | 8 months ago | A reflection based dependency injection and inversion of control library with components lifecycle support |
nject | 29 | about 2 months ago | A type safe, reflective framework for libraries, tests, http endpoints, and service startup |
ore | 7 | 6 months ago | Lightweight, generic & simple dependency injection (DI) container |
wire | 37 | about 3 years ago | Strict Runtime Dependency Injection for Golang |
Awesome Go / Miscellaneous / Project Layout | |||
ardanlabs/service | 3,558 | 11 days ago | A for building production grade scalable web service applications |
cookiecutter-golang | 688 | 8 months ago | A Go application boilerplate template for quick starting projects following production best practices |
go-blueprint | 3,891 | 12 days ago | Allows users to spin up a quick Go project using a popular framework |
go-module | 30 | 10 days ago | Template for a typical module written on Go |
go-sample | 130 | over 5 years ago | A sample layout for Go application projects with the real code |
go-starter | 492 | 4 months ago | An opinionated production-ready RESTful JSON backend template, highly integrated with VSCode DevContainers |
go-todo-backend | 317 | over 1 year ago | Go Todo Backend example using modular project layout for product microservice |
gobase | 62 | over 1 year ago | A simple skeleton for golang application with basic setup for real golang application |
golang-standards/project-layout | 48,750 | 3 months ago | Set of common historical and emerging project layout patterns in the Go ecosystem. Note: despite the org-name they do not represent official golang standards, see for more information. Nonetheless, some may find the layout useful |
golang-templates/seed | 472 | 18 days ago | Go application GitHub repository template |
goxygen | 3,472 | 13 days ago | Generate a modern Web project with Go and Angular, React, or Vue in seconds |
insidieux/inizio | 18 | over 1 year ago | Golang project layout generator with plugins |
modern-go-application | 1,830 | about 1 year ago | Go application boilerplate and example applying modern practices |
nunu | 1,887 | 2 months ago | Nunu is a scaffolding tool for building Go applications |
pagoda | 2,082 | 10 days ago | Rapid, easy full-stack web development starter kit built in Go |
scaffold | 149 | almost 6 years ago | Scaffold generates a starter Go project layout. Lets you focus on business logic implemented |
wangyoucao577/go-project-layout | 26 | over 3 years ago | Set of practices and discussions on how to structure Go project layout |
Awesome Go / Miscellaneous / Strings | |||
bexp | 20 | about 1 month ago | Go implementation of Brace Expansion mechanism to generate arbitrary strings |
caps | 54 | 10 months ago | A case conversion library |
go-formatter | Implements surrounded by curly braces format strings | ||
gobeam/Stringy | 230 | 6 months ago | String manipulation library to convert string to camel case, snake case, kebab case / slugify etc |
strutil | 205 | over 2 years ago | String utilities |
sttr | 936 | about 1 month ago | cross-platform, cli app to perform various operations on string |
xstrings | 1,392 | 4 months ago | Collection of useful string functions ported from other languages |
Awesome Go / Miscellaneous / Uncategorized | |||
anagent | 15 | about 6 years ago | Minimalistic, pluggable Golang evloop/timer handler with dependency-injection |
antch | 259 | over 4 years ago | A fast, powerful and extensible web crawling & scraping framework |
archiver | 4,341 | 18 days ago | Library and command for making and extracting .zip and .tar.gz archives |
autoflags | 39 | over 2 years ago | Go package to automatically define command line flags from struct fields |
avgRating | 16 | about 7 years ago | Calculate average score and rating based on Wilson Score Equation |
banner | 447 | almost 4 years ago | Add beautiful banners into your Go applications |
base64Captcha | 2,107 | 4 months ago | Base64captch supports digit, number, alphabet, arithmetic, audio and digit-alphabet captcha |
basexx | 5 | over 1 year ago | Convert to, from, and between digit strings in various number bases |
battery | 246 | about 1 year ago | Cross-platform, normalized battery information library |
bitio | 242 | over 1 year ago | Highly optimized bit-level Reader and Writer for Go |
browscap_go | 48 | over 1 year ago | GoLang Library for |
captcha | 154 | 9 months ago | Package captcha provides an easy to use, unopinionated API for captcha generation |
common | 4 | 6 months ago | A library for server framework |
conv | 385 | about 3 years ago | Package conv provides fast and intuitive conversions across Go types |
datacounter | 48 | over 1 year ago | Go counters for readers/writer/http.ResponseWriter |
faker | 10 | about 2 years ago | Fake data generator |
faker | 92 | about 1 year ago | Random fake data and struct generator for Go |
ffmt | 305 | almost 3 years ago | Beautify data display for Humans |
gatus | 6,133 | 10 days ago | Automated service health dashboard |
go-commandbus | 12 | over 2 years ago | A slight and pluggable command-bus for Go |
go-commons-pool | 1,222 | over 1 year ago | Generic object pool for Golang |
go-openapi | Collection of packages to parse and utilize open-api schemas | ||
go-resiliency | 2,196 | 24 days ago | Resiliency patterns for golang |
go-unarr | 280 | 6 months ago | Decompression library for RAR, TAR, ZIP and 7z archives |
gofakeit | 4,514 | 15 days ago | Random data generator written in go |
gommit | 113 | about 1 month ago | Analyze git commit messages to ensure they follow defined patterns |
gopsutil | 10,528 | 12 days ago | Cross-platform library for retrieving process and system utilization(CPU, Memory, Disks, etc) |
gosh | 36 | over 1 year ago | Provide Go Statistics Handler, Struct, Measure Method |
gosms | 1,449 | over 3 years ago | Your own local SMS gateway in Go that can be used to send SMS |
gotoprom | 108 | over 1 year ago | Type-safe metrics builder wrapper library for the official Prometheus client |
gountries | 408 | 4 months ago | Package that exposes country and subdivision data |
gtree | 235 | 14 days ago | Provide CLI, Package and Web for tree output and directories creation from Markdown or programmatically |
health | 773 | 16 days ago | A simple and flexible health check library for Go |
health | 451 | 11 months ago | Easy to use, extensible health check library |
healthcheck | 268 | 10 months ago | An opinionated and concurrent health-check HTTP handler for RESTful services |
hostutils | 12 | 4 months ago | A golang library for packing and unpacking FQDNs list |
indigo | 109 | over 1 year ago | Distributed unique ID generator of using Sonyflake and encoded by Base58 |
lk | 367 | over 1 year ago | A simple licensing library for golang |
llvm | 1,185 | 4 months ago | Library for interacting with LLVM IR in pure Go |
metrics | 28 | over 1 year ago | Library for metrics instrumentation and Prometheus exposition |
morse | 82 | about 2 years ago | Library to convert to and from morse code |
numa | 30 | 10 months ago | NUMA is a utility library, which is written in go. It help us to write some NUMA-AWARED code |
openapi | 11 | over 1 year ago | OpenAPI 3.x parser |
pdfgen | 71 | over 6 years ago | HTTP service to generate PDF from Json requests |
persian | 86 | 9 months ago | Some utilities for Persian language in go |
sandid | 47 | about 2 years ago | Every grain of sand on earth has its own ID |
shellwords | 24 | over 1 year ago | A Golang library to manipulate strings according to the word parsing rules of the UNIX Bourne shell |
shortid | 937 | over 2 years ago | Distributed generation of super short, unique, non-sequential, URL friendly IDs |
shoutrrr | 980 | 3 months ago | Notification library providing easy access to various messaging services like slack, mattermost, gotify and smtp among others |
sitemap-format | 4 | almost 2 years ago | A simple sitemap generator, with a little syntactic sugar |
stateless | 942 | about 1 month ago | A fluent library for creating state machines |
stats | 170 | about 8 years ago | Monitors Go MemStats + System stats such as Memory, Swap and CPU and sends via UDP anywhere you want for logging etc |
turtle | 158 | about 3 years ago | Emojis for Go |
url-shortener | 48 | over 1 year ago | A modern, powerful, and robust URL shortener microservice with mysql support |
VarHandler | 5 | almost 8 years ago | Generate boilerplate http input and output handling |
varint | 14 | about 1 year ago | A faster varying length integer encoder/decoder than the one provided in the standard library |
xdg | 41 | 5 months ago | FreeDesktop.org (xdg) Specs implemented in Go |
xkg | 56 | almost 10 years ago | X Keyboard Grabber |
xz | 475 | 21 days ago | Pure golang package for reading and writing xz-compressed files |
Awesome Go / Natural Language Processing / Language Detection | |||
detectlanguage | 25 | over 2 years ago | Language Detection API Go Client. Supports batch requests, short phrase or single word language detection |
getlang | 170 | almost 4 years ago | Fast natural language detection package |
guesslanguage | 58 | almost 7 years ago | Functions to determine the natural language of a unicode text |
lingua-go | 1,169 | 2 months ago | An accurate natural language detection library, suitable for long and short text alike. Supports detecting multiple languages in mixed-language text |
whatlanggo | 638 | over 1 year ago | Natural language detection package for Go. Supports 84 languages and 24 scripts (writing systems e.g. Latin, Cyrillic, etc) |
Awesome Go / Natural Language Processing / Morphological Analyzers | |||
go-stem | 78 | over 6 years ago | Implementation of the porter stemming algorithm |
go2vec | 56 | about 6 years ago | Reader and utility functions for word2vec embeddings |
golibstemmer | 20 | over 10 years ago | Go bindings for the snowball libstemmer library including porter 2 |
gosentiwordnet | 10 | over 3 years ago | Sentiment analyzer using sentiwordnet lexicon in Go |
govader | 40 | over 1 year ago | Go implementation of |
govader-backend | 6 | 8 months ago | Microservice implementation of |
kagome | 816 | 2 months ago | JP morphological analyzer written in pure Go |
libtextcat | 13 | almost 12 years ago | Cgo binding for libtextcat C library. Guaranteed compatibility with version 2.2 |
nlp | 389 | about 7 years ago | Extract values from strings and fill your structs with nlp |
nlp | 447 | over 3 years ago | Go Natural Language Processing library supporting LSA (Latent Semantic Analysis) |
paicehusk | 29 | almost 11 years ago | Golang implementation of the Paice/Husk Stemming Algorithm |
porter | 12 | about 11 years ago | This is a fairly straightforward port of Martin Porter's C implementation of the Porter stemming algorithm |
porter2 | 46 | about 4 years ago | Really fast Porter 2 stemmer |
RAKE.go | 115 | over 4 years ago | Go port of the Rapid Automatic Keyword Extraction Algorithm (RAKE) |
snowball | 38 | over 7 years ago | Snowball stemmer port (cgo wrapper) for Go. Provides word stem extraction functionality |
spaGO | 1,747 | 9 months ago | Self-contained Machine Learning and Natural Language Processing library in Go |
spelling-corrector | 2 | over 2 years ago | A spelling corrector for the Spanish language or create your own |
Awesome Go / Natural Language Processing / Slugifiers | |||
go-slugify | 93 | over 4 years ago | Make pretty slug with multiple languages support |
slug | 1,151 | 8 months ago | URL-friendly slugify with multiple languages support |
Slugify | 33 | over 6 years ago | Go slugify application that handles string |
Awesome Go / Natural Language Processing / Tokenizers | |||
gojieba | 2,409 | 28 days ago | This is a Go implementation of which a Chinese word splitting algorithm |
gotokenizer | 21 | over 5 years ago | A tokenizer based on the dictionary and Bigram language models for Golang. (Now only support chinese segmentation) |
gse | 2,553 | about 2 months ago | Go efficient text segmentation; support english, chinese, japanese and other |
MMSEGO | 63 | over 12 years ago | This is a GO implementation of which a Chinese word splitting algorithm |
prose | 3,052 | over 1 year ago | Library for text processing that supports tokenization, part-of-speech tagging, named-entity extraction, and more. English only |
segment | 88 | almost 2 years ago | Go library for performing Unicode Text Segmentation as described in |
sentences | 436 | 8 months ago | Sentence tokenizer: converts text into a list of sentences |
shamoji | 13 | almost 2 years ago | The shamoji is word filtering package written in Go |
stemmer | 52 | almost 8 years ago | Stemmer packages for Go programming language. Includes English and German stemmers |
textcat | 72 | over 3 years ago | Go package for n-gram based text categorization, with support for utf-8 and raw text |
Awesome Go / Natural Language Processing / Translation | |||
ctxi18n | 39 | 6 months ago | Context aware i18n with a short and consise API, pluralization, interpolation, and support. YAML locale definitions are based on |
go-i18n | 2,961 | about 2 months ago | Package and an accompanying tool to work with localized text |
go-mystem | 32 | about 8 years ago | CGo bindings to Yandex.Mystem - russian morphology analyzer |
go-pinyin | 1,609 | over 1 year ago | CN Hanzi to Hanyu Pinyin converter |
go-words | 6 | 8 months ago | A words table and text resource library for Golang projects |
gotext | 434 | 15 days ago | GNU gettext utilities for Go |
iuliia-go | 48 | over 3 years ago | Transliterate Cyrillic → Latin in every possible way |
spreak | 55 | 10 months ago | Flexible translation and humanization library for Go, based on the concepts behind gettext |
t | 20 | 9 months ago | Another i18n pkg for golang, which follows GNU gettext style and supports .po/.mo files: , , etc. And it contains a cmd tool , which can extract messages as a pot file from text/html template |
Awesome Go / Natural Language Processing / Transliteration | |||
enca | 16 | over 8 years ago | Minimal cgo bindings for , which detects character encodings |
go-unidecode | 127 | over 1 year ago | ASCII transliterations of Unicode text |
gounidecode | 80 | about 9 years ago | Unicode transliterator (also known as unidecode) for Go |
transliterator | 43 | 4 months ago | Provides one-way string transliteration with supporting of language-specific transliteration rules |
Awesome Go / Networking | |||
arp | 362 | almost 2 years ago | Package arp implements the ARP protocol, as described in RFC 826 |
buffstreams | 253 | about 4 years ago | Streaming protocolbuffer data over TCP made easy |
canopus | 154 | over 6 years ago | CoAP Client/Server implementation (RFC 7252) |
cidranger | 899 | over 1 year ago | Fast IP to CIDR lookup for Go |
dhcp6 | 77 | over 1 year ago | Package dhcp6 implements a DHCPv6 server, as described in RFC 3315 |
dns | 7,992 | 11 days ago | Go library for working with DNS |
dnsmonster | 315 | 2 months ago | Passive DNS Capture/Monitoring Framework |
easytcp | 806 | 7 months ago | A light-weight TCP framework written in Go (Golang), built with message router. EasyTCP helps you build a TCP server easily fast and less painful |
ether | 80 | over 8 years ago | Cross-platform Go package for sending and receiving ethernet frames |
ethernet | 274 | over 2 years ago | Package ethernet implements marshaling and unmarshalling of IEEE 802.3 Ethernet II frames and IEEE 802.1Q VLAN tags |
event | 153 | 10 months ago | Simple I/O event notification library written in Golang |
fasthttp | 21,714 | 15 days ago | Package fasthttp is a fast HTTP implementation for Go, up to 10 times faster than net/http |
fortio | 3,325 | 9 days ago | Load testing library and command line tool, advanced echo server and web UI. Allows to specify a set query-per-second load and record latency histograms and other useful stats and graph them. Tcp, Http, gRPC |
ftp | 1,287 | 9 days ago | Package ftp implements a FTP client as described in |
ftpserverlib | 417 | 10 days ago | Fully featured FTP server library |
fullproxy | 78 | about 1 year ago | A fully featured scriptable and daemon configurable proxy and pivoting toolkit with SOCKS5, HTTP, raw ports and reverse proxy protocols |
fwdctl | 57 | about 1 month ago | A simple and intuitive CLI to manage IPTables forwards in your Linux server |
gaio | 798 | 10 days ago | High performance async-io networking for Golang in proactor mode |
gev | 1,725 | over 1 year ago | gev is a lightweight, fast non-blocking TCP network library based on Reactor mode |
gldap | 109 | about 1 month ago | gldap provides an ldap server implementation and you provide handlers for its ldap operations |
gmqtt | 986 | 11 months ago | Gmqtt is a flexible, high-performance MQTT broker library that fully implements the MQTT protocol V3.1.1 |
gnet | 9,541 | 10 days ago | is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go |
gnet | 19 | 17 days ago | is a high-performance networking framework,especially for game servers |
gNxI | 258 | 30 days ago | A collection of tools for Network Management that use the gNMI and gNOI protocols |
go-getter | 1,647 | about 2 months ago | Go library for downloading files or directories from various sources using a URL |
go-multiproxy | 6 | 2 months ago | Library for making HTTP requests through a pool of proxies offering fault tolerance, load balancing, automatic retries, cookie management, and more, via http.Get/Post replacement or http.Client RoundTripper drop-in |
go-powerdns | 88 | 12 days ago | PowerDNS API bindings for Golang |
go-sse | 11 | over 1 year ago | Go client and server implementation of HTML server-sent events |
go-stun | 666 | 3 months ago | Go implementation of the STUN client (RFC 3489 and RFC 5389) |
gobgp | 3,618 | 12 days ago | BGP implemented in the Go Programming Language |
gopacket | 6,303 | about 2 months ago | Go library for packet processing with libpcap bindings |
gopcap | 487 | over 3 years ago | Go wrapper for libpcap |
goshark | 19 | almost 7 years ago | Package goshark use tshark to decode IP packet and create data struct to analyse packet |
gosnmp | 1,123 | about 2 months ago | Native Go library for performing SNMP actions |
gotcp | 512 | about 1 year ago | Go package for quickly writing tcp applications |
grab | 1,393 | 5 months ago | Go package for managing file downloads |
graval | 28 | about 4 years ago | Experimental FTP server framework |
gws | 1,385 | 20 days ago | High-Performance WebSocket Server & Client With AsyncIO Supporting |
HTTPLab | 4,030 | 8 months ago | HTTPLabs let you inspect HTTP requests and forge responses |
httpproxy | 28 | 21 days ago | HTTP proxy handler and dialer |
iplib | 143 | 6 months ago | Library for working with IP addresses (net.IP, net.IPNet), inspired by python and ruby |
jazigo | 214 | 11 months ago | Jazigo is a tool written in Go for retrieving configuration for multiple network devices |
kcp-go | 4,067 | about 1 month ago | KCP - Fast and Reliable ARQ Protocol |
kcptun | 13,879 | 11 days ago | Extremely simple & fast udp tunnel based on KCP protocol |
lhttp | 691 | over 6 years ago | Powerful websocket framework, build your IM server more easily |
linkio | 53 | about 7 years ago | Network link speed simulation for Reader/Writer interfaces |
llb | 15 | over 8 years ago | It's a very simple but quick backend for proxy servers. Can be useful for fast redirection to predefined domain with zero memory allocation and fast response |
mdns | 1,180 | 11 days ago | Simple mDNS (Multicast DNS) client/server library in Golang |
mqttPaho | The Paho Go Client provides an MQTT client library for connection to MQTT brokers via TCP, TLS or WebSockets | ||
natiu-mqtt | 85 | 30 days ago | A dead-simple, non-allocating, low level implementation of MQTT well suited for embedded systems |
nbio | 2,172 | 16 days ago | Pure Go 1000k+ connections solution, support tls/http1.x/websocket and basically compatible with net/http, with high-performance and low memory cost, non-blocking, event-driven, easy-to-use |
net | This repository holds supplementary Go networking libraries | ||
netpoll | 4,025 | about 1 month ago | A high-performance non-blocking I/O networking framework, which focused on RPC scenarios, developed by ByteDance |
NFF-Go | 1,380 | almost 2 years ago | Framework for rapid development of performant network functions for cloud and bare-metal (former YANFF) |
packet | 79 | almost 5 years ago | Send packets over TCP and UDP. It can buffer messages and hot-swap connections if needed |
peerdiscovery | 639 | about 2 months ago | Pure Go library for cross-platform local peer discovery using UDP multicast |
portproxy | 57 | almost 10 years ago | Simple TCP proxy which adds CORS support to API's which don't support it |
psql-wire | 100 | about 2 months ago | PostgreSQL server wire protocol. Build your own server and start serving connections |
publicip | 28 | almost 8 years ago | Package publicip returns your public facing IPv4 address (internet egress) |
quic-go | 10,010 | 9 days ago | An implementation of the QUIC protocol in pure Go |
raw | 425 | over 2 years ago | Package raw enables reading and writing data at the device driver level for a network interface |
sdns | 952 | 11 days ago | A high-performance, recursive DNS resolver server with DNSSEC support, focused on preserving privacy |
sftp | 1,508 | 12 days ago | Package sftp implements the SSH File Transfer Protocol as described in |
ssh | 3,668 | 3 months ago | Higher-level API for building SSH servers (wraps crypto/ssh) |
sslb | 148 | 8 months ago | It's a Super Simples Load Balancer, just a little project to achieve some kind of performance |
stun | 494 | over 3 years ago | Go implementation of RFC 5389 STUN protocol |
tcp_server | 426 | almost 3 years ago | Go library for building tcp servers faster |
tcpack | 174 | 12 months ago | tcpack is an application protocol based on TCP to Pack and Unpack bytes stream in go program |
tspool | 14 | almost 6 years ago | A TCP Library use worker pool to improve performance and protect your server |
tun2socks | 3,138 | 13 days ago | A pure go implementation of tun2socks powered by TCP/IP stack |
utp | 173 | over 1 year ago | Go uTP micro transport protocol implementation |
vssh | 955 | 10 months ago | Go library for building network and server automation over SSH protocol |
water | 1,937 | 2 months ago | Simple TUN/TAP library |
webhooked | 36 | 20 days ago | A webhook receiver on steroids: handle, secure, format and store a Webhook payload has never been easier |
webrtc | 13,512 | 9 days ago | A pure Go implementation of the WebRTC API |
winrm | 422 | 3 months ago | Go WinRM client to remotely execute commands on Windows machines |
xtcp | 152 | over 4 years ago | TCP Server Framework with simultaneous full duplex communication, graceful shutdown, and custom protocol |
Awesome Go / Networking / HTTP Clients | |||
fast-shot | 62 | 14 days ago | Hit your API targets with rapid-fire precision using Go's fastest and simple HTTP Client |
gentleman | 1,077 | 10 months ago | Full-featured plugin-driven HTTP client library |
go-cleanhttp | 368 | over 1 year ago | Get easily stdlib HTTP client, which does not share any state with other clients |
go-http-client | 77 | 9 months ago | Make http calls simply and easily |
go-otelroundtripper | 80 | 4 months ago | Go http.RoundTripper that emits open telemetry metrics for HTTP requests |
go-req | 22 | over 2 years ago | Declarative golang HTTP client |
go-retryablehttp | 1,968 | 17 days ago | Retryable HTTP client in Go |
go-zoox/fetch | 71 | 14 days ago | A Powerful, Lightweight, Easy Http Client, inspired by Web Fetch API |
grequests | 2,133 | 5 months ago | A Go "clone" of the great and famous Requests library |
heimdall | 2,624 | 5 months ago | An enhanced http client with retry and hystrix capabilities |
httpretry | 45 | 5 months ago | Enriches the default go HTTP client with retry functionality |
pester | 645 | over 2 years ago | Go HTTP client calls with retries, backoff, and concurrency |
req | 4,248 | 21 days ago | Simple Go HTTP client with Black Magic (Less code and More efficiency) |
request | 288 | 9 months ago | HTTP client for golang. If you have experience about axios or requests, you will love it. No 3rd dependency |
requests | 1,482 | about 2 months ago | HTTP requests for Gophers. Uses context.Context and doesn't hide the underlying net/http.Client, making it compatible with standard Go APIs. Also includes testing tools |
resty | 9,977 | 9 days ago | Simple HTTP and REST client for Go inspired by Ruby rest-client |
rq | 51 | about 5 years ago | A nicer interface for golang stdlib HTTP client |
sling | 1,676 | about 1 month ago | Sling is a Go HTTP client library for creating and sending API requests |
Awesome Go / OpenGL | |||
gl | 1,074 | 3 months ago | Go bindings for OpenGL (generated via glow) |
glfw | 1,564 | 5 months ago | Go bindings for GLFW 3 |
go-glmatrix | 11 | over 3 years ago | Go port of library |
goxjs/gl | 176 | over 1 year ago | Go cross-platform OpenGL bindings (OS X, Linux, Windows, browsers, iOS, Android) |
goxjs/glfw | 82 | over 1 year ago | Go cross-platform glfw library for creating an OpenGL context and receiving events |
mathgl | 554 | 9 months ago | Pure Go math package specialized for 3D math, with inspiration from GLM |
Awesome Go / ORM | |||
bob | 760 | 18 days ago | SQL query builder and ORM/Factory generator for Go. Successor of SQLBoiler |
bun | 3,640 | 17 days ago | SQL-first Golang ORM. Successor of go-pg |
cacheme | 23 | almost 3 years ago | Schema based, typed Redis caching/memoize framework for Go |
CQL | 16 | 5 months ago | Built on top of GORM, adds compile-time verified queries based on auto-generated code |
ent | 15,494 | 22 days ago | An entity framework for Go. Simple, yet powerful ORM for modeling and querying data |
go-dbw | 13 | about 1 month ago | A simple package that encapsulates database operations |
go-firestorm | 52 | almost 3 years ago | A simple ORM for Google/Firebase Cloud Firestore |
go-sql | 176 | over 2 years ago | A easy ORM for mysql |
go-sqlbuilder | 1,429 | 18 days ago | A flexible and powerful SQL string builder library plus a zero-config ORM |
go-store | 112 | over 7 years ago | Simple and fast Redis backed key-value store library for Go |
golobby/orm | 159 | about 1 year ago | Simple, fast, type-safe, generic orm for developer happiness |
GORM | 36,663 | 12 days ago | The fantastic ORM library for Golang, aims to be developer friendly |
gormt | 2,358 | 14 days ago | Mysql database to golang gorm struct |
gorp | 3,735 | about 1 year ago | Go Relational Persistence, ORM-ish library for Go |
grimoire | 164 | almost 3 years ago | Grimoire is a database access layer and validation for golang. (Support: MySQL, PostgreSQL and SQLite3) |
lore | 14 | almost 7 years ago | Simple and lightweight pseudo-ORM/pseudo-struct-mapping environment for Go |
marlow | 13 | about 4 years ago | Generated ORM from project structs for compile time safety assurances |
pop/soda | 1,435 | 4 months ago | Database migration, creation, ORM, etc... for MySQL, PostgreSQL, and SQLite |
Prisma | 2,114 | 10 days ago | Prisma Client Go, Typesafe database access for Go |
reform | 1,445 | over 1 year ago | Better ORM for Go, based on non-empty interfaces and code generation |
rel | 762 | 3 months ago | Modern Database Access Layer for Golang - Testable, Extendable and Crafted Into a Clean and Elegant API |
SQLBoiler | 6,700 | about 2 months ago | ORM generator. Generate a featureful and blazing-fast ORM tailored to your database schema |
upper.io/db | 3,533 | 27 days ago | Single interface for interacting with different data sources through the use of adapters that wrap mature database drivers |
XORM | Simple and powerful ORM for Go. (Support: MySQL, MyMysql, PostgreSQL, Tidb, SQLite3, MsSql and Oracle) | ||
Zoom | 309 | over 1 year ago | Blazing-fast datastore and querying engine built on Redis |
Awesome Go / Package Management | |||
go modules | Modules are the unit of source code interchange and versioning. The go command has direct support for working with modules, including recording and resolving dependencies on other modules | ||
dep | 12,850 | about 4 years ago | Go dependency tool |
vgo | Versioned Go | ||
glide | 8,150 | 3 months ago | Manage your golang vendor and vendored packages with ease. Inspired by tools like Maven, Bundler, and Pip |
godep | 5,541 | over 6 years ago | dependency tool for go, godep helps build packages reproducibly by fixing their dependencies |
gom | 1,382 | about 5 years ago | Go Manager - bundle for go |
goop | 779 | almost 9 years ago | Simple dependency manager for Go (golang), inspired by Bundler |
gop | 49 | over 5 years ago | Build and manage your Go applications out of GOPATH |
gopm | 2,472 | about 5 years ago | Go Package Manager |
govendor | 4,934 | over 4 years ago | Go Package Manager. Go vendor tool that works with the standard vendor file |
gpm | 1,190 | about 7 years ago | Barebones dependency manager for Go |
gup | 332 | about 1 month ago | Update binaries installed by "go install" |
johnny-deps | 214 | almost 4 years ago | Minimal dependency version using Git |
modgv | 485 | over 1 year ago | Converts 'go mod graph' output into Graphviz's DOT language |
mvn-golang | 163 | about 1 month ago | plugin that provides way for auto-loading of Golang SDK, dependency management and start build environment in Maven project infrastructure |
syft | 6,065 | 9 days ago | A CLI tool and Go library for generating a Software Bill of Materials (SBOM) from container images and filesystems |
VenGO | 124 | about 8 years ago | create and manage exportable isolated go virtual environments |
Awesome Go / Performance | |||
go-instrument | 208 | 11 days ago | Automatically add spans to all methods and functions |
jaeger | 20,264 | 11 days ago | A distributed tracing system |
mm-go | 142 | 27 days ago | Generic manual memory management for golang |
pixie | 5,517 | 17 days ago | No instrumentation tracing for Golang applications via eBPF |
profile | 1,992 | almost 2 years ago | Simple profiling support package for Go |
statsviz | 3,202 | 6 months ago | Live visualization of your Go application runtime statistics |
tracer | 86 | over 3 years ago | Simple, lightweight tracing |
Awesome Go / Query Language | |||
api-fu | 55 | about 1 month ago | Comprehensive GraphQL implementation |
dasel | 7,084 | 12 days ago | Query and update data structures using selectors from the command line. Comparable to jq/yq but supports JSON, YAML, TOML and XML with zero runtime dependencies |
gojsonq | 2,185 | almost 2 years ago | A simple Go package to Query over JSON Data |
goven | 60 | over 2 years ago | A drop-in query language for any database schema |
gqlgen | 9,886 | 12 days ago | go generate based graphql server library |
grapher | 3 | about 1 year ago | A GraphQL field builder utilizing Go generics with extra utilities and features |
graphql | 57 | over 7 years ago | graphql parser + utilities |
graphql | 4,643 | 21 days ago | GraphQL server with a focus on ease of use |
graphql-go | 9,891 | 3 months ago | Implementation of GraphQL for Go |
gws | 6 | about 4 years ago | Apollos' "GraphQL over Websocket" client and server implementation |
jsonpath | 25 | 12 months ago | A query library for retrieving part of JSON based on JSONPath syntax |
jsonql | 275 | almost 4 years ago | JSON query expression library in Golang |
jsonslice | 85 | 2 months ago | Jsonpath queries with advanced filters |
mql | 42 | 5 months ago | Model Query Language (mql) is a query language for your database models |
rql | 340 | 3 months ago | Resource Query Language for REST API |
rqp | 75 | 10 months ago | Query Parser for REST API. Filtering, validations, both , operations are supported directly in the query |
straf | 38 | over 4 years ago | Easily Convert Golang structs to GraphQL objects |
Awesome Go / Reflection | |||
copy | 48 | almost 4 years ago | Package for fast copying structs of different types |
Deepcopier | 451 | over 4 years ago | Simple struct copying for Go |
go-deepcopy | 20 | 19 days ago | Fast deep copy library |
goenum | 10 | 21 days ago | A common enumeration struct based on generics and reflection that allows you to quickly define enumerations and use a set of useful default methods |
gotype | 61 | 17 days ago | Golang source code parsing, usage like reflect package |
gpath | 40 | over 7 years ago | Library to simplify access struct fields with Go's expression in reflection |
objwalker | 3 | over 2 years ago | Walk by go objects with reflection |
reflectutils | 8 | about 2 months ago | Helpers for working with reflection: struct tag parsing; recursive walking; fill value from string |
Awesome Go / Resource Embedding | |||
debme | 32 | over 3 years ago | Create an from an existing subdirectory |
esc | 637 | 12 months ago | Embeds files into Go programs and provides http.FileSystem interfaces to them |
fileb0x | 634 | over 1 year ago | Simple tool to embed files in go with focus on "customization" and ease to use |
go-resources | 176 | almost 2 years ago | Unfancy resources embedding with Go |
go.rice | 2,415 | almost 2 years ago | go.rice is a Go package that makes working with resources such as HTML, JS, CSS, images, and templates very easy |
mule | 15 | about 3 years ago | Embed external resources like images, movies ... into Go source code to create single file binaries using . Focused on simplicity |
packr | 3,410 | almost 3 years ago | The simple and easy way to embed static files into Go binaries |
rebed | 29 | over 2 years ago | Recreate folder structures and files from Go 1.16's type |
statics | 67 | about 8 years ago | Embeds static resources into go files for single binary compilation + works with http.FileSystem + symlinks |
statik | 3,758 | 12 months ago | Embeds static files into a Go executable |
templify | 30 | about 3 years ago | Embed external template files into Go code to create single file binaries |
vfsgen | 981 | 11 months ago | Generates a vfsdata.go file that statically implements the given virtual filesystem |
Awesome Go / Science and Data Analysis | |||
assocentity | 14 | over 1 year ago | Package assocentity returns the average distance from words to a given entity |
bradleyterry | 10 | over 5 years ago | Provides a Bradley-Terry Model for pairwise comparisons |
calendarheatmap | 395 | about 1 month ago | Calendar heatmap in plain Go inspired by Github contribution activity |
chart | 770 | over 3 years ago | Simple Chart Plotting library for Go. Supports many graphs types |
dataframe-go | 1,167 | over 2 years ago | Dataframes for machine-learning and statistics (similar to pandas) |
decimal | 40 | about 2 years ago | Package decimal implements arbitrary-precision decimal floating-point arithmetic |
evaler | 51 | about 6 years ago | Simple floating point arithmetic expression evaluator |
ewma | 435 | 10 months ago | Exponentially-weighted moving averages |
geom | 55 | almost 7 years ago | 2D geometry for golang |
go-dsp | 858 | about 1 year ago | Digital Signal Processing for Go |
go-estimate | 112 | 4 months ago | State estimation and filtering algorithms in Go |
go-gt | 11 | about 9 years ago | Graph theory algorithms written in "Go" language |
go-hep | 231 | 4 months ago | A set of libraries and tools for performing High Energy Physics analyses with ease |
godesim | 23 | over 2 years ago | Extended/multivariable ODE solver framework for event-based simulations with simple API |
goent | 34 | over 5 years ago | GO Implementation of Entropy Measures |
gograph | 61 | 2 months ago | A golang generic graph library that provides mathematical graph-theory and algorithms |
gohistogram | 174 | almost 4 years ago | Approximate histograms for data streams |
gonum | 7,541 | about 1 month ago | Gonum is a set of numeric libraries for the Go programming language. It contains libraries for matrices, statistics, optimization, and more |
gonum/plot | 2,730 | 3 months ago | gonum/plot provides an API for building and drawing plots in Go |
goraph | 736 | over 2 years ago | Pure Go graph theory library(data structure, algorithm visualization) |
gosl | 1,831 | 5 months ago | Go scientific library for linear algebra, FFT, geometry, NURBS, numerical methods, probabilities, optimisation, differential equations, and more |
GoStats | 21 | over 5 years ago | GoStats is an Open Source GoLang library for math statistics mostly used in Machine Learning domains, it covers most of the Statistical measures functions |
graph | 703 | over 1 year ago | Library of basic graph algorithms |
jsonl-graph | 73 | about 2 months ago | Tool to manipulate JSONL graphs with graphviz support |
ode | 22 | over 7 years ago | Ordinary differential equation (ODE) solver which supports extended states and channel-based iteration stop conditions |
orb | 899 | 2 months ago | 2D geometry types with clipping, GeoJSON and Mapbox Vector Tile support |
pagerank | 83 | over 3 years ago | Weighted PageRank algorithm implemented in Go |
piecewiselinear | 26 | 10 months ago | Tiny linear interpolation library |
PiHex | 20 | 5 months ago | Implementation of the "Bailey-Borwein-Plouffe" algorithm for the hexadecimal number Pi |
Poly | 671 | about 1 month ago | A Go package for engineering organisms |
rootfinding | 11 | over 4 years ago | root-finding algorithms library for finding roots of quadratic functions |
sparse | 158 | about 3 years ago | Go Sparse matrix formats for linear algebra supporting scientific and machine learning applications, compatible with gonum matrix libraries |
stats | 2,917 | 5 months ago | Statistics package with common functions missing from the Golang standard library |
streamtools | 1,311 | 12 months ago | general purpose, graphical tool for dealing with streams of data |
TextRank | 202 | over 3 years ago | TextRank implementation in Golang with extendable features (summarization, weighting, phrase extraction) and multithreading (goroutine) support |
topk | 0 | 15 days ago | Sliding-window and regular top-K sketches, based on the HeavyKeeper algorithm |
triangolatte | 36 | about 3 years ago | 2D triangulation library. Allows translating lines and polygons (both based on points) to the language of GPUs |
Awesome Go / Security | |||
acmetool | 2,052 | over 1 year ago | ACME (Let's Encrypt) client tool with automatic renewal |
acopw-go | Small cryptographically secure password generator package for Go | ||
acra | 1,350 | 25 days ago | Network encryption proxy to protect database-based applications from data leaks: strong selective encryption, SQL injections prevention, intrusion detection system |
age | 17,024 | 16 days ago | A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability |
argon2-hashing | 20 | 9 months ago | light wrapper around Go's argon2 package that closely mirrors with Go's standard library Bcrypt and simple-scrypt package |
argon2pw | 90 | about 3 years ago | Argon2 password hash generation with constant-time password comparison |
autocert | Auto provision Let's Encrypt certificates and start a TLS server | ||
BadActor | 322 | over 4 years ago | In-memory, application-driven jailer built in the spirit of fail2ban |
beelzebub | 661 | 11 days ago | A secure low code honeypot framework, leveraging AI for System Virtualization |
booster | 494 | 2 months ago | Fast initramfs generator with full-disk encryption support |
Cameradar | 4,058 | 3 months ago | Tool and library to remotely hack RTSP streams from surveillance cameras |
certificates | 38 | almost 2 years ago | An opinionated tool for generating tls certificates |
CertMagic | 5,002 | 10 days ago | Mature, robust, and powerful ACME client integration for fully-managed TLS certificate issuance and renewal |
Coraza | 2,172 | 11 days ago | Enterprise-ready, modsecurity and OWASP CRS compatible WAF library |
dongle | 882 | 9 months ago | A simple, semantic and developer-friendly golang package for encoding&decoding and encryption&decryption |
encid | 3 | 8 months ago | Encode and decode encrypted integer IDs |
firewalld-rest | 338 | 9 months ago | A rest application to dynamically update firewalld rules on a linux server |
go-generate-password | 54 | over 2 years ago | Password generator that can be used on the cli or as a library |
go-htpasswd | 37 | 10 months ago | Apache htpasswd Parser for Go |
go-password-validator | 497 | about 2 years ago | Password validator based on raw cryptographic entropy values |
go-peer | 256 | 9 days ago | A software library for creating secure and anonymous decentralized systems |
go-yara | 356 | 3 months ago | Go Bindings for , the "pattern matching swiss knife for malware researchers (and everyone else)" |
goArgonPass | 18 | almost 4 years ago | Argon2 password hash and verification designed to be compatible with existing Python and PHP implementations |
goSecretBoxPassword | 60 | about 2 years ago | A probably paranoid package for securely hashing and encrypting passwords |
Interpol | 4 | over 2 years ago | Rule-based data generator for fuzzing and penetration testing |
lego | 7,908 | 9 days ago | Pure Go ACME client library and CLI tool (for use with Let's Encrypt) |
luks.go | 86 | 5 months ago | Pure Golang library to manage LUKS partitions |
memguard | 2,545 | 6 months ago | A pure Go library for handling sensitive values in memory |
multikey | 5 | 5 months ago | An n-out-of-N keys encryption/decryption framework based on Shamir's Secret Sharing algorithm |
nacl | 545 | 3 months ago | Go implementation of the NaCL set of API's |
optimus-go | 361 | over 4 years ago | ID hashing and Obfuscation using Knuth's Algorithm |
passlib | 289 | over 3 years ago | Futureproof password hashing library |
passwap | 51 | about 1 month ago | Provides a unified implementation between different password hashing algorithms |
secret | 28 | about 2 months ago | Prevent your secrets from leaking into logs, std* etc |
secure | 2,261 | 15 days ago | HTTP middleware for Go that facilitates some quick security wins |
secureio | 33 | over 4 years ago | An keyexchanging+authenticating+encrypting wrapper and multiplexer for based on XChaCha20-poly1305, ECDH and ED25519 |
simple-scrypt | 198 | over 3 years ago | Scrypt package with a simple, obvious API and automatic cost calibration built-in |
ssh-vault | 442 | 4 months ago | encrypt/decrypt using ssh keys |
sslmgr | 26 | 2 months ago | SSL certificates made easy with a high level wrapper around acme/autocert |
teler-waf | 348 | about 1 month ago | teler-waf is a Go HTTP middleware that provide teler IDS functionality to protect against web-based attacks and improve the security of Go-based web applications. It is highly configurable and easy to integrate into existing Go applications |
themis | 1,859 | about 1 month ago | high-level cryptographic library for solving typical data security tasks (secure data storage, secure messaging, zero-knowledge proof authentication), available for 14 languages, best fit for multi-platform apps |
Awesome Go / Serialization | |||
asn1 | 55 | over 5 years ago | Asn.1 BER and DER encoding library for golang |
bambam | 65 | about 8 years ago | generator for Cap'n Proto schemas from go |
bel | 38 | 2 months ago | Generate TypeScript interfaces from Go structs/interfaces. Useful for JSON RPC |
binstruct | 97 | 11 days ago | Golang binary decoder for mapping data into the structure |
cbor | 718 | 8 days ago | Small, safe, and easy CBOR encoding and decoding library |
colfer | 744 | 2 months ago | Code generation for the Colfer binary format |
csvutil | 928 | about 2 months ago | High Performance, idiomatic CSV record encoding and decoding to native Go structures |
elastic | 23 | over 3 years ago | Convert slices, maps or any other unknown value across different types at run-time, no matter what |
fixedwidth | 9 | almost 5 years ago | Fixed-width text formatting (UTF-8 supported) |
fwencoder | 27 | over 1 year ago | Fixed width file parser (encoding and decoding library) for Go |
go-capnproto | 288 | over 4 years ago | Cap'n Proto library and parser for go |
go-codec | 1,848 | 7 months ago | High Performance, feature-Rich, idiomatic encode, decode and rpc library for msgpack, cbor and json, with runtime-based OR code-generation support |
go-csvlib | 12 | about 1 month ago | High level and rich functionalities CSV serialization/deserialization library |
gogoprotobuf | 5,664 | about 1 year ago | Protocol Buffers for Go with Gadgets |
goprotobuf | 9,737 | 2 months ago | Go support, in the form of a library and protocol compiler plugin, for Google's protocol buffers |
gotiny | 20 | 9 months ago | Efficient Go serialization library, gotiny is almost as fast as serialization libraries that generate code |
jsoniter | 13,361 | 5 months ago | High-performance 100% compatible drop-in replacement of "encoding/json" |
mapstructure | 7,893 | 4 months ago | Go library for decoding generic map values into native Go structures |
php_session_decoder | 164 | almost 6 years ago | GoLang library for working with PHP session format and PHP Serialize/Unserialize functions |
pletter | 19 | 10 months ago | A standard way to wrap a proto message for message brokers |
structomap | 143 | over 5 years ago | Library to easily and dynamically generate maps from static structures |
unitpacking | 6 | over 1 year ago | Library to pack unit vectors into as fewest bytes as possible |
Awesome Go / Server Applications | |||
algernon | 2,794 | 10 days ago | HTTP/2 web server with built-in support for Lua, Markdown, GCSS and Amber |
Caddy | 57,567 | 5 days ago | Caddy is an alternative, HTTP/2 web server that's easy to configure and use |
consul | Consul is a tool for service discovery, monitoring and configuration | ||
cortex-tenant | 108 | 19 days ago | Prometheus remote write proxy that adds add Cortex tenant ID header based on metric labels |
devd | 3,432 | 5 months ago | Local webserver for developers |
discovery | 1,777 | about 1 year ago | A registry for resilient mid-tier load balancing and failover |
dudeldu | 144 | about 5 years ago | A simple SHOUTcast server |
dummy | 178 | over 1 year ago | Run mock server based off an API contract with one command |
Easegress | 5,767 | 12 days ago | A cloud native high availability/performance traffic orchestration system with observability and extensibility |
etcd | 47,550 | 4 days ago | Highly-available key value store for shared configuration and service discovery |
Euterpe | 534 | 13 days ago | Self-hosted music streaming server with built-in web UI and REST API |
Fider | 2,871 | 10 days ago | Fider is an open platform to collect and organize customer feedback |
Flagr | 2,421 | 25 days ago | Flagr is an open-source feature flagging and A/B testing service |
flipt | 3,651 | 10 days ago | A self contained feature flag solution written in Go and Vue.js |
go-feature-flag | 1,278 | 10 days ago | A simple, complete and lightweight self-hosted feature flag solution 100% Open Source |
go-proxy-cache | 127 | 14 days ago | Simple Reverse Proxy with Caching, written in Go, using Redis |
gondola | 7 | 4 months ago | A YAML based golang reverse proxy |
jackal | 1,437 | about 1 year ago | An XMPP server written in Go |
lets-proxy2 | 96 | 6 months ago | Reverse proxy for handle https with issue certificates in fly from lets-encrypt |
minio | 47,067 | 10 days ago | Minio is a distributed object storage server |
Moxy | 13 | over 2 years ago | Moxy is a simple mocker and proxy application server, you can create mock endpoints as well as proxy requests in case no mock exists for the endpoint |
nginx-prometheus | 41 | about 4 years ago | Nginx log parser and exporter to Prometheus |
nsq | A realtime distributed messaging platform | ||
pocketbase | 39,307 | 9 days ago | PocketBase is a realtime backend in 1 file consisting of embedded database (SQLite) with realtime subscriptions, built-in auth management and much more |
protoxy | 35 | almost 4 years ago | A proxy server that converts JSON request bodies to Protocol Buffers |
psql-streamer | 59 | over 4 years ago | Stream database events from PostgreSQL to Kafka |
riemann-relay | 2 | almost 5 years ago | Relay to load-balance Riemann events and/or convert them to Carbon |
RoadRunner | 7,865 | 11 days ago | High-performance PHP application server, load-balancer and process manager |
SFTPGo | 9,198 | 9 days ago | Fully featured and highly configurable SFTP server with optional FTP/S and WebDAV support. It can serve local filesystem and Cloud Storage backends such as S3 and Google Cloud Storage |
simple-jwt-provider | 39 | over 1 year ago | Simple and lightweight provider which exhibits JWTs, supports login, password-reset (via mail) and user management |
Trickster | 1,986 | about 2 months ago | HTTP reverse proxy cache and time series accelerator |
Wish | 3,525 | 25 days ago | Make SSH apps, just like that! |
Awesome Go / Stream Processing | |||
go-streams | 1,876 | 28 days ago | Go stream processing library |
goio | 82 | over 1 year ago | An implementation of IO, Stream, Fiber for Golang, inspired by awesome Scala libraries cats and fs2 |
machine | 157 | about 1 month ago | Go library for writing and generating stream workers with built in metrics and traceability |
stream | 88 | 8 months ago | Go Stream, like Java 8 Stream: Filter/Map/FlatMap/Peek/Sorted/ForEach/Reduce |
Awesome Go / Template Engines | |||
ego | 581 | over 1 year ago | Lightweight templating language that lets you write templates in Go. Templates are translated into Go and compiled |
extemplate | 58 | almost 2 years ago | Tiny wrapper around html/template to allow for easy file-based template inheritance |
fasttemplate | 828 | about 1 year ago | Simple and fast template engine. Substitutes template placeholders up to 10x faster than |
gomponents | HTML 5 components in pure Go, that look something like this: | ||
gospin | 58 | over 3 years ago | Article spinning and spintax/spinning syntax engine, useful for A/B, testing pieces of text/articles and creating more natural conversations |
got | 31 | 11 months ago | A Go code generator inspired by Hero and Fasttemplate. Has include files, custom tag definitions, injected Go code, language translation, and more |
goview | 422 | 12 months ago | Goview is a lightweight, minimalist and idiomatic template library based on golang html/template for building Go web application |
jet | 1,249 | 7 months ago | Jet template engine |
liquid | 288 | 2 months ago | Go implementation of Shopify Liquid templates |
maroto | 1,862 | 9 days ago | A maroto way to create PDFs. Maroto is inspired in Bootstrap and uses gofpdf. Fast and simple |
pongo2 | 2,864 | about 2 months ago | Django-like template-engine for Go |
quicktemplate | 3,093 | 3 months ago | Fast, powerful, yet easy to use template engine. Converts templates into Go code and then compiles it |
raymond | 602 | 2 months ago | Complete handlebars implementation in Go |
Razor | 857 | 3 months ago | Razor view engine for Golang |
Soy | 172 | 7 months ago | Closure templates (aka Soy templates) for Go, following the |
sprout | 87 | 21 days ago | Useful template functions for Go templates |
tbd | 25 | about 3 years ago | A really simple way to create text templates with placeholders - exposes extra builtin Git repo metadata |
templ | 8,036 | 12 days ago | A HTML templating language that has great developer tooling |
Awesome Go / Testing / Testing Frameworks | |||
apitest | Simple and extensible behavioural testing library for REST based services or HTTP handlers that supports mocking external http calls and rendering of sequence diagrams | ||
arch-go | 162 | 9 days ago | Architecture testing tool for Go projects |
assert | 62 | about 2 years ago | Basic Assertion Library used along side native go testing, with building blocks for custom assertions |
baloo | 776 | about 2 years ago | Expressive and versatile end-to-end HTTP API testing made easy |
be | 103 | 12 months ago | The minimalist generic test assertion library |
biff | 14 | almost 2 years ago | Bifurcation testing framework, BDD compatible |
charlatan | 202 | 11 months ago | Tool to generate fake interface implementations for tests |
commander | 226 | 6 months ago | Tool for testing cli applications on windows, linux and osx |
cupaloy | 300 | over 1 year ago | Simple snapshot testing addon for your test framework |
dbcleaner | 162 | almost 3 years ago | Clean database for testing purpose, inspired by in Ruby |
dft | 5 | about 2 months ago | Lightweight, zero dependency docker containers for testing (or more) |
dsunit | 44 | 7 months ago | Datastore testing for SQL, NoSQL, structured files |
embedded-postgres | 828 | about 2 months ago | Run a real Postgres database locally on Linux, OSX or Windows as part of another Go application or test |
endly | 265 | 18 days ago | Declarative end to end functional testing |
envite | 5 | about 1 month ago | Dev and testing environment management framework |
fixenv | 29 | 2 months ago | Fixture manage engine, inspired by pytest fixtures |
fluentassert | 41 | 26 days ago | Extensible, type-safe, fluent assertion Go library |
flute | 19 | 11 days ago | HTTP client testing framework |
frisby | 278 | over 4 years ago | REST API testing framework |
gherkingen | 74 | 3 months ago | BDD boilerplate generator and framework |
ginkgo | BDD Testing Framework for Go | ||
gnomock | 1,382 | about 1 month ago | integration testing with real dependencies (database, cache, even Kubernetes or AWS) running in Docker, without mocks |
go-carpet | 246 | 12 days ago | Tool for viewing test coverage in terminal |
go-cmp | 4,175 | 10 months ago | Package for comparing Go values in tests |
go-hit | 255 | 3 months ago | Hit is an http integration test framework written in golang |
go-mutesting | 640 | 3 months ago | Mutation testing for Go source code |
go-mysql-test-container | 2 | about 2 years ago | Golang MySQL testcontainer to help with MySQL integration testing |
go-snaps | Jest-like snapshot testing in Golang | ||
go-testdeep | 434 | about 2 months ago | Extremely flexible golang deep comparison, extends the go testing package |
go-testpredicate | 5 | almost 3 years ago | Test predicate style assertions library with extensive diagnostics output |
go-vcr | 1,247 | 18 days ago | Record and replay your HTTP interactions for fast, deterministic and accurate tests |
goblin | 884 | almost 2 years ago | Mocha like testing framework of Go |
goc | 811 | about 2 months ago | Goc is a comprehensive coverage testing system for The Go Programming Language |
gocheck | More advanced testing framework alternative to gotest | ||
GoConvey | 8,237 | 2 months ago | BDD-style framework with web UI and live reload |
gocrest | 105 | about 1 month ago | Composable hamcrest-like matchers for Go assertions |
godog | 2,298 | 20 days ago | Cucumber BDD framework for Go |
gofight | 440 | over 3 years ago | API Handler Testing for Golang Router framework |
gogiven | 15 | over 1 year ago | YATSPEC-like BDD testing framework for Go |
gomatch | 47 | over 3 years ago | library created for testing JSON against patterns |
gomega | Rspec like matcher/assertion library | ||
Gont | 77 | 13 days ago | Go network testing toolkit for testing building complex network topologies using Linux namespaces |
gospecify | 52 | almost 13 years ago | This provides a BDD syntax for testing your Go code. It should be familiar to anybody who has used libraries such as rspec |
gosuite | 12 | almost 8 years ago | Brings lightweight test suites with setup/teardown facilities to by leveraging Go1.7's Subtests |
got | 264 | 4 months ago | An enjoyable golang test framework |
gotest.tools | 513 | about 1 month ago | A collection of packages to augment the go testing package and support common patterns |
Hamcrest | 30 | almost 4 years ago | fluent framework for declarative Matcher objects that, when applied to input values, produce self-describing results |
httpexpect | 2,534 | 5 months ago | Concise, declarative, and easy to use end-to-end HTTP and REST API testing |
is | 1,772 | 8 months ago | Professional lightweight testing mini-framework for Go |
jsonassert | 126 | 9 days ago | Package for verifying that your JSON payloads are serialized correctly |
keploy | 4,808 | 9 days ago | Generate Testcase and Data Mocks from API calls automatically |
omg.testingtools | 1 | almost 3 years ago | The simple library for change a values of private fields for testing |
restit | 55 | 4 months ago | Go micro framework to help writing RESTful API integration test |
schema | 21 | almost 5 years ago | Quick and easy expression matching for JSON schemas used in requests and responses |
stop-and-go | 10 | 5 months ago | Testing helper for concurrency |
testcase | 121 | 11 days ago | Idiomatic testing framework for Behavior Driven Development |
testcerts | 67 | 17 days ago | Dynamically generate self-signed certificates and certificate authorities within your test functions |
testcontainers-go | 3,531 | 11 days ago | A Go package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers to programmatically define containers that should be run as part of a test and clean up those resources when the test is done |
testfixtures | 1,104 | 11 days ago | A helper for Rails' like test fixtures to test database applications |
Testify | 23,135 | 10 days ago | Sacred extension to the standard go testing package |
testsql | 17 | about 5 years ago | Generate test data from SQL files before testing and clear it after finished |
testza | 418 | about 1 year ago | Full-featured test framework with nice colorized output |
trial | 6 | about 2 years ago | Quick and easy extendable assertions without introducing much boilerplate |
Tt | 8 | 4 months ago | Simple and colorful test tools |
wstest | 102 | almost 4 years ago | Websocket client for unit-testing a websocket http.Handler |
Awesome Go / Testing / Mock | |||
counterfeiter | 977 | about 1 month ago | Tool for generating self-contained mock objects |
genmock | Go mocking system with code generator for building calls of the interface methods | ||
go-localstack | 76 | 20 days ago | Tool for using localstack in AWS testing |
go-sqlmock | 6,090 | about 1 month ago | Mock SQL driver for testing database interactions |
go-txdb | 651 | 3 months ago | Single transaction based database driver mainly for testing purposes |
gock | 2,089 | 18 days ago | Versatile HTTP mocking made easy |
gomock | 9,298 | 9 months ago | Mocking framework for the Go programming language |
govcr | 170 | 6 months ago | HTTP mock for Golang: record and replay HTTP interactions for offline testing |
hoverfly | 2,349 | about 1 month ago | HTTP(S) proxy for recording and simulating REST/SOAP APIs with extensible middleware and easy-to-use CLI |
httpmock | 1,916 | about 2 months ago | Easy mocking of HTTP responses from external resources |
minimock | 632 | about 1 month ago | Mock generator for Go interfaces |
mockery | 6,010 | 10 days ago | Tool to generate Go interfaces |
mockhttp | 23 | almost 10 years ago | Mock object for Go http.ResponseWriter |
mooncake | 18 | about 2 years ago | A simple way to generate mocks for multiple purposes |
moq | 1,971 | about 2 months ago | Utility that generates a struct from any interface. The struct can be used in test code as a mock of the interface |
timex | 70 | about 4 years ago | A test-friendly replacement for the native package |
xgo | 331 | 22 days ago | A general pureposed function mocking library |
Awesome Go / Testing / Fuzzing and delta-debugging/reducing/shrinking | |||
go-fuzz | 4,757 | 18 days ago | Randomized testing system |
gofuzz | 1,494 | almost 2 years ago | Library for populating go objects with random values |
Tavor | 245 | almost 6 years ago | Generic fuzzing and delta-debugging framework |
Awesome Go / Testing / Selenium and browser control tools | |||
cdp | 722 | about 1 month ago | Type-safe bindings for the Chrome Debugging Protocol that can be used with browsers or other debug targets that implement it |
chromedp | 10,919 | 2 months ago | a way to drive/test Chrome, Safari, Edge, Android Webviews, and other browsers supporting the Chrome Debugging Protocol |
ggr | 314 | 6 months ago | a lightweight server that routes and proxies Selenium WebDriver requests to multiple Selenium hubs |
playwright-go | 2,115 | 19 days ago | browser automation library to control Chromium, Firefox and WebKit with a single API |
rod | 5,257 | about 2 months ago | A Devtools driver to make web automation and scraping easy |
selenoid | 2,579 | 2 months ago | alternative Selenium hub server that launches browsers within containers |
Awesome Go / Testing / Fail injection | |||
failpoint | 815 | 5 months ago | An implementation of for Golang |
Awesome Go / Text Processing / Formatters | |||
address | 71 | 6 months ago | Handles address representation, validation and formatting |
align | 84 | about 3 years ago | A general purpose application that aligns text |
bytes | 538 | 10 months ago | Formats and parses numeric byte values (10K, 2M, 3G, etc.) |
go-fixedwidth | 80 | 8 months ago | Fixed-width text formatting (encoder/decoder with reflection) |
go-humanize | 4,319 | 7 months ago | Formatters for time, numbers, and memory size to human readable format |
gotabulate | 332 | over 3 years ago | Easily pretty-print your tabular data with Go |
textwrap | 5 | about 5 years ago | Wraps text at end of lines. Implementation of module from Python |
Awesome Go / Text Processing / Markup Languages | |||
bafi | 104 | 7 months ago | Universal JSON, BSON, YAML, XML translator to ANY format using templates |
bbConvert | 12 | about 2 months ago | Converts bbCode to HTML that allows you to add support for custom bbCode tags |
blackfriday | 5,431 | 9 months ago | Markdown processor in Go |
go-output-format | 17 | 8 months ago | Output go structures into multiple formats (YAML/JSON/etc) in your command line app |
go-toml | 1,716 | about 2 months ago | Go library for the TOML format with query support and handy cli tools |
goldmark | 3,608 | about 2 months ago | A Markdown parser written in Go. Easy to extend, standard (CommonMark) compliant, well structured |
goq | 257 | about 3 years ago | Declarative unmarshalling of HTML using struct tags with jQuery syntax (uses GoQuery) |
html-to-markdown | 860 | about 1 month ago | Convert HTML to Markdown. Even works with entire websites and can be extended through rules |
htmlquery | 733 | 4 months ago | An XPath query package for HTML, lets you extract data or evaluate from HTML documents by an XPath expression |
htmlyaml | 4 | about 2 months ago | Rich rendering of YAML as HTML in Go |
htree | 4 | 9 months ago | Traverse, navigate, filter, and otherwise process trees of objects |
mxj | 622 | 6 months ago | Encode / decode XML as JSON or map[string]interface{}; extract values with dot-notation paths and wildcards. Replaces x2j and j2x packages |
toml | 4,557 | 2 months ago | TOML configuration format (encoder/decoder with reflection) |
Awesome Go / Text Processing / Parsers/Encoders/Decoders | |||
allot | 59 | over 2 years ago | Placeholder and wildcard text parsing for CLI tools and bots |
codetree | 24 | almost 5 years ago | Parses indented code (python, pixy, scarlet, etc.) and returns a tree structure |
commonregex | 895 | almost 5 years ago | A collection of common regular expressions for Go |
did | 88 | almost 2 years ago | DID (Decentralized Identifiers) Parser and Stringer in Go |
doi | 8 | about 7 years ago | Document object identifier (doi) parser in Go |
editorconfig-core-go | 141 | about 1 month ago | Editorconfig file parser and manipulator for Go |
encdec | 9 | almost 5 years ago | Package provides a generic interface to encoders and decoders |
go-fasttld | 33 | about 1 month ago | High performance effective top level domains (eTLD) extraction module |
go-nmea | 226 | 2 months ago | NMEA parser library for the Go language |
go-querystring | 1,970 | 9 days ago | Go library for encoding structs into URL query parameters |
go-vcard | 106 | about 1 year ago | Parse and format vCard |
godump | 149 | 10 days ago | Pretty print any GO variable with ease, an alternative to Go's |
gofeed | 2,564 | 2 months ago | Parse RSS and Atom feeds in Go |
gographviz | 549 | over 1 year ago | Parses the Graphviz DOT language |
gonameparts | 42 | 9 days ago | Parses human names into individual name parts |
ltsv | 9 | 15 days ago | High performance reader for Go |
normalize | 46 | over 3 years ago | Sanitize, normalize and compare fuzzy text |
parseargs-go | 10 | over 7 years ago | string argument parser that understands quotes and backslashes |
parth | 0 | 5 months ago | URL path segmentation parsing |
prattle | 6 | 12 months ago | Scan and parse LL(1) grammars simply and efficiently |
sdp | 113 | over 4 years ago | SDP: Session Description Protocol [ ] |
sh | 7,189 | 13 days ago | Shell parser and formatter |
tokenizer | 92 | 6 months ago | Parse any string, slice or infinite buffer to any tokens |
when | 1,328 | 11 months ago | Natural EN and RU language date/time parser with pluggable rules |
xj2go | 34 | almost 3 years ago | Convert xml or json to go struct |
Awesome Go / Text Processing / Regular Expressions | |||
genex | 77 | almost 5 years ago | Count and expand Regular Expressions into all matching Strings |
go-wildcard | 81 | about 1 year ago | Simple and lightweight wildcard pattern matching |
goregen | 90 | over 2 years ago | Library for generating random strings from regular expressions |
regroup | 145 | 17 days ago | Match regex expression named groups into go struct using struct tags and automatic parsing |
rex | 194 | 8 months ago | Regular expressions builder |
Awesome Go / Text Processing / Sanitation | |||
bluemonday | 3,159 | 3 months ago | HTML Sanitizer |
gofuckyourself | 65 | over 1 year ago | A sanitization-based swear filter for Go |
Awesome Go / Text Processing / Scrapers | |||
colly | 23,125 | 2 months ago | Fast and Elegant Scraping Framework for Gophers |
dataflowkit | 659 | over 1 year ago | Web scraping Framework to turn websites into structured data |
go-recipe | 27 | over 1 year ago | A package for scraping recipes from websites |
GoQuery | 13,963 | about 1 month ago | GoQuery brings a syntax and a set of features similar to jQuery to the Go language |
pagser | 104 | 12 months ago | Pagser is a simple, extensible, configurable parse and deserialize html page to struct based on goquery and struct tags for golang crawler |
Tagify | 37 | 3 months ago | Produces a set of tags from given source |
walker | 10 | over 1 year ago | Seamlessly fetch paginated data from any source. Simple and high performance API scraping included |
xurls | 1,181 | 11 days ago | Extract urls from text |
Awesome Go / Text Processing / RSS | |||
podcast | 132 | almost 4 years ago | iTunes Compliant and RSS 2.0 Podcast Generator in Golang |
Awesome Go / Text Processing / Utility/Miscellaneous | |||
go-runewidth | 607 | 3 months ago | Functions to get fixed width of the character or string |
go-zero-width | 109 | about 4 years ago | Zero-width character detection and removal for Go |
kace | 20 | about 6 years ago | Common case conversions covering common initialisms |
petrovich | 47 | 11 months ago | Petrovich is the library which inflects Russian names to given grammatical case |
radix | 192 | over 6 years ago | Fast string sorting algorithm |
TySug | 18 | over 1 year ago | Alternative suggestions with respect to keyboard layouts |
w2vgrep | 1,108 | about 2 months ago | A semantic grep tool using word embeddings to find semantically similar matches. For example, searching for "death" will find "dead", "killing", "murder" |
Awesome Go / Third-party APIs | |||
airtable | 76 | 7 months ago | Go client library for the |
amazon-product-advertising-api | 57 | over 6 years ago | Go Client Library for |
anaconda | 1,143 | 9 months ago | Go client library for the Twitter 1.1 API |
appstore-sdk-go | 5 | 9 months ago | Unofficial Golang SDK for AppStore Connect API |
aws-sdk-go | 2,607 | 9 days ago | The official AWS SDK for the Go programming language |
bqwriter | 15 | about 1 year ago | High Level Go Library to write data into at a high throughout |
brewerydb | 19 | over 9 years ago | Go library for accessing the BreweryDB API |
cachet | 91 | over 3 years ago | Go client library for |
circleci | 65 | 9 months ago | Go client library for interacting with CircleCI's API |
clarifai | 55 | about 7 years ago | Go client library for interfacing with the Clarifai API |
codeship-go | 18 | almost 4 years ago | Go client library for interacting with Codeship's API v2 |
coinpaprika-go | 23 | 10 months ago | Go client library for interacting with Coinpaprika's API |
device-check-go | 25 | 2 months ago | Go client library for interacting with v1 |
discordgo | 5,045 | 11 days ago | Go bindings for the Discord Chat API |
disgo | 87 | about 1 year ago | Go API Wrapper for the Discord API |
dusupay-sdk-go | 3 | almost 2 years ago | Unofficial Dusupay payment gateway API Client for Go |
ethrpc | 267 | 9 months ago | Go bindings for Ethereum JSON RPC API |
1,324 | 5 months ago | Go Library that supports the Facebook Graph API | |
fasapay-sdk-go | 2 | over 2 years ago | Unofficial Fasapay payment gateway XML API Client for Golang |
fcm | 51 | over 4 years ago | Go library for Firebase Cloud Messaging |
gads | 50 | almost 3 years ago | Google Adwords Unofficial API |
gami | 33 | over 6 years ago | Go library for Asterisk Manager Interface |
gcm | 31 | almost 9 years ago | Go library for Google Cloud Messaging |
geo-golang | 512 | 4 months ago | Go Library to access , , , , , , and geocoding / reverse geocoding APIs |
github | 10,336 | 11 days ago | Go library for accessing the GitHub REST API v3 |
githubql | 1,113 | 3 months ago | Go library for accessing the GitHub GraphQL API v4 |
go-atlassian | 125 | 10 days ago | Go library for accessing the services (Jira, Jira Service Management, Jira Agile, Confluence, Admin Cloud) |
go-aws-news | 17 | 4 months ago | Go application and library to fetch what's new from AWS |
go-chronos | 8 | over 6 years ago | Go library for interacting with the Job Scheduler |
go-hacknews | 17 | about 7 years ago | Tiny Go client for HackerNews API |
go-here | 13 | over 4 years ago | Go client library around the HERE location based APIs |
go-hibp | 8 | 5 months ago | Simple Go binding to the "Have I Been Pwned" APIs |
go-imgur | 24 | 3 months ago | Go client library for |
go-jira | 1,468 | 11 days ago | Go client library for |
go-lark | 201 | about 1 month ago | An easy-to-use unofficial SDK for and Open Platform |
go-marathon | 199 | about 4 years ago | Go library for interacting with Mesosphere's Marathon PAAS |
go-myanimelist | 39 | 6 months ago | Go client library for accessing the |
go-openai | 9,039 | 16 days ago | OpenAI ChatGPT, DALL·E, Whisper API library for Go |
go-openproject | 16 | almost 2 years ago | Go client library for interacting with API |
go-postman-collection | 81 | 5 months ago | Go module to work with (compatible with Insomnia) |
go-redoc | 69 | 5 months ago | Embedded OpenAPI/Swagger documentation ui for Go using |
go-restcountries | 4 | almost 3 years ago | Go library for the |
go-salesforce | 25 | 22 days ago | Go client library for interacting with the |
go-sophos | 12 | over 2 years ago | Go client library for the with zero dependencies |
go-swagger-ui | 11 | almost 2 years ago | Go library containing precompiled for serving swagger json |
go-telegraph | Telegraph publishing platform API client | ||
go-trending | 140 | 5 months ago | Go library for accessing and at Github |
go-twitter | 1,589 | almost 2 years ago | Go client library for the Twitter v1.1 APIs |
go-unsplash | 74 | over 1 year ago | Go client library for the API |
go-xkcd | 51 | almost 2 years ago | Go client for the xkcd API |
go-yapla | Go client library for the Yapla v2.0 API | ||
goagi | 10 | 4 months ago | Go library to build Asterisk PBX agi/fastagi applications |
goami2 | 15 | 6 months ago | AMI v2 library for Asterisk PBX |
GoFreeDB | 36 | 11 months ago | Golang library providing common and simple database abstractions on top of Google Sheets |
gogtrends | 80 | almost 2 years ago | Google Trends Unofficial API |
golang-tmdb | 119 | about 1 month ago | Golang wrapper for The Movie Database API v3 |
golyrics | 42 | over 6 years ago | Golyrics is a Go library to fetch music lyrics data from the Wikia website |
gomalshare | 13 | over 5 years ago | Go library MalShare API |
GoMusicBrainz | 57 | over 1 year ago | Go MusicBrainz WS2 client library |
3,992 | 8 days ago | Auto-generated Google APIs for Go | |
google-analytics | 15 | over 9 years ago | Simple wrapper for easy google analytics reporting |
google-cloud | 3,729 | 8 days ago | Google Cloud APIs Go Client Library |
google-email-audit-api | 8 | almost 8 years ago | Go client library for |
google-play-scraper | 81 | 12 months ago | Get data from Google Play Store |
gopaapi5 | 16 | over 4 years ago | Go Client Library for |
gopensky | 2 | 15 days ago | Go client implementation for live's API (airspace ADS-B and Mode S data) |
gosip | 141 | 8 months ago | Client library for SharePoint |
gostorm | 129 | about 7 years ago | GoStorm is a Go library that implements the communications protocol required to write Storm spouts and Bolts in Go that communicate with the Storm shells |
hipchat | 104 | over 8 years ago | This project implements a golang client library for the Hipchat API |
hipchat (xmpp) | 111 | over 7 years ago | A golang package to communicate with HipChat over XMPP |
igdb | 81 | over 1 year ago | Go client for the |
ip2location-io-go | 10 | 4 months ago | Go wrapper for the IP2Location.io API |
jokeapi-go | 24 | 10 months ago | Go client for |
lark | 416 | about 1 month ago | / Open API Go SDK, Support ALL Open API and Event Callback |
lastpass-go | 34 | over 1 year ago | Go client library for the API |
libgoffi | 9 | about 4 years ago | Library adapter toolbox for native integration |
Medium | 140 | almost 6 years ago | Golang SDK for Medium's OAuth2 API |
megos | 54 | over 3 years ago | Client library for accessing an cluster |
minio-go | 2,447 | 10 days ago | Minio Go Library for Amazon S3 compatible cloud storage |
mixpanel | 61 | over 1 year ago | Mixpanel is a library for tracking events and sending Mixpanel profile updates to Mixpanel from your go applications |
newsapi-go | 7 | 7 months ago | Go client for |
openaigo | 290 | 5 months ago | OpenAI GPT3/GPT3.5 ChatGPT API client library for Go |
patreon-go | 42 | about 2 years ago | Go library for Patreon API |
paypal | 682 | 18 days ago | Wrapper for PayPal payment API |
playlyfe | 2 | over 8 years ago | The Playlyfe Rest API Go SDK |
pushover | 140 | 6 months ago | Go wrapper for the Pushover API |
rawg-sdk-go | 12 | over 2 years ago | Go library for the API |
rrdaclient | 10 | about 10 years ago | Go Library to access statdns.com API, which is in turn RRDA API. DNS Queries over HTTP |
shopify | 25 | almost 4 years ago | Go Library to make CRUD request to the Shopify API |
simples3 | 149 | 3 months ago | Simple no frills AWS S3 Library using REST with V4 Signing written in Go |
slack | 4,659 | 23 days ago | Slack API in Go |
smite | 11 | about 10 years ago | Go package to wraps access to the Smite game API |
spotify | 50 | about 1 month ago | Go Library to access Spotify WEB API |
steam | 32 | 4 months ago | Go Library to interact with Steam game servers |
stripe | 2,123 | 11 days ago | Go client for the Stripe API |
swag | 46 | 5 months ago | No comments, simple go wrapper to create swagger 2.0 compatible APIs. Support most routing frameworks, such as built-in, gin, chi, mux, echo, httprouter, fasthttp and more |
textbelt | 19 | about 9 years ago | Go client for the textbelt.com txt messaging API |
translate | 33 | over 8 years ago | Go online translation package |
Trello | 219 | 6 months ago | Go wrapper for the Trello API |
TripAdvisor | 2 | almost 5 years ago | Go wrapper for the TripAdvisor API |
tumblr | 8 | almost 8 years ago | Go wrapper for the Tumblr v2 API |
twitter-scraper | 894 | 11 months ago | Scrape the Twitter Frontend API without authentication and limits |
uptimerobot | 57 | over 1 year ago | Go wrapper and command-line client for the Uptime Robot v2 API |
vl-go | 2 | over 3 years ago | Go client library around the VerifID identity verification layer API |
webhooks | 951 | 2 months ago | Webhook receiver for GitHub and Bitbucket |
wit-go | 158 | 3 months ago | Go client for wit.ai HTTP API |
ynab | 70 | 8 months ago | Go wrapper for the YNAB API |
zooz | 7 | 7 months ago | Go client for the Zooz API |
Awesome Go / Utilities | |||
apm | 166 | almost 8 years ago | Process manager for Golang applications with an HTTP API |
backscanner | 64 | 7 months ago | A scanner similar to bufio.Scanner, but it reads and returns lines in reverse order, starting at a given position and going backward |
blank | 13 | about 5 years ago | Verify or remove blanks and whitespace from strings |
bleep | 11 | almost 4 years ago | Perform any number of actions on any set of OS signals in Go |
boilr | 1,721 | over 1 year ago | Blazingly fast CLI tool for creating projects from boilerplate templates |
changie | 676 | 13 days ago | Automated changelog tool for preparing releases with lots of customization options |
chyle | 157 | 10 days ago | Changelog generator using a git repository with multiple configuration possibilities |
circuit | 763 | about 1 month ago | An efficient and feature complete Hystrix like Go implementation of the circuit breaker pattern |
circuitbreaker | 1,124 | 5 months ago | Circuit Breakers in Go |
clipboard | 593 | about 2 months ago | 📋 cross-platform clipboard package in Go |
clockwork | 656 | about 2 months ago | A simple fake clock for golang |
cmd | 153 | 9 months ago | Library for executing shell commands on osx, windows and linux |
command | 14 | over 8 years ago | Command pattern for Go with thread safe serial and parallel dispatcher |
config-file-validator | 325 | about 1 month ago | Cross Platform tool to validate configuration files |
contextplus | 16 | over 1 year ago | Package contextplus provide more easy to use functions for contexts |
cookie | 110 | 10 days ago | Cookie struct parsing and helper package |
copy-pasta | 50 | over 4 years ago | Universal multi-workstation clipboard that uses S3 like backend for the storage |
countries | 398 | 5 months ago | Full implementation of ISO-3166-1, ISO-4217, ITU-T E.164, Unicode CLDR and IANA ccTLD standards |
countries | 88 | about 1 year ago | All you need when you are working with countries in Go |
create-go-app | 2,571 | about 1 month ago | A powerful CLI for create a new production-ready project with backend (Golang), frontend (JavaScript, TypeScript) & deploy automation (Ansible, Docker) by running one command |
cryptgo | 155 | almost 3 years ago | Crytpgo is a TUI based application written purely in Go to monitor and observe cryptocurrency prices in real time! |
ctop | 15,468 | 3 months ago | interface (e.g. htop) for container metrics |
ctxutil | 25 | over 4 years ago | A collection of utility functions for contexts |
cvt | 48 | 21 days ago | Easy and safe convert any value to another type |
dbt | 62 | 4 months ago | A framework for running self-updating signed binaries from a central, trusted repository |
Death | 196 | over 2 years ago | Managing go application shutdown with signals |
delve | 632 | 3 months ago | Go debugger |
dive | 45,722 | 3 months ago | A tool for exploring each layer in a Docker image |
dlog | 17 | about 7 years ago | Compile-time controlled logger to make your release smaller without removing debug calls |
EaseProbe | 2,159 | 11 days ago | A simple, standalone, and lightWeight tool that can do health/status checking daemon, support HTTP/TCP/SSH/Shell/Client/... probes, and Slack/Discord/Telegram/SMS... notification |
equalizer | 83 | 7 months ago | Quota manager and rate limiter collection for Go |
ergo | 622 | 3 months ago | The management of multiple local services running over different ports made easy |
evaluator | 39 | over 1 year ago | Evaluate an expression dynamically based on s-expression. It's simple and easy to extend |
Failsafe-go | 1,639 | 11 days ago | Fault tolerance and resilience patterns for Go |
filetype | 2,096 | 7 months ago | Small package to infer the file type checking the magic numbers signature |
filler | 18 | over 7 years ago | small utility to fill structs using "fill" tag |
filter | 151 | 9 days ago | provide filtering, sanitizing, and conversion of Go data |
fzf | 64,227 | 11 days ago | Command-line fuzzy finder written in Go |
generate | 30 | almost 8 years ago | runs go generate recursively on a specified path or environment variable and can filter by regex |
ghokin | 43 | about 1 month ago | Parallelized formatter with no external dependencies for gherkin (cucumber, behat...) |
git-time-metric | 976 | over 2 years ago | Simple, seamless, lightweight time tracking for Git |
gitbatch | 1,538 | over 1 year ago | manage your git repositories in one place |
gitcs | 115 | 4 months ago | Git Commits Visualizer, CLI tool to visualize your Git commits on your local machine |
go-actuator | 15 | over 2 years ago | Production ready features for Go based web frameworks |
go-astitodo | 64 | 6 months ago | Parse TODOs in your GO code |
go-bind-plugin | 184 | about 5 years ago | go:generate tool for wrapping symbols exported by golang plugins (1.8 only) |
go-bsdiff | 161 | over 5 years ago | Pure Go bsdiff and bspatch libraries and CLI tools |
go-clip | 13 | over 3 years ago | A minimalistic clipboard manager for Mac |
go-convert | 23 | 5 months ago | Package go-convert enables you to convert a value into another type |
go-countries | 13 | almost 4 years ago | Lightweight lookup over ISO-3166 codes |
go-dry | 488 | about 1 year ago | DRY (don't repeat yourself) package for Go |
go-funk | 4,756 | 3 months ago | Modern Go utility library which provides helpers (map, find, contains, filter, chunk, reverse, ...) |
go-health | 97 | over 2 years ago | Health package simplifies the way you add health check to your services |
go-httpheader | 47 | about 1 year ago | Go library for encoding structs into Header fields |
go-lambda-cleanup | 91 | 11 days ago | A CLI for removing unused or previous versions of AWS Lambdas |
go-lock | 116 | over 2 years ago | go-lock is a lock library implementing read-write mutex and read-write trylock without starvation |
go-pattern-match | 92 | about 1 year ago | A Pattern matching library inspired by ts-pattern |
go-pkg | 7 | over 2 years ago | A go toolkit |
go-problemdetails | 17 | over 4 years ago | Go package for working with Problem Details |
go-qr | 29 | about 2 months ago | A native, high-quality and minimalistic QR code generator |
go-rate | 397 | over 2 years ago | Timed rate limiter for Go |
go-sitemap-generator | 219 | 3 months ago | XML Sitemap generator written in Go |
go-trigger | 246 | over 7 years ago | Go-lang global event triggerer, Register Events with an id and trigger the event from anywhere from your project |
go-type | 18 | 18 days ago | Library providing Go types for store/validation and transfer of ISO-4217, ISO-3166, and other types |
goback | 49 | over 3 years ago | Go simple exponential backoff package |
goctx | 9 | almost 4 years ago | Get your context value with high performance |
godaemon | 494 | over 3 years ago | Utility to write daemons |
godropbox | 4,168 | 10 months ago | Common libraries for writing Go services/applications from Dropbox |
gofn | 43 | 10 days ago | High performance utility functions written using Generics for Go 1.18+ |
gohper | 255 | about 7 years ago | Various tools/modules help for development |
golarm | 53 | about 9 years ago | Fire alarms with system events |
golog | 61 | over 5 years ago | Easy and lightweight CLI tool to time track your tasks |
gopencils | 452 | over 5 years ago | Small and simple package to easily consume REST APIs |
goplaceholder | 29 | over 8 years ago | a small golang lib to generate placeholder images |
goreadability | 69 | over 5 years ago | Webpage summary extractor using Facebook Open Graph and arc90's readability |
goreleaser | 13,681 | 8 days ago | Deliver Go binaries as fast and easily as possible |
goreporter | 3,125 | almost 6 years ago | Golang tool that does static analysis, unit testing, code review and generate code quality report |
goseaweedfs | 114 | almost 2 years ago | SeaweedFS client library with almost full features |
gostrutils | 45 | 3 months ago | Collections of string manipulation and conversion functions |
gotenv | 296 | about 1 year ago | Load environment variables from or any in Go |
goval | 154 | 3 months ago | Evaluate arbitrary expressions in Go |
graterm | 26 | almost 2 years ago | Provides primitives to perform ordered (sequential/concurrent) GRAceful TERMination (aka shutdown) in Go application |
grofer | 350 | over 1 year ago | A system and resource monitoring tool written in Golang! |
gubrak | 481 | over 1 year ago | Golang utility library with syntactic sugar. It's like lodash, but for golang |
handy | 81 | about 4 years ago | Many utilities and helpers like string handlers/formatters and validators |
hostctl | 1,083 | 9 months ago | A CLI tool to manage /etc/hosts with easy commands |
htcat | 555 | over 5 years ago | Parallel and Pipelined HTTP GET Utility |
hub | 22,791 | 8 months ago | wrap git commands with additional functionality to interact with github from the terminal |
hystrix-go | 4,227 | 8 months ago | Implements Hystrix patterns of programmer-defined fallbacks aka circuit breaker |
immortal | 801 | 3 months ago | *nix cross-platform (OS agnostic) supervisor |
intrinsic | 47 | over 7 years ago | Use x86 SIMD without writing any assembly code |
jsend | 22 | over 3 years ago | JSend's implementation written in Go |
json-log-viewer | 86 | 6 days ago | Interactive viewer for JSON logs |
jump | 1,782 | 5 months ago | Jump helps you navigate faster by learning your habits |
just | 31 | about 1 month ago | Just a collection of useful functions for working with generic data structures |
koazee | 528 | almost 4 years ago | Library inspired in Lazy evaluation and functional programming that takes the hassle out of working with arrays |
lancet | 4,546 | 14 days ago | A comprehensive, efficient, and reusable util function library of go |
lets-go | 7 | over 3 years ago | Go module that provides common utilities for Cloud Native REST API development. Also contains AWS Specific utilities |
limiters | 430 | 9 days ago | Rate limiters for distributed applications in Golang with configurable back-ends and distributed locks |
lo | 17,605 | 11 days ago | A Lodash like Go library based on Go 1.18+ Generics (map, filter, contains, find...) |
loncha | 9 | about 2 years ago | A high-performance slice Utilities |
lrserver | 127 | 7 months ago | LiveReload server for Go |
mani | 437 | 11 days ago | CLI tool to help you manage multiple repositories |
mc | 2,832 | 10 days ago | Minio Client provides minimal tools to work with Amazon S3 compatible cloud storage and filesystems |
mergo | 2,867 | about 2 months ago | Helper to merge structs and maps in Golang. Useful for configuration default values, avoiding messy if-statements |
mimemagic | 99 | about 1 year ago | Pure Go ultra performant MIME sniffing library/utility |
mimesniffer | 33 | about 2 years ago | A MIME type sniffer for Go |
mimetype | 1,635 | 11 days ago | Package for MIME type detection based on magic numbers |
minify | 3,715 | 12 days ago | Fast minifiers for HTML, CSS, JS, XML, JSON and SVG file formats |
minquery | 62 | over 1 year ago | MongoDB / mgo.v2 query that supports efficient pagination (cursors to continue listing documents where we left off) |
moldova | 168 | about 7 years ago | Utility for generating random data based on an input template |
mole | 1,692 | 5 months ago | cli app to easily create ssh tunnels |
mongo-go-pagination | 129 | over 1 year ago | Mongodb Pagination for official mongodb/mongo-go-driver package which supports both normal queries and Aggregation pipelines |
mssqlx | 102 | 6 months ago | Database client library, proxy for any master slave, master master structures. Lightweight and auto balancing in mind |
multitick | 70 | 10 months ago | Multiplexor for aligned tickers |
myhttp | 34 | over 6 years ago | Simple API to make HTTP GET requests with timeout support |
netbug | 73 | almost 9 years ago | Easy remote profiling of your services |
nfdump | 10 | over 1 year ago | Read nfdump netflow files |
nostromo | 142 | 4 months ago | CLI for building powerful aliases |
okrun | 16 | about 10 years ago | go run error steamroller |
olaf | 6 | over 5 years ago | Twitter Snowflake implemented in Go |
onecache | 136 | over 4 years ago | Caching library with support for multiple backend stores (Redis, Memcached, filesystem etc) |
panicparse | 3,521 | about 1 year ago | Groups similar goroutines and colorizes stack dump |
pattern-match | 243 | over 1 year ago | Pattern matching library |
peco | 7,662 | 7 months ago | Simplistic interactive filtering tool |
pgo | 86 | 6 months ago | Convenient functions for PHP community |
pm | 80 | 10 months ago | Process (i.e. goroutine) manager with an HTTP API |
pointer | 43 | 5 months ago | Package pointer contains helper routines for simplifying the creation of optional fields of basic type |
ptr | 27 | over 1 year ago | Package that provide functions for simplified creation of pointers from constants of basic types |
rclient | 35 | almost 5 years ago | Readable, flexible, simple-to-use client for REST APIs |
remote-touchpad | 516 | about 1 month ago | Control mouse and keyboard from a smartphone |
repeat | 86 | about 4 years ago | Go implementation of different backoff strategies useful for retrying operations and heartbeating |
request | 426 | almost 5 years ago | Go HTTP Requests for Humans™ |
rerun | 167 | over 6 years ago | Recompiling and rerunning go apps when source changes |
rest-go | 16 | about 4 years ago | A package that provide many helpful methods for working with rest api |
retry | 340 | 4 months ago | The most advanced functional mechanism to perform actions repetitively until successful |
retry | 10 | over 1 year ago | A simple but highly configurable retry package for Go |
retry | 66 | almost 3 years ago | Simple and easy retry mechanism package for Go |
retry | 12 | over 4 years ago | A pretty simple library to ensure your work to be done |
retry-go | 2,417 | about 1 month ago | Simple library for retry mechanism |
retry-go | 50 | almost 6 years ago | Retrying made simple and easy for golang |
robustly | 157 | 10 months ago | Runs functions resiliently, catching and restarting panics |
rospo | 310 | about 1 month ago | Simple and reliable ssh tunnels with embedded ssh server in Golang |
scan | 557 | about 1 month ago | Scan golang directly to structs, slices, or primitive types |
scan | 63 | 7 months ago | Scan sql rows into any type powered by generics |
scany | 1,285 | 4 months ago | Library for scanning data from a database into Go structs and more |
serve | 333 | 3 months ago | A static http server anywhere you need |
set | 47 | over 2 years ago | Performant and flexible struct mapping and loose type conversion |
shutdown | 58 | over 2 years ago | App shutdown hooks for handling |
silk | 14 | over 2 years ago | Read silk netflow files |
slice | 51 | over 4 years ago | Type-safe functions for common Go slice operations |
sliceconv | 10 | over 4 years ago | Slice conversion between primitive types |
slicer | 45 | about 3 years ago | Makes working with slices easier |
sorty | 132 | 5 months ago | Fast Concurrent / Parallel Sorting |
sqlx | 16,071 | about 2 months ago | provides a set of extensions on top of the excellent built-in database/sql package |
sshman | 48 | almost 2 years ago | SSH Manager for authorized_keys files on multiple remote servers |
statiks | 11 | about 4 years ago | Fast, zero-configuration, static HTTP filer server |
Storm | 2,061 | 9 months ago | Simple and powerful toolkit for BoltDB |
structs | 24 | almost 7 years ago | Implement simple functions to manipulate structs |
throttle | 38 | about 3 years ago | Throttle is an object that will perform exactly one action per duration |
tik | 5 | almost 4 years ago | Simple and easy timing wheel package for Go |
tome | 35 | over 2 years ago | Tome was designed to paginate simple RESTful APIs |
toolbox | 197 | 18 days ago | Slice, map, multimap, struct, function, data conversion utilities. Service router, macro evaluator, tokenizer |
ugo | 27 | over 8 years ago | ugo is slice toolbox with concise syntax for Go |
UNIS | 70 | over 7 years ago | Common Architecture™ for String Utilities in Go |
upterm | 838 | 12 days ago | A tool for developers to share terminal/tmux sessions securely over the web. It’s perfect for remote pair programming, accessing computers behind NATs/firewalls, remote debugging, and more |
usql | 8,905 | about 2 months ago | usql is a universal command-line interface for SQL databases |
util | 291 | about 2 years ago | Collection of useful utility functions. (strings, concurrency, manipulations, ...) |
watchhttp | 32 | about 2 months ago | Run command periodically and expose latest STDOUT or its rich delta as HTTP endpoint |
wifiqr | 262 | 5 months ago | Wi-Fi QR Code Generator |
wuzz | 10,542 | 3 months ago | Interactive cli tool for HTTP inspection |
xferspdy | 101 | over 3 years ago | Xferspdy provides binary diff and patch library in golang |
yogo | 41 | about 1 month ago | Check yopmail mails from command line |
Awesome Go / UUID | |||
fastuuid | 0 | over 1 year ago | Fast generate UUIDv4 as string or bytes |
goid | 41 | over 5 years ago | Generate and Parse RFC4122 compliant V4 UUIDs |
gouid | 24 | 9 months ago | Generate cryptographically secure random string IDs with just one allocation |
nanoid | 61 | about 2 years ago | A tiny and efficient Go unique string ID generator |
sno | 91 | almost 3 years ago | Compact, sortable and fast unique IDs with embedded metadata |
ulid | 4,467 | 6 months ago | Go implementation of ULID (Universally Unique Lexicographically Sortable Identifier) |
uniq | No hassle safe, fast unique identifiers with commands | ||
uuid | 18 | over 4 years ago | Generate, encode, and decode UUIDs v1 with fast or cryptographic-quality random node identifier |
uuid | 1,575 | 12 days ago | Implementation of Universally Unique Identifier (UUID). Supports both creation and parsing of UUIDs. Actively maintained fork of satori uuid |
uuid | 5,283 | 2 months ago | Go package for UUIDs based on RFC 4122 and DCE 1.1: Authentication and Security Services |
wuid | 532 | 9 months ago | An extremely fast globally unique number generator |
xid | 3,904 | about 2 months ago | Xid is a globally unique id generator library, ready to be safely used directly in your server code |
Awesome Go / Validation | |||
checkdigit | 111 | over 1 year ago | Provide check digit algorithms (Luhn, Verhoeff, Damm) and calculators (ISBN, EAN, JAN, UPC, etc.) |
go-validator | 12 | about 1 month ago | Validation library using Generics |
gody | 68 | 3 months ago | A lightweight struct validator for Go |
govalid | 45 | about 2 months ago | Fast, tag-based validation for structs |
govalidator | 6,024 | about 1 month ago | Validators and sanitizers for strings, numerics, slices and structs |
govalidator | 1,317 | 5 months ago | Validate Golang request data with simple rules. Highly inspired by Laravel's request validation |
hvalid | 9 | 5 months ago | hvalid is a lightweight validation library written in Go language. It provides a custom validator interface and a series of common validation functions to help developers quickly implement data validation |
jio | 111 | 3 months ago | jio is a json schema validator similar to |
ozzo-validation | 3,718 | 7 months ago | Supports validation of various data types (structs, strings, maps, slices, etc.) with configurable and extensible validation rules specified in usual code constructs instead of struct tags |
validate | 1,060 | 10 days ago | Go package for data validation and filtering. support validate Map, Struct, Request(Form, JSON, url.Values, Uploaded Files) data and more features |
validate | 94 | about 2 years ago | This package provides a framework for writing validations for Go applications |
validator | 16,639 | about 1 month ago | Go Struct and Field validation, including Cross Field, Cross Struct, Map, Slice and Array diving |
Validator | 7 | about 2 months ago | A lightweight model validator written in Go.Contains VFs:Min, Max, MinLength, MaxLength, Length, Enum, Regex |
valix | 28 | 11 months ago | Go package for validating requests |
Awesome Go / Version Control | |||
cli | An open-source GitLab command line tool bringing GitLab's cool features to your command line | ||
froggit-go | 45 | 3 months ago | Froggit-Go is a Go library, allowing to perform actions on VCS providers |
gh | 82 | almost 6 years ago | Scriptable server and net/http middleware for GitHub Webhooks |
git2go | 1,928 | 7 months ago | Go bindings for libgit2 |
githooks | 102 | 9 days ago | Per-repo and shared Git hooks with version control and auto update |
go-git | 5,873 | 12 days ago | highly extensible Git implementation in pure Go |
go-vcs | 80 | about 1 year ago | manipulate and inspect VCS repositories in Go |
hercules | 2,588 | over 1 year ago | gaining advanced insights from Git repository history |
hgo | 17 | about 9 years ago | Hgo is a collection of Go packages providing read-access to local Mercurial repositories |
Awesome Go / Video | |||
gmf | 889 | about 2 years ago | Go bindings for FFmpeg av* libraries |
go-astiav | 365 | 14 days ago | Better C bindings for ffmpeg in GO |
go-astisub | 577 | 10 days ago | Manipulate subtitles in GO (.srt, .stl, .ttml, .webvtt, .ssa/.ass, teletext, .smi, etc.) |
go-astits | 541 | 12 months ago | Parse and demux MPEG Transport Streams (.ts) natively in GO |
go-m3u8 | 29 | about 2 years ago | Parser and generator library for Apple m3u8 playlists. Actively maintained version of quangngotan95/go-m3u8 with improvements and latest HLS playlist parsing compatibility |
go-mpd | 24 | 11 months ago | Parser and generator library for MPEG-DASH manifest files |
goav | 2,098 | over 2 years ago | Comprehensive Go bindings for FFmpeg |
gortsplib | 674 | 16 days ago | Pure Go RTSP server and client library |
gst | 169 | almost 4 years ago | Go bindings for GStreamer |
libgosubs | 26 | over 4 years ago | Subtitle format support for go. Supports .srt, .ttml, and .ass |
libvlc-go | 433 | 29 days ago | Go bindings for libvlc 2.X/3.X/4.X (used by the VLC media player) |
m3u8 | 1,226 | 2 months ago | Parser and generator library of M3U8 playlists for Apple HLS |
v4l | 79 | 7 months ago | Video capture library for Linux, written in Go |
Awesome Go / Web Frameworks | |||
aah | Scalable, performant, rapid development Web framework for Go | ||
Aero | 572 | 8 months ago | High-performance web framework for Go, reaches top scores in Lighthouse |
Air | 440 | over 1 year ago | An ideally refined web framework for Go |
anoweb | 5 | about 2 years ago | The lightweight and powerful web framework using the new way for Go.Another go the way |
appy | 132 | 7 months ago | An opinionated productive web framework that helps scaling business easier |
Atreugo | 1,227 | 3 months ago | High performance and extensible micro web framework with zero memory allocations in hot paths |
Banjo | 24 | over 6 years ago | Very simple and fast web framework for Go |
Beego | 31,497 | 21 days ago | beego is an open-source, high-performance web framework for the Go programming language |
Buffalo | Bringing the productivity of Rails to Go! | ||
Confetti Framework | Confetti is a Go web application framework with an expressive, elegant syntax. Confetti combines the elegance of Laravel and the simplicity of Go | ||
Don | 51 | 15 days ago | A highly performant and simple to use API framework |
Echo | 29,610 | about 2 months ago | High performance, minimalist Go web framework |
Fastschema | 240 | 10 days ago | A flexible Go web framework and Headless CMS |
Fiber | 33,388 | 10 days ago | An Express.js inspired web framework build on Fasthttp |
Fireball | 60 | about 6 years ago | More "natural" feeling web framework |
Flamingo | 453 | 8 days ago | Framework for pluggable web projects. Including a concept for modules and offering features for DI, Configareas, i18n, template engines, graphql, observability, security, events, routing & reverse routing etc |
Flamingo Commerce | 506 | 9 days ago | Providing e-commerce features using clean architecture like DDD and ports and adapters, that you can use to build flexible e-commerce applications |
Fuego | 820 | 10 days ago | The framework for busy Go developers! Web framework generating OpenAPI 3 spec from source code |
Gearbox | 755 | about 1 year ago | A web framework written in Go with a focus on high performance and memory optimization |
Gin | 78,246 | 19 days ago | Gin is a web framework written in Go! It features a martini-like API with much better performance, up to 40 times faster. If you need performance and good productivity |
Ginrpc | 290 | 14 days ago | Gin parameter automatic binding tool,gin rpc tools |
Gizmo | 3,763 | about 1 year ago | Microservice toolkit used by the New York Times |
go-json-rest | 3,514 | over 3 years ago | Quick and easy way to setup a RESTful JSON API |
go-rest | 128 | over 7 years ago | Small and evil REST framework for Go |
Goa | 5,654 | 20 days ago | Goa provides a holistic approach for developing remote APIs and microservices in Go |
goa | 49 | almost 5 years ago | goa is just like koajs for golang, it is a flexible, light, high-performance and extensible web framework based on middleware |
GoFr | 2,839 | 8 days ago | Gofr is an opinionated microservice development framework |
GoFrame | 11,529 | 9 days ago | GoFrame is a modular, powerful, high-performance and enterprise-class application development framework of Golang |
golamb | 7 | 4 months ago | Golamb makes it easier to write API endpoints for use with AWS Lambda and API Gateway |
Golax | 75 | almost 2 years ago | A non Sinatra fast HTTP framework with support for Google custom methods, deep interceptors, recursion and more |
Golf | 269 | about 3 years ago | Golf is a fast, simple and lightweight micro-web framework for Go. It comes with powerful features and has no dependencies other than the Go Standard Library |
Gondola | 312 | over 5 years ago | The web framework for writing faster sites, faster |
Gone | 116 | about 1 month ago | A lightweight dependency injection and web framework inspired by Spring |
gongular | 500 | over 4 years ago | Fast Go web framework with input mapping/validation and (DI) Dependency Injection |
GoTuna | 48 | about 1 year ago | Minimalistic web framework for Go with mux router, middlewares, sessions, templates, embedded views and static files |
goweb | 36 | about 2 years ago | Web framework with routing, websockets, logging, middleware, static file server (optional gzip), and automatic TLS |
Goyave | 1,611 | 15 days ago | Feature-complete REST API framework aimed at clean code and fast development, with powerful built-in functionalities |
Hertz | 5,230 | 15 days ago | A high-performance and strong-extensibility Go HTTP framework that helps developers build microservices |
hiboot | 180 | about 2 months ago | hiboot is a high performance web application framework with auto configuration and dependency injection support |
Huma | 1,939 | 12 days ago | Framework for modern REST/GraphQL APIs with built-in OpenAPI 3, generated documentation, and a CLI |
iWF | 522 | 2 days ago | iWF is an all-in-one platform for developing long-running business processes. It offers a convenient abstraction for utilizing databases, ElasticSearch, message queues, durable timers, and more, with a clean, simple, and user-friendly interface |
Lit | 24 | 8 months ago | Highly performant declarative web framework for Golang, aiming for simplicity and quality of life |
Macaron | 3,503 | about 1 month ago | Macaron is a high productive and modular design web framework in Go |
mango | 372 | almost 7 years ago | Mango is a modular web-application framework for Go, inspired by Rack, and PEP333 |
Microservice | 114 | 6 months ago | The framework for the creation of microservices, written in Golang |
neo | 419 | almost 2 years ago | Neo is minimal and fast Go Web Framework with extremely simple API |
patron | 123 | 12 days ago | Patron is a microservice framework following best cloud practices with a focus on productivity |
Pnutmux | Pnutmux is a powerful Go web framework that uses regex for matching and handling HTTP requests. It offers features such as CORS handling, structured logging, URL parameters extraction, middlewares, and concurrency limiting | ||
Pulse | 37 | over 1 year ago | Pulse is an HTTP web framework written in Go (Golang) |
Resoursea | 35 | over 9 years ago | REST framework for quickly writing resource based services |
REST Layer | 1,256 | about 3 years ago | Framework to build REST/GraphQL API on top of databases with mostly configuration over code |
Revel | 13,147 | 12 months ago | High-productivity web framework for the Go language |
rex | 33 | almost 7 years ago | Rex is a library for modular development built upon gorilla/mux, fully compatible with |
rk-boot | 514 | 6 months ago | A bootstrapper library for building enterprise go microservice with Gin and gRPC quickly and easily |
rux | 97 | 10 days ago | Simple and fast web framework for build golang HTTP applications |
tango | 832 | over 5 years ago | Micro & pluggable web framework for Go |
tigertonic | 997 | about 6 years ago | Go framework for building JSON web services inspired by Dropwizard |
uAdmin | 336 | 21 days ago | Fully featured web framework for Golang, inspired by Django |
utron | 2,218 | almost 6 years ago | Lightweight MVC framework for Go(Golang) |
vox | 84 | almost 2 years ago | A golang web framework for humans, inspired by Koa heavily |
WebGo | 304 | 6 months ago | A micro-framework to build web apps; with handler chaining, middleware and context injection. With standard library compliant HTTP handlers(i.e. http.HandlerFunc) |
YARF | 67 | over 5 years ago | Fast micro-framework designed to build REST APIs and web services in a fast and simple way |
Yokai | 367 | 10 days ago | Simple, modular, and observable Go framework for backend applications |
Awesome Go / Web Frameworks / Middlewares | |||
client-timing | 24 | over 4 years ago | An HTTP client for Server-Timing header |
CORS | 2,648 | about 1 month ago | Easily add CORS capabilities to your API |
echo-middleware | 15 | about 1 month ago | Middleware for Echo framework with logging and metrics |
formjson | 39 | almost 9 years ago | Transparently handle JSON input as a standard form POST |
go-fault | 503 | about 2 months ago | Fault injection middleware for Go |
go-server-timing | 862 | 10 months ago | Add/parse Server-Timing header |
Limiter | 2,068 | 17 days ago | Dead simple rate limit middleware for Go |
ln-paywall | 148 | over 5 years ago | Go middleware for monetizing APIs on a per-request basis with the Lightning Network (Bitcoin) |
mid | 9 | over 2 years ago | Miscellaneous HTTP middleware features: idiomatic error return from handlers; receive/respond with JSON data; request tracing; and more |
rk-gin | 45 | 6 months ago | Middleware for Gin framework with logging, metrics, auth, tracing etc |
rk-grpc | 75 | 12 months ago | Middleware for gRPC with logging, metrics, auth, tracing etc |
Tollbooth | 2,662 | 4 months ago | Rate limit HTTP request handler |
XFF | 98 | over 2 years ago | Handle header and friends |
alice | 3,101 | 4 months ago | Painless middleware chaining for Go |
catena | 9 | about 6 years ago | http.Handler wrapper catenation (same API as "chain") |
chain | 63 | about 6 years ago | Handler wrapper chaining with scoped data (net/context-based "middleware") |
gores | 102 | almost 4 years ago | Go package that handles HTML, JSON, XML and etc. responses. Useful for RESTful APIs |
interpose | 294 | almost 8 years ago | Minimalist net/http middleware for golang |
mediary | 88 | over 4 years ago | add interceptors to to allow dumping/shaping/tracing/... of requests/responses |
muxchain | 208 | over 5 years ago | Lightweight middleware for net/http |
negroni | 7,462 | 4 months ago | Idiomatic HTTP middleware for Golang |
render | 1,928 | 14 days ago | Go package for easily rendering JSON, XML, and HTML template responses |
renderer | 262 | over 3 years ago | Simple, lightweight and faster response (JSON, JSONP, XML, YAML, HTML, File) rendering package for Go |
rye | 102 | over 1 year ago | Tiny Go middleware library (with canned Middlewares) that supports JWT, CORS, Statsd, and Go 1.7 context |
stats | 595 | almost 2 years ago | Go middleware that stores various information about your web application |
Awesome Go / Web Frameworks / Routers | |||
alien | 131 | 7 months ago | Lightweight and fast http router from outer space |
bellt | 54 | about 2 years ago | A simple Go HTTP router |
Bone | 1,289 | over 5 years ago | Lightning Fast HTTP Multiplexer |
Bxog | 102 | about 2 years ago | Simple and fast HTTP router for Go. It works with routes of varying difficulty, length and nesting. And he knows how to create a URL from the received parameters |
chi | 18,281 | 16 days ago | Small, fast and expressive HTTP router built on net/context |
fasthttprouter | 874 | over 5 years ago | High performance router forked from . The first router fit for |
FastRouter | 23 | almost 7 years ago | a fast, flexible HTTP router written in Go |
goblin | 78 | 5 months ago | A golang http router based on trie tree |
gocraft/web | 1,510 | about 4 years ago | Mux and middleware package in Go |
Goji | 966 | about 2 years ago | Goji is a minimalistic and flexible HTTP request multiplexer with support for |
GoLobby/Router | 21 | over 2 years ago | GoLobby Router is a lightweight yet powerful HTTP router for the Go programming language |
goroute | 9 | almost 5 years ago | Simple yet powerful HTTP request multiplexer |
GoRouter | 154 | about 1 month ago | GoRouter is a Server/API micro framework, HTTP request router, multiplexer, mux that provides request router with middleware supporting |
gowww/router | 185 | about 1 year ago | Lightning fast HTTP router fully compatible with the net/http.Handler interface |
httprouter | 16,568 | 3 months ago | High performance router. Use this and the standard http handlers to form a very high performance web framework |
httptreemux | 617 | 3 months ago | High-speed, flexible tree-based HTTP router for Go. Inspiration from httprouter |
lars | 386 | over 5 years ago | Is a lightweight, fast and extensible zero allocation HTTP router for Go used to create customizable frameworks |
mux | 20,725 | about 2 months ago | Powerful URL router and dispatcher for golang |
nchi | 13 | 8 days ago | chi-like router built on httprouter with dependency injection based middleware wrappers |
ngamux | 66 | about 1 month ago | Simple HTTP router for Go |
ozzo-routing | 453 | over 2 years ago | An extremely fast Go (golang) HTTP router that supports regular expression route matching. Comes with full support for building RESTful APIs |
pure | 149 | about 1 year ago | Is a lightweight HTTP router that sticks to the std "net/http" implementation |
Siesta | 349 | 10 months ago | Composable framework to write middleware and handlers |
vestigo | 268 | about 4 years ago | Performant, stand-alone, HTTP compliant URL Router for go web applications |
violetear | 107 | about 2 years ago | Go HTTP router |
xmux | 98 | over 7 years ago | High performance muxer based on with support |
xujiajun/gorouter | 533 | about 5 years ago | A simple and fast HTTP router for Go |
Awesome Go / WebAssembly | |||
dom | 486 | about 5 years ago | DOM library |
Extism Go SDK | 77 | 13 days ago | Universal, cross-language WebAssembly framework for building plug-in systems and polyglot apps |
go-canvas | 244 | almost 4 years ago | Library to use HTML5 Canvas, with all drawing within go code |
tinygo | 15,256 | 7 days ago | Go compiler for small places. Microcontrollers, WebAssembly, and command-line tools. Based on LLVM |
vert | 101 | almost 2 years ago | Interop between Go and JS values |
wasmbrowsertest | 187 | 2 months ago | Run Go WASM tests in your browser |
webapi | 174 | almost 2 years ago | Bindings for DOM and HTML generated from WebIDL |
Awesome Go / Windows | |||
d3d9 | 159 | over 1 year ago | Go bindings for Direct3D9 |
go-ole | 1,158 | 5 months ago | Win32 OLE implementation for golang |
gosddl | 11 | over 5 years ago | Converter from SDDL-string to user-friendly JSON. SDDL consist of four part: Owner, Primary Group, DACL, SACL |
Awesome Go / XML | |||
XML-Comp | 21 | about 6 years ago | Simple command line XML comparer that generates diffs of folders, files and tags |
xml2map | 62 | almost 3 years ago | XML to MAP converter written Golang |
xmlwriter | 28 | over 1 year ago | Procedural XML generation API based on libxml2's xmlwriter module |
xpath | 685 | about 1 month ago | XPath package for Go |
xquery | 158 | over 6 years ago | XQuery lets you extract data from HTML/XML documents using XPath expression |
zek | 747 | about 2 months ago | Generate a Go struct from XML |
Awesome Go / Zero Trust | |||
Cosign | 4,405 | 11 days ago | Container Signing, Verification and Storage in an OCI registry |
in-toto | 129 | 9 days ago | Go implementation of the in-toto (provides a framework to protect the integrity of the software supply chain) python reference implementation |
Spiffe-Vault | 84 | 29 days ago | Utilizes Spiffe JWT authentication with Hashicorp Vault for secretless authentication |
Spire | 1,781 | 10 days ago | SPIRE (the SPIFFE Runtime Environment) is a toolchain of APIs for establishing trust between software systems across a wide variety of hosting platforms |
Awesome Go / Code Analysis | |||
apicompat | 179 | over 7 years ago | Checks recent changes to a Go project for backwards incompatible changes |
asty | 79 | over 1 year ago | Converts golang AST to JSON and JSON to AST |
blanket | blanket is a tool that helps you catch functions which don't have direct unit tests in your Go packages | ||
ChainJacking | 55 | over 2 years ago | Find which of your Go lang direct GitHub dependencies is susceptible to ChainJacking attack |
Chronos | 425 | over 2 years ago | Detects race conditions statically |
dupl | 343 | 7 months ago | Tool for code clone detection |
errcheck | 2,341 | 3 months ago | Errcheck is a program for checking for unchecked errors in Go programs |
gcvis | 1,097 | over 5 years ago | Visualise Go program GC trace data in real time |
go-checkstyle | 129 | over 3 years ago | checkstyle is a style check tool like java checkstyle. This tool inspired by java checkstyle, golint. The style referred to some points in Go Code Review Comments |
go-cleanarch | 857 | almost 3 years ago | go-cleanarch was created to validate Clean Architecture rules, like a The Dependency Rule and interaction between packages in your Go projects |
go-critic | 1,841 | 27 days ago | source code linter that brings checks that are currently not implemented in other linters |
go-mod-outdated | 649 | over 1 year ago | An easy way to find outdated dependencies of your Go projects |
go-outdated | 43 | over 5 years ago | Console application that displays outdated packages |
goast-viewer | 766 | 11 months ago | Web based Golang AST visualizer |
goimports | Tool to fix (add, remove) your Go imports automatically | ||
golang-ifood-sdk | 11 | about 2 years ago | iFood API SDK |
golangci-lint | 15,453 | 9 days ago | – A fast Go linters runner. It runs linters in parallel, uses caching, supports config, has integrations with all major IDE and has dozens of linters included |
golines | 913 | 12 days ago | Formatter that automatically shortens long lines in Go code |
GoPlantUML | 1,841 | 2 months ago | Library and CLI that generates text plantump class diagram containing information about structures and interfaces with the relationship among them |
goreturns | 530 | 12 months ago | Adds zero-value return statements to match the func return types |
gostatus | 244 | 11 months ago | Command line tool, shows the status of repositories that contain Go packages |
lint | 67 | almost 6 years ago | Run linters as part of go test |
php-parser | 938 | over 3 years ago | A Parser for PHP written in Go |
revive | 4,783 | 10 days ago | – ~6x faster, stricter, configurable, extensible, and beautiful drop-in replacement for |
staticcheck | 6,137 | 22 days ago | staticcheck is on steroids, applying a ton of static analysis checks you might be used to from tools like ReSharper for C# |
testifylint | 98 | 9 days ago | – A linter that checks usage of |
tickgit | 324 | 10 months ago | CLI and go package for surfacing code comment TODOs (in any language) and applying a to identify the author |
todocheck | 424 | 12 months ago | Static code analyser which links TODO comments in code with issues in your issue tracker |
unconvert | 376 | about 1 year ago | Remove unnecessary type conversions from Go source |
usestdlibvars | 43 | 4 months ago | A linter that detect the possibility to use variables/constants from the Go standard library |
vacuum | 580 | 10 days ago | An ultra-super-fast, lightweight OpenAPI linter and quality checking tool |
validate | 61 | about 1 year ago | Automatically validates struct fields with tags |
wrapcheck | 302 | about 2 months ago | A linter to check that errors from external packages are wrapped |
Awesome Go / Editor Plugins | |||
coc-go language server extension for Vim/Neovim | 564 | 10 months ago | This plugin adds features to Vim/Neovim |
Go Doc | 8 | 8 months ago | A Visual Studio Code extension for showing definition in output and generating go doc |
Go plugin for JetBrains IDEs | Go plugin for JetBrains IDEs | ||
go-language-server | 32 | over 5 years ago | A wrapper to turn the VSCode go extension into a language server supporting the language-server-protocol |
go-mode | 1,384 | 3 months ago | Go mode for GNU/Emacs |
go-plus | 1,511 | over 3 years ago | Go (Golang) Package For Atom That Adds Autocomplete, Formatting, Syntax Checking, Linting and Vetting |
gocode | 5,009 | 6 months ago | Autocompletion daemon for the Go programming language |
goimports-reviser | 587 | about 1 month ago | Formatting tool for imports |
goprofiling | This extension adds benchmark profiling support for the Go language to VS Code | ||
GoSublime | 3,418 | about 4 years ago | Golang plugin collection for the text editor SublimeText 3 providing code completion and other IDE-like features |
gounit-vim | 24 | almost 6 years ago | Vim plugin for generating Go tests based on the function's or method's signature |
theia-go-extension | 15 | over 5 years ago | Go language support for the Theia IDE |
vim-compiler-go | 89 | over 8 years ago | Vim plugin to highlight syntax errors on save |
vim-go | 15,979 | 19 days ago | Go development plugin for Vim |
vscode-go | 3,864 | 12 days ago | Extension for Visual Studio Code (VS Code) which provides support for the Go language |
Watch | 201 | over 1 year ago | Runs a command in an acme win on file changes |
Awesome Go / Go Generate Tools | |||
envdoc | 56 | about 2 months ago | generate documentation for environment variables from Go source files |
generic | 48 | over 3 years ago | flexible data type for Go |
genny | 1,708 | about 3 years ago | Elegant generics for Go |
gocontracts | 110 | over 5 years ago | brings design-by-contract to Go by synchronizing the code with the documentation |
godal | 18 | almost 3 years ago | Generate orm models corresponding to golang by specifying sql ddl file, which can be used by gorm |
gonerics | 114 | about 10 years ago | Idiomatic Generics in Go |
gotests | 4,935 | about 1 year ago | Generate Go tests from your source code |
gounit | 80 | about 6 years ago | Generate Go tests using your own templates |
hasgo | 141 | over 3 years ago | Generate Haskell inspired functions for your slices |
options-gen | 77 | 4 months ago | Functional options described by Dave Cheney's post "Functional options for friendly APIs" |
re2dfa | Transform regular expressions into finite state machines and output Go source code | ||
sqlgen | 82 | over 1 year ago | Generate gorm, xorm, sqlx, bun, sql code from SQL file or DSN |
TOML-to-Go | Translates TOML into a Go type in the browser instantly | ||
xgen | 328 | 3 months ago | XSD (XML Schema Definition) parser and Go/C/Java/Rust/TypeScript code generator |
Awesome Go / Go Tools | |||
colorgo | 113 | about 4 years ago | Wrapper around command for colorized output |
decouple | 21 | 8 months ago | Find “overspecified” function parameters that could be generalized with interface types |
depth | 925 | over 2 years ago | Visualize dependency trees of any package by analyzing imports |
docs | 39 | over 1 year ago | Automatically generate RESTful API documentation for GO projects - aligned with Open API Specification standard |
go-callvis | 5,949 | 3 months ago | Visualize call graph of your Go program using dot format |
go-size-analyzer | 1,174 | 13 days ago | Analyze and visualize the size of dependencies in compiled Golang binaries, providing insight into their impact on the final build |
go-swagger | 9,491 | 15 days ago | Swagger 2.0 implementation for go. Swagger is a simple yet powerful representation of your RESTful API |
godbg | 202 | over 5 years ago | Implementation of Rusts macro for quick and easy debugging during development |
gomodrun | 34 | 5 months ago | Go tool that executes and caches binaries included in go.mod files |
gotemplate.io | Online tool to preview templates live | ||
gotestdox | 112 | 4 months ago | Show Go test results as readable sentences |
gothanks | 124 | over 1 year ago | GoThanks automatically stars your go.mod github dependencies, sending this way some love to their maintainers |
igo | 66 | over 4 years ago | An igo to go transpiler (new language features for Go language!) |
modver | 18 | 27 days ago | Compare two versions of a Go module to check the version-number change required (major, minor, or patchlevel), according to rules |
MoniGO | 195 | 14 days ago | A performance monitoring library for Go applications. It provides real-time insights into application performance! 🚀 |
OctoLinker | 5,271 | about 1 year ago | Navigate through go files efficiently with the OctoLinker browser extension for GitHub |
richgo | 848 | 3 months ago | Enrich outputs with text decorations |
roumon | 183 | 3 months ago | Monitor current state of all active goroutines via a command line interface |
rts | 249 | almost 2 years ago | RTS: response to struct. Generates Go structs from server responses |
textra | 6 | over 1 year ago | Extract Go struct field names, types and tags for filtering and exporting |
typex | 199 | about 1 year ago | Examine Go types and their transitive dependencies, alternatively export results as TypeScript value objects (or types) declaration |
Awesome Go / Software Packages / DevOps Tools | |||
abbreviate | 219 | 3 months ago | abbreviate is a tool turning long strings in to shorter ones with configurable separators, for example to embed branch names in to deployment stack IDs |
alaz | 644 | 10 days ago | Effortless, Low-Overhead, eBPF-based Kubernetes Monitoring |
aptly | 12 | about 5 years ago | aptly is a Debian repository management tool |
aurora | 597 | about 3 years ago | Cross-platform web-based Beanstalkd queue server console |
awsenv | 35 | about 6 years ago | Small binary that loads Amazon (AWS) environment variables for a profile |
Balerter | 299 | 3 months ago | A self-hosted script-based alerting manager |
Blast | 217 | over 6 years ago | A simple tool for API load testing and batch jobs |
bombardier | 5,922 | 3 months ago | Fast cross-platform HTTP benchmarking tool |
bosun | 3,397 | 3 months ago | Time Series Alerting Framework |
cassowary | 759 | about 1 month ago | Modern cross-platform HTTP load-testing tool written in Go |
Ddosify | 8,385 | 22 days ago | High-performance load testing tool, written in Golang |
decompose | 85 | 22 days ago | tool to generate and process Docker containers connections graphs |
DepCharge | 23 | almost 3 years ago | Helps orchestrating the execution of commands across the many dependencies in larger projects |
Docker | Open platform for distributed applications for developers and sysadmins | ||
docker-go-mingw | 45 | 29 days ago | Docker image for building Go binaries for Windows with MinGW toolchain |
Dockerfile-Generator | 170 | over 2 years ago | A go library and an executable that produces valid Dockerfiles using various input channels |
dogo | 267 | over 5 years ago | Monitoring changes in the source file and automatically compile and run (restart) |
drone-jenkins | 38 | over 2 years ago | Trigger downstream Jenkins jobs using a binary, docker or Drone CI |
drone-scp | 142 | 3 months ago | Copy files and artifacts via SSH using a binary, docker or Drone CI |
Dropship | 64 | about 6 years ago | Tool for deploying code via cdn |
easyssh-proxy | 320 | 25 days ago | Golang package for easy remote execution through SSH and SCP downloading via |
fac | 1,839 | 10 months ago | Command-line user interface to fix git merge conflicts |
Flannel | 8,752 | 5 days ago | Flannel is a network fabric for containers, designed for Kubernetes |
Fleet device management | 2,983 | 10 days ago | Lightweight, programmable telemetry for servers and workstations |
gaia | 5,195 | about 1 year ago | Build powerful pipelines in any programming language |
ghorg | 1,546 | 11 days ago | Quickly clone an entire org/users repositories into one directory - Supports GitHub, GitLab, Gitea, and Bitbucket |
Gitea | 44,384 | 10 days ago | Fork of Gogs, entirely community driven |
gitea-github-migrator | Migrate all your GitHub repositories, issues, milestones and labels to your Gitea instance | ||
go-furnace | 98 | almost 3 years ago | Hosting solution written in Go. Deploy your Application with ease on AWS, GCP or DigitalOcean |
go-rocket-update | 103 | 3 months ago | A simple way to make self updating Go applications - Supports Github and Gitlab |
go-selfupdate | 1,517 | about 2 months ago | Enable your Go applications to self update |
gobrew | 194 | over 4 years ago | gobrew lets you easily switch between multiple versions of go |
gobrew | 369 | 11 days ago | Go version manager. Super simple tool to install and manage Go versions. Install go without root. Gobrew doesn't require shell rehash |
godbg | 228 | over 6 years ago | Web-based gdb front-end application |
Gogs | A Self Hosted Git Service in the Go Programming Language | ||
gonative | 340 | about 8 years ago | Tool which creates a build of Go that can cross compile to all platforms while still using the Cgo-enabled versions of the stdlib packages |
govvv | 538 | over 1 year ago | “go build” wrapper to easily add version information into Go binaries |
gox | 4,594 | over 1 year ago | Dead simple, no frills Go cross compile tool |