README ¶
Awesome Go Extra
All data are from awesome-go and GitHub API.
Records are sorted by Star | CreatedAt | PushedAt
Bot Building
Libraries for building and working with bots.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
telegram-bot-api | Golang bindings for the Telegram Bot API | 3918 | 616 | 54 | 2015-06-25T05:33:57Z | 2022-08-12T03:47:49Z |
olivia | 💁♀️Your new best friend powered by an artificial neural network | 3295 | 330 | 21 | 2018-06-05T18:19:31Z | 2022-01-07T16:33:24Z |
telebot | Telebot is a Telegram bot framework in Go. | 2694 | 340 | 40 | 2015-06-25T19:27:50Z | 2022-08-22T07:50:02Z |
kelp | Kelp is a free and open-source trading bot for the Stellar DEX and 100+ centralized exchanges | 919 | 217 | 170 | 2018-08-08T23:31:18Z | 2022-06-01T01:38:04Z |
golang-crypto-trading-bot | A golang implementation of a console-based trading bot for cryptocurrency exchanges | 813 | 213 | 11 | 2017-05-14T22:11:41Z | 2022-05-18T08:07:42Z |
bot | IRC, Slack, Telegram and RocketChat bot written in go | 755 | 182 | 12 | 2015-09-22T16:41:13Z | 2022-01-27T12:33:39Z |
slacker | Slack Bot Framework | 683 | 98 | 3 | 2017-05-20T01:41:20Z | 2022-08-15T18:30:47Z |
joe | A general-purpose bot library inspired by Hubot but written in Go. 🤖 | 450 | 26 | 5 | 2019-03-03T11:19:18Z | 2020-07-26T11:24:21Z |
tbot | Go library for Telegram Bot API | 328 | 51 | 0 | 2015-09-11T16:19:25Z | 2021-03-22T20:26:16Z |
wayback | A self-hosted toolkit for archiving webpages to the Internet Archive, archive.today, IPFS, and local file systems | 303 | 23 | 38 | 2020-06-13T10:08:05Z | 2022-08-23T14:17:50Z |
go-twitch-irc | go irc client for twitch.tv | 254 | 53 | 9 | 2017-03-23T21:31:35Z | 2022-07-02T11:31:52Z |
go-sarah | Simple yet customizable bot framework written in Go. | 246 | 17 | 0 | 2016-11-06T10:04:43Z | 2022-06-09T13:19:24Z |
tenyks | The Tenyks IRC bot. | 173 | 19 | 12 | 2012-08-26T02:02:24Z | 2019-09-11T01:43:50Z |
echotron | An elegant and concurrent library for the Telegram bot API in Go. | 171 | 11 | 0 | 2019-07-22T17:31:49Z | 2022-08-24T16:03:48Z |
hanu | Golang Framework for writing Slack bots | 140 | 24 | 2 | 2016-09-16T07:10:42Z | 2021-06-16T04:18:00Z |
go-tgbot | Golang telegram bot API wrapper, session-based router and middleware | 114 | 5 | 2 | 2016-12-11T06:06:32Z | 2018-06-25T04:50:26Z |
slack-bot | Ready to use Slack bot for lazy developers: start Jenkins jobs, watch Jira tickets, watch pull requests... | 108 | 32 | 9 | 2019-07-19T07:49:06Z | 2022-08-23T21:05:45Z |
telego | Telegram Bot API library for Golang | 90 | 7 | 5 | 2021-06-27T17:26:14Z | 2022-08-24T18:00:03Z |
margelet | Telegram Bot Framework for Go | 73 | 15 | 0 | 2015-11-21T13:02:17Z | 2016-09-18T11:47:01Z |
larry | Larry 🐦 is a bot generator that publishes random content from different providers built in Go | 71 | 18 | 10 | 2020-11-16T23:25:12Z | 2022-08-17T06:16:06Z |
ephemeral-roles | A Discord bot for managing ephemeral roles based upon voice channel member presence. | 66 | 10 | 9 | 2017-12-19T15:20:30Z | 2022-08-08T10:25:00Z |
slackscot | Slack bot core/framework written in Go with support for reactions to message updates/deletes | 52 | 11 | 1 | 2015-10-22T04:54:55Z | 2021-11-22T00:27:28Z |
govkbot | VK bot package for Go | 40 | 4 | 1 | 2016-07-11T22:09:54Z | 2021-08-06T18:46:29Z |
micha | Client lib for Telegram bot api | 21 | 6 | 0 | 2016-04-14T12:09:44Z | 2021-05-30T07:10:13Z |
teleterm | Telegram Bot Exec Terminal Command | 11 | 5 | 0 | 2020-12-31T22:34:18Z | 2022-07-12T02:46:52Z |
Build Automation
Libraries and tools helping with build automation.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
task | A task runner / simpler Make alternative written in Go | 5680 | 354 | 140 | 2017-02-27T00:46:04Z | 2022-08-25T05:08:24Z |
realize | Realize is the #1 Golang Task Runner which enhance your workflow by automating the most common tasks and using the best performing Golang live reloading. | 4278 | 226 | 68 | 2016-07-12T08:07:25Z | 2021-05-14T21:47:38Z |
mage | a Make/rake-like dev tool using Go | 3160 | 208 | 88 | 2017-09-20T19:52:55Z | 2022-08-06T11:27:15Z |
mmake | Modern Make | 1612 | 49 | 12 | 2017-02-15T22:01:21Z | 2020-03-02T16:01:44Z |
goyek | Create build pipelines in Go | 303 | 21 | 6 | 2020-10-11T13:20:55Z | 2022-08-22T05:20:39Z |
taskctl | Concurrent task runner, developer's routine tasks automation toolkit. Simple modern alternative to GNU Make 🧰 | 209 | 29 | 10 | 2019-11-12T13:19:09Z | 2022-03-06T13:56:35Z |
1build | Frictionless way of managing project-specific commands | 176 | 30 | 32 | 2019-04-23T17:05:38Z | 2022-06-30T04:18:29Z |
gilbert | Build system and task runner for Go projects | 102 | 7 | 0 | 2019-01-30T09:02:31Z | 2020-04-25T14:24:42Z |
gaper | Builds and restarts a Go project when it crashes or some watched file changes | 56 | 5 | 2 | 2018-06-16T02:46:38Z | 2022-08-08T17:36:43Z |
anko | 🔮 Simple application watcher | 26 | 3 | 0 | 2021-03-02T14:08:42Z | 2021-03-28T15:09:08Z |
Advanced Console UIs
Libraries for building Console Applications and Console User Interfaces.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
termui | Golang terminal dashboard | 12031 | 757 | 94 | 2015-02-03T14:09:27Z | 2022-06-22T19:51:49Z |
gocui | Minimalist Go package aimed at creating Console User Interfaces. | 8425 | 556 | 73 | 2014-01-04T02:50:20Z | 2022-07-29T06:37:58Z |
go-prompt | Building powerful interactive prompts in Go, inspired by python-prompt-toolkit. | 4587 | 304 | 100 | 2017-08-14T16:02:09Z | 2022-08-23T21:05:28Z |
termbox-go | Pure Go termbox implementation | 4384 | 376 | 43 | 2012-01-12T21:03:03Z | 2022-02-08T10:12:39Z |
pterm | ✨ #PTerm is a modern Go module to easily beautify console output. Featuring charts, progressbars, tables, trees, text input, select menus and much more 🚀 It's completely configurable and 100% cross-platform compatible. | 2907 | 102 | 38 | 2020-09-17T15:52:59Z | 2022-08-24T14:31:59Z |
progressbar | A really basic thread-safe progress bar for Golang applications | 2712 | 163 | 25 | 2017-10-26T18:28:10Z | 2022-08-11T10:03:42Z |
termdash | Terminal based dashboard. | 2051 | 105 | 41 | 2018-03-24T12:01:49Z | 2022-08-22T21:07:59Z |
asciigraph | Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies. | 2004 | 81 | 7 | 2018-06-17T10:37:16Z | 2022-05-03T17:36:12Z |
uiprogress | A go library to render progress bars in terminal applications | 1941 | 122 | 26 | 2015-11-17T00:59:24Z | 2021-08-30T09:11:08Z |
spinner | Go (golang) package with 90 configurable terminal spinner/progress indicators. | 1863 | 122 | 10 | 2014-12-13T00:36:19Z | 2022-07-31T03:38:47Z |
mpb | multi progress bar for Go cli applications | 1789 | 104 | 7 | 2016-12-14T11:56:29Z | 2022-08-25T16:04:29Z |
uilive | uilive is a go library for updating terminal output in realtime | 1490 | 77 | 11 | 2015-11-16T06:13:10Z | 2022-01-20T09:35:17Z |
aurora | Golang ultimate ANSI-colors that supports Printf/Sprintf methods | 1217 | 59 | 4 | 2016-11-06T22:37:12Z | 2021-02-09T22:00:44Z |
color | 🎨 Terminal color rendering library, support 8/16 colors, 256 colors, RGB color rendering output, support Print/Sprintf methods, compatible with Windows. GO CLI 控制台颜色渲染工具库,支持16色,256色,RGB色彩渲染输出,使用类似于 Print/Sprintf,兼容并支持 Windows 环境的色彩渲染 | 1157 | 72 | 2 | 2018-07-01T07:28:17Z | 2022-07-23T12:03:51Z |
termenv | Advanced ANSI style & color support for your terminal applications | 1146 | 47 | 16 | 2019-12-07T06:35:57Z | 2022-08-19T13:55:07Z |
uitable | A go library to improve readability in terminal apps using tabular data | 651 | 30 | 5 | 2015-11-13T21:59:21Z | 2022-04-08T03:55:56Z |
go-isatty | 635 | 91 | 9 | 2014-04-01T01:53:09Z | 2022-08-15T05:52:43Z | |
go-colorable | 630 | 82 | 7 | 2014-07-30T02:38:06Z | 2022-08-15T06:59:28Z | |
gommon | Common packages for Go | 459 | 99 | 15 | 2015-03-12T22:35:57Z | 2022-08-02T05:45:20Z |
chalk | Intuitive package for prettifying terminal/console output. http://godoc.org/github.com/ttacon/chalk | 405 | 21 | 4 | 2014-07-18T19:38:58Z | 2019-08-28T23:55:36Z |
simpletable | Simple tables in terminal with Go | 380 | 25 | 4 | 2017-03-29T07:27:23Z | 2021-04-23T14:55:10Z |
yacspin | Yet Another CLi Spinner; providing over 80 easy to use and customizable terminal spinners for multiple OSes | 359 | 10 | 2 | 2019-12-29T07:41:23Z | 2022-01-03T06:35:23Z |
tabby | A tiny library for super simple Golang tables | 320 | 14 | 2 | 2018-12-17T23:35:39Z | 2020-12-23T01:20:33Z |
box-cli-maker | Make Highly Customized Boxes for your CLI | 231 | 11 | 5 | 2020-05-01T07:23:56Z | 2022-08-22T06:36:54Z |
go-colortext | Change the color of console text. | 213 | 22 | 4 | 2013-01-23T03:38:54Z | 2020-03-29T21:12:20Z |
cfmt | 🎨 Contextual fmt inspired by bootstrap color classes | 85 | 6 | 1 | 2018-03-15T19:04:27Z | 2018-12-07T17:31:52Z |
tabular | Tabular simplifies printing ASCII tables from command line utilities | 64 | 6 | 0 | 2018-04-23T21:17:03Z | 2018-05-14T19:04:57Z |
cfmt | Small library for simple and convenient formatted stylized output to the console. | 46 | 3 | 0 | 2020-11-13T20:29:45Z | 2021-07-01T14:07:37Z |
ctc | Console Text Colors - The non-invasive cross-platform terminal color library does not need to modify the Print method | 39 | 3 | 0 | 2018-04-27T18:07:42Z | 2020-07-15T08:09:32Z |
marker | 🖍️ Marker is the easiest way to match and mark strings for colorful terminal outputs! | 31 | 13 | 3 | 2019-08-28T15:44:08Z | 2022-06-28T09:08:23Z |
table | pretty colorfull tables in go with less effort | 31 | 3 | 1 | 2020-09-22T05:42:34Z | 2022-06-29T15:29:38Z |
[ARCHIVED] colourize | An ANSI colour terminal package for Go | 25 | 5 | 0 | 2015-05-11T11:49:39Z | 2022-07-18T09:10:59Z |
go-ataman | Another Text Attribute Manupulator | 11 | 3 | 0 | 2017-05-17T19:04:57Z | 2020-12-23T05:36:05Z |
crab-config-files-templating | Dynamic configuration file templating tool for kubernetes manifest or general configuration files | 3 | 0 | 0 | 2022-06-19T21:57:12Z | 2022-07-21T13:48:31Z |
Standard CLI
Libraries for building standard or basic Command Line applications.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
cobra | A Commander for modern Go CLI interactions | 28285 | 2445 | 170 | 2013-09-03T20:40:26Z | 2022-08-25T14:23:36Z |
cli | A simple, fast, and fun package for building command line apps in Go | 18894 | 1609 | 167 | 2013-07-13T19:32:06Z | 2022-08-25T20:46:34Z |
elvish | Elvish = Expressive Programming Language + Versatile Interactive Shell | 4814 | 273 | 277 | 2013-06-16T08:43:32Z | 2022-08-22T03:25:54Z |
kingpin | CONTRIBUTIONS ONLY: A Go (golang) command line and flag parser | 3246 | 256 | 25 | 2014-05-14T20:09:04Z | 2022-06-15T10:59:08Z |
dnote | A simple command line notebook for programmers | 2348 | 103 | 68 | 2017-03-30T23:07:25Z | 2022-06-10T17:59:12Z |
go-flags | go command line option parser | 2278 | 280 | 50 | 2012-08-31T13:57:58Z | 2022-08-14T14:10:59Z |
pflag | Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags. | 1904 | 304 | 134 | 2013-08-30T14:53:31Z | 2022-07-05T18:26:57Z |
cli | A Go library for implementing command-line interfaces. | 1569 | 119 | 11 | 2013-11-03T06:47:54Z | 2022-08-05T14:18:13Z |
go-arg | Struct-based argument parsing in Go | 1425 | 83 | 16 | 2015-11-01T01:30:06Z | 2022-06-11T13:06:03Z |
ops | ops - build and run nanos unikernels | 1018 | 102 | 138 | 2018-09-10T17:57:47Z | 2022-08-23T19:50:58Z |
liner | Pure Go line editor with history, inspired by linenoise | 914 | 121 | 14 | 2012-08-15T16:34:55Z | 2022-02-10T02:11:32Z |
complete | bash completion written in go + bash completion for go command | 838 | 66 | 23 | 2017-05-05T21:34:07Z | 2022-01-17T22:01:44Z |
mow.cli | A versatile library for building CLI applications in Go | 824 | 53 | 31 | 2014-12-18T19:34:20Z | 2022-04-06T13:18:01Z |
flaggy | Idiomatic Go input parsing with subcommands, positional values, and flags at any position. No required project or package layout and no external dependencies. | 806 | 31 | 16 | 2018-03-05T05:55:05Z | 2022-05-28T05:30:41Z |
cli | CLI - A package for building command line app with go | 666 | 43 | 3 | 2016-02-26T16:45:29Z | 2022-05-17T10:44:09Z |
argparse | Argparse for golang. Just because flag sucks |
445 | 50 | 4 | 2017-11-24T06:42:20Z | 2022-08-11T01:50:54Z |
climax | Climax is an alternative CLI with the human face | 198 | 18 | 7 | 2015-11-03T21:04:57Z | 2020-09-05T07:02:16Z |
hiboot | hiboot is a high performance web and cli application framework with dependency injection support | 175 | 27 | 4 | 2018-03-16T11:21:46Z | 2022-05-23T04:24:52Z |
wmenu | An easy to use menu structure for cli applications that prompts users to make choices. | 169 | 22 | 1 | 2016-04-20T13:09:44Z | 2021-08-31T17:22:54Z |
commandeer | Automatically sets up command line flags based on struct fields and tags. | 158 | 15 | 4 | 2017-10-12T02:51:05Z | 2021-06-16T20:17:08Z |
sflags | Generate flags by parsing structures | 140 | 31 | 9 | 2016-12-04T14:49:27Z | 2021-07-26T01:27:06Z |
flag | Flag is a simple but powerful command line option parsing library for Go support infinite level subcommand | 121 | 7 | 1 | 2016-10-05T16:49:41Z | 2020-12-27T11:14:27Z |
clir | A Simple and Clear CLI library. Dependency free. | 120 | 11 | 4 | 2019-11-18T19:52:00Z | 2022-04-16T21:08:35Z |
job | JOB, make your short-term command as a long-term job. 将命令行规划成任务的工具 | 118 | 10 | 1 | 2019-04-09T11:14:51Z | 2020-06-30T10:17:38Z |
clif | Another CLI framework for Go. It works on my machine. | 116 | 14 | 3 | 2015-05-30T18:30:08Z | 2019-02-18T14:43:25Z |
cli | Simple and complete API for building command line applications in Go | 114 | 8 | 2 | 2017-05-24T23:07:07Z | 2021-05-09T19:28:00Z |
cmdr | POSIX-compliant command-line UI (CLI) parser and Hierarchical-configuration operations | 112 | 8 | 1 | 2019-05-15T09:58:02Z | 2022-08-08T05:09:07Z |
env | Tag-based environment configuration for structs | 93 | 9 | 1 | 2017-06-14T20:01:55Z | 2020-08-21T22:01:19Z |
carapace-bin | multi-shell multi-command argument completer | 69 | 10 | 33 | 2020-04-20T20:49:41Z | 2022-08-25T17:31:01Z |
gocmd | A Go library for building command line applications. | 58 | 5 | 1 | 2018-01-08T04:52:02Z | 2022-05-04T03:54:19Z |
wlog | A simple logging interface that supports cross-platform color and concurrency. | 57 | 6 | 0 | 2016-04-13T16:47:40Z | 2021-08-31T17:23:26Z |
acmd | Simple, useful and opinionated CLI package in Go. | 49 | 2 | 2 | 2021-10-27T15:13:31Z | 2022-08-24T22:16:54Z |
strumt | Strumt is a library to create prompt chain | 46 | 5 | 0 | 2017-06-19T19:33:16Z | 2022-06-30T10:40:51Z |
carapace | command argument completion generator for spf13/cobra | 45 | 3 | 27 | 2020-03-17T15:25:23Z | 2022-08-24T18:37:24Z |
go-getoptions | Fully featured Go (golang) command line option parser with built-in auto-completion support. | 43 | 9 | 1 | 2015-12-18T02:21:14Z | 2022-06-24T00:09:50Z |
flagvar | A collection of CLI argument types for the Go flag package. |
39 | 3 | 1 | 2018-05-18T18:45:16Z | 2020-07-11T12:26:29Z |
argv | 33 | 7 | 0 | 2017-01-22T10:37:21Z | 2020-04-16T04:13:15Z | |
cmd | The standard library flag package with its missing features | 33 | 2 | 0 | 2019-10-29T00:32:11Z | 2020-09-27T14:26:26Z |
go-commander | Go library to simplify CLI workflow | 29 | 5 | 1 | 2016-10-10T10:09:41Z | 2020-05-24T20:27:55Z |
go-command-chain | A go library for easy configure and run command chains. Such like pipelining in unix shells. | 25 | 1 | 1 | 2021-05-12T17:47:41Z | 2022-03-26T15:48:37Z |
sand | Package for creating interpreters | 18 | 2 | 0 | 2018-11-18T22:44:41Z | 2018-11-21T19:13:47Z |
go-andotp | CLI program to encrypt/decrypt andOTP files | 17 | 1 | 0 | 2021-05-09T16:58:51Z | 2021-06-03T19:08:16Z |
ts | timestamp convert & compare tool. 时间戳转换与对比工具 | 14 | 3 | 0 | 2019-06-25T10:21:13Z | 2019-07-02T02:41:06Z |
subcmd | 2 | 0 | 0 | 2020-07-29T15:04:00Z | 2022-06-29T19:53:36Z | |
carapace-spec | define simple completions using a spec file | 2 | 0 | 6 | 2022-04-30T23:13:12Z | 2022-06-06T22:18:18Z |
Configuration
Libraries for configuration parsing.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
viper | Go configuration with fangs | 20367 | 1733 | 444 | 2014-04-02T14:33:33Z | 2022-08-23T17:18:04Z |
godotenv | A Go port of Ruby's dotenv library (Loads environment variables from .env .) |
5250 | 301 | 69 | 2013-07-30T07:45:19Z | 2022-06-13T09:58:15Z |
envconfig | Golang library for managing configuration data from environment variables | 4228 | 349 | 51 | 2013-11-06T17:01:55Z | 2021-12-09T08:11:00Z |
ini | Package ini provides INI file read and write functionality in Go | 3038 | 349 | 30 | 2014-12-18T07:36:37Z | 2022-08-08T11:35:58Z |
env | A simple and zero-dependencies library to parse environment variables into structs. | 2646 | 180 | 0 | 2015-07-28T02:14:37Z | 2022-08-22T12:38:16Z |
koanf | Simple, lightweight, extensible, configuration management library for Go. Support for JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper. | 1125 | 90 | 1 | 2019-06-18T06:34:05Z | 2022-08-24T20:17:18Z |
kong | Kong is a command-line parser for Go | 1056 | 98 | 25 | 2018-04-10T06:50:32Z | 2022-07-28T06:15:07Z |
cleanenv | ✨Clean and minimalistic environment configuration reader for Golang | 706 | 65 | 23 | 2019-07-12T15:28:52Z | 2022-08-18T10:08:34Z |
konfig | Composable, observable and performant config handling for Go for the distributed processing era | 627 | 51 | 5 | 2019-01-18T17:03:03Z | 2020-10-28T08:24:08Z |
confita | Load configuration in cascade from multiple backends into a struct | 452 | 51 | 21 | 2017-12-21T10:49:18Z | 2021-07-24T10:21:20Z |
aconfig | Simple, useful and opinionated config loader. | 386 | 25 | 9 | 2020-06-26T19:43:20Z | 2022-07-21T21:51:20Z |
config | 📝 Go configuration manage(load,get,set,export). support JSON, YAML, TOML, Properties, INI, HCL, ENV and Flags. Multi file load, data override merge, parse ENV var. Go应用配置加载管理,支持多种格式,多文件加载,远程文件加载,支持数据合并,解析环境变量名 | 379 | 42 | 3 | 2018-07-07T08:11:39Z | 2022-08-25T05:43:56Z |
config | 12 factor configuration as a typesafe struct in as little as two function calls | 315 | 17 | 2 | 2019-04-02T13:41:22Z | 2022-05-30T19:57:34Z |
config | A lightweight yet powerful configuration manager for the Go programming language | 290 | 25 | 2 | 2019-10-15T22:51:19Z | 2022-06-27T08:54:53Z |
hjson-go | Hjson for Go | 275 | 40 | 2 | 2016-08-05T22:59:18Z | 2022-07-23T17:34:36Z |
store | A dead simple configuration manager for Go applications | 261 | 20 | 2 | 2015-10-03T19:17:28Z | 2017-09-05T11:38:35Z |
xdg | Go implementation of the XDG Base Directory Specification and XDG user directories | 253 | 19 | 4 | 2014-08-22T08:23:40Z | 2022-08-06T23:09:49Z |
config | JSON or YAML configuration wrapper with convenient access methods. | 251 | 45 | 4 | 2014-04-21T15:09:39Z | 2022-08-22T22:13:14Z |
fig | A minimalist Go configuration library | 225 | 20 | 4 | 2020-01-16T18:43:19Z | 2022-01-03T22:02:55Z |
envconfig | Small library to read your configuration from environment variables | 223 | 27 | 1 | 2015-04-21T23:37:17Z | 2021-10-24T13:21:10Z |
config | 🛠 A configuration library for Go that parses environment variables, JSON files, and reloads automatically on SIGHUP. | 212 | 14 | 0 | 2017-04-02T18:37:05Z | 2021-11-12T16:58:10Z |
gcfg | read INI-style configuration files into Go structs; supports user-defined types and subsections | 160 | 54 | 9 | 2015-08-17T14:40:55Z | 2021-07-02T06:41:18Z |
harvester | Harvest configuration, watch and notify subscriber | 114 | 26 | 3 | 2019-04-09T07:37:19Z | 2022-08-15T06:08:24Z |
onion | Layer based configuration for golang | 107 | 12 | 7 | 2015-07-22T14:28:21Z | 2021-08-22T16:51:14Z |
envcfg | Un-marshaling environment variables to Go structs | 98 | 9 | 0 | 2014-11-29T11:43:53Z | 2017-06-19T15:53:22Z |
envh | Go helpers to manage environment variables | 95 | 2 | 0 | 2017-01-12T11:25:48Z | 2022-07-20T06:03:10Z |
configuro | An opinionated configuration loading framework for Containerized and Cloud-Native applications. | 82 | 10 | 0 | 2020-04-09T22:10:34Z | 2021-03-09T04:21:18Z |
configuration | Library for setting values to structs' fields from env, flags, files or default tag | 77 | 9 | 0 | 2019-11-27T17:58:49Z | 2022-07-27T20:20:05Z |
xdg | A cross platform package that follows the XDG Standard | 69 | 7 | 1 | 2017-07-20T15:58:29Z | 2020-10-19T13:34:26Z |
gofigure | Go configuration made easy! | 64 | 9 | 1 | 2014-11-25T00:12:40Z | 2019-09-15T00:17:39Z |
configure | Configure is a Go package that gives you easy configuration of your project through redundancy | 56 | 10 | 2 | 2015-06-14T07:46:56Z | 2019-02-18T14:01:49Z |
go-aws-ssm | Go package that interfaces with AWS System Manager | 50 | 13 | 1 | 2019-01-24T09:01:19Z | 2022-04-28T19:31:12Z |
uconfig | Lightweight, zero-dependency, and extendable configuration management library for Go | 50 | 7 | 0 | 2017-05-11T01:21:44Z | 2022-06-09T07:44:07Z |
hocon | go implementation of lightbend's HOCON configuration library https://github.com/lightbend/config | 48 | 11 | 3 | 2020-03-01T18:20:12Z | 2022-08-25T09:31:53Z |
gone | Golang packages for writing small daemons and servers. | 40 | 8 | 0 | 2016-09-05T09:39:11Z | 2021-05-24T14:23:37Z |
go-up | go-up! A simple configuration library with recursive placeholders resolution and no magic. | 37 | 8 | 1 | 2018-02-18T09:50:00Z | 2020-01-14T07:21:58Z |
ingo | persistent storage for flags in go | 35 | 10 | 0 | 2016-02-07T22:57:40Z | 2017-04-03T01:15:10Z |
mini | A golang package for parsing ini-style configuration files | 31 | 7 | 1 | 2015-04-29T23:52:36Z | 2018-12-26T23:28:05Z |
genv | Genv is a library for Go (golang) that makes it easy to read and use environment variables in your projects. It also allows environment variables to be loaded from the .env file. | 28 | 2 | 0 | 2019-07-15T10:25:57Z | 2019-07-27T11:56:32Z |
conflate | Library providing routines to merge and validate JSON, YAML and/or TOML files | 25 | 4 | 0 | 2018-02-01T19:06:15Z | 2020-09-21T09:50:49Z |
config | Declarative configuration for Go | 24 | 0 | 3 | 2022-05-01T15:39:36Z | 2022-07-21T14:04:13Z |
env | 🔍 A lightweight package for loading environment variables into structs | 22 | 0 | 2 | 2022-01-10T17:28:03Z | 2022-05-14T22:42:09Z |
go-ssm-config | Go utility for loading configuration parameters from AWS SSM (Parameter Store) | 14 | 13 | 4 | 2019-12-02T18:47:38Z | 2020-12-15T16:19:27Z |
envconf | Configure Go applications from the environment | 10 | 5 | 0 | 2014-10-26T12:12:26Z | 2014-10-26T12:12:40Z |
ini | ini parser for golang | 9 | 2 | 0 | 2021-08-13T12:13:44Z | 2021-12-02T09:11:37Z |
env | Golang Get Environment Variables Package | 8 | 3 | 0 | 2019-07-24T06:37:13Z | 2022-08-14T14:29:51Z |
go-ini | automatic mirror of https://git.sr.ht/~spc/go-ini | 7 | 3 | 1 | 2019-09-11T18:38:20Z | 2021-04-06T17:32:24Z |
typenv | Go minimalist typed environment variables library | 7 | 1 | 0 | 2020-06-30T18:26:09Z | 2020-07-22T16:23:05Z |
swap | Instantiate/configure structs recursively, based on build environment. (YAML, TOML, JSON and env). | 6 | 3 | 0 | 2020-04-12T23:28:19Z | 2021-11-07T11:00:53Z |
piper | 🛠 Viper wrapper with config inheritance and key generation | 5 | 0 | 2 | 2021-11-17T15:32:19Z | 2021-12-03T04:07:15Z |
go-conf | Library for easy configuration of a golang service | 4 | 2 | 1 | 2021-01-27T21:41:47Z | 2021-10-19T12:43:09Z |
gonfig | Tag based configuration loader from different providers | 4 | 1 | 0 | 2021-01-21T13:44:44Z | 2021-08-02T20:37:02Z |
nfigure | Golang struct-tag based configfile and flag parsing | 1 | 0 | 1 | 2021-11-21T06:55:30Z | 2022-08-08T14:35:31Z |
goconfig | 0 | 0 | 0 | 2022-05-30T05:49:16Z | 2022-06-04T08:09:55Z |
Continuous Integration
Tools for help with continuous integration.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
drone | Drone is a Container-Native, Continuous Delivery Platform | 25557 | 2501 | 65 | 2014-02-07T07:54:44Z | 2022-08-18T07:42:26Z |
cds | Enterprise-Grade Continuous Delivery & DevOps Automation Open Source Platform | 3949 | 376 | 170 | 2016-10-11T08:28:23Z | 2022-08-25T14:02:05Z |
goveralls | 737 | 134 | 17 | 2013-04-17T10:58:40Z | 2022-06-28T14:28:07Z | |
gotestfmt | go test output for humans | 235 | 3 | 4 | 2021-04-29T21:17:30Z | 2022-05-15T17:32:16Z |
overalls | 👖Multi-Package go project coverprofile for tools like goveralls | 111 | 26 | 2 | 2015-07-30T11:30:11Z | 2019-12-30T18:54:48Z |
duci | The simple ci server | 74 | 5 | 9 | 2018-04-01T01:51:02Z | 2022-08-02T20:10:00Z |
gomason | A tool for testing, building, signing, and publishing binaries. | 53 | 8 | 2 | 2017-11-18T00:59:11Z | 2021-12-27T17:34:25Z |
roveralls | A Go recursive coverage testing tool | 18 | 5 | 0 | 2016-06-26T07:45:32Z | 2017-11-19T19:39:13Z |
go-fuzz-action | GitHub Action for Go 1.18 fuzz testing | 3 | 0 | 0 | 2022-04-06T20:17:26Z | 2022-07-24T19:27:15Z |
CSS Preprocessors
Libraries for preprocessing CSS files.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gcss | Pure Go CSS Preprocessor | 457 | 37 | 8 | 2014-09-04T14:38:20Z | 2014-10-12T14:07:10Z |
go-libsass | Go wrapper for libsass, the only Sass 3.5 compiler for Go | 189 | 23 | 13 | 2015-04-19T15:09:47Z | 2020-10-23T19:07:14Z |
Bit-packing and Compression
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
roaring | Roaring bitmaps in Go (golang) | 1741 | 178 | 64 | 2014-07-10T20:14:34Z | 2022-08-21T19:33:34Z |
binpacker | A binary stream packer and unpacker | 191 | 33 | 2 | 2016-02-02T10:06:11Z | 2021-10-08T04:16:12Z |
bit | Bitset data structure | 127 | 22 | 0 | 2017-05-03T19:05:35Z | 2018-03-13T07:45:26Z |
crunch | take bytes out of things easily ✨🍪 | 59 | 8 | 0 | 2019-02-27T03:56:52Z | 2022-03-24T01:47:49Z |
go-ef | A Go implementation of the Elias-Fano encoding | 23 | 7 | 0 | 2017-09-22T01:47:16Z | 2017-09-25T20:07:11Z |
bingo | Fast, zero-allocation, lexicographic-order-preserving packing/unpacking of native Go types to bytes. | 10 | 1 | 0 | 2021-08-22T01:48:48Z | 2022-08-25T03:12:02Z |
Bit Sets
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
bitset | Go package implementing bitsets | 962 | 146 | 1 | 2011-05-11T03:33:44Z | 2022-07-21T14:23:26Z |
bitmap | Simple dense bitmap index in Go with binary operators | 163 | 12 | 4 | 2021-05-28T06:51:29Z | 2022-06-08T20:19:04Z |
Bloom and Cuckoo Filters
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
bloom | Go package implementing Bloom filters | 1637 | 203 | 2 | 2011-05-21T14:18:41Z | 2022-08-20T01:20:41Z |
BoomFilters | Probabilistic data structures for processing continuous, unbounded streams. | 1468 | 108 | 11 | 2015-02-06T02:01:26Z | 2021-03-15T20:15:27Z |
cuckoofilter | Cuckoo Filter: Practically Better Than Bloom | 919 | 85 | 12 | 2015-06-28T23:22:09Z | 2022-04-11T07:59:57Z |
cuckoo-filter | Cuckoo Filter go implement, better than Bloom Filter, configurable and space optimized 布谷鸟过滤器的Go实现,优于布隆过滤器,可以定制化过滤器参数,并进行了空间优化 | 225 | 20 | 0 | 2021-02-19T12:27:43Z | 2022-03-22T21:14:17Z |
bloom | Bloom filters implemented in Go. | 147 | 19 | 1 | 2013-09-03T02:27:35Z | 2018-04-16T07:52:10Z |
ring | Package ring provides a high performance and thread safe Go implementation of a bloom filter. | 127 | 17 | 1 | 2019-01-27T04:02:20Z | 2020-09-10T16:36:16Z |
bloom | Probabilistic set data structure | 73 | 10 | 0 | 2017-05-06T19:57:47Z | 2017-06-19T17:00:50Z |
bloomfilter | Yet another Bloomfilter implementation in Go, compatible with Java's Guava library | 9 | 2 | 0 | 2021-01-01T01:28:04Z | 2021-06-30T00:59:36Z |
Data Structure and Algorithm Collections
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gods | GoDS (Go Data Structures) - Sets, Lists, Stacks, Maps, Trees, Queues, and much more | 12428 | 1464 | 22 | 2015-03-04T14:19:52Z | 2022-08-24T20:33:55Z |
go-datastructures | A collection of useful, performant, and threadsafe Go datastructures. | 6598 | 785 | 25 | 2014-10-29T13:55:17Z | 2022-03-03T22:58:35Z |
gostl | Data structure and algorithm library for go, designed to provide functions similar to C++ STL | 702 | 96 | 0 | 2019-10-12T01:10:24Z | 2022-07-19T09:43:26Z |
algorithms | CLRS study. Codes are written with golang. | 662 | 108 | 0 | 2018-01-31T09:27:56Z | 2021-03-17T08:01:38Z |
Iterators
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
iter | Go implementation of C++ STL iterators and algorithms. | 161 | 12 | 0 | 2019-10-20T09:29:49Z | 2022-03-16T14:56:41Z |
goterator | Lazy iterator implementation for Golang | 9 | 3 | 0 | 2020-08-12T19:47:57Z | 2020-12-02T04:17:39Z |
Maps
See also Database for more complex key-value stores, and Trees for additional ordered map implementations.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
cmap | a thread-safe concurrent map for go | 34 | 4 | 0 | 2019-11-26T03:54:59Z | 2022-06-13T16:40:18Z |
dict | Python-like dictionaries for Go | 29 | 5 | 1 | 2019-04-23T02:04:25Z | 2020-10-25T20:55:30Z |
maps | map library using Go generics that offers a standard interface, go routine synchronization, and sorting | 11 | 1 | 2 | 2022-03-20T07:05:16Z | 2022-03-23T04:40:40Z |
Miscellaneous Data Structures and Algorithms
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gota | Gota: DataFrames and data wrangling in Go (Golang) | 2340 | 223 | 59 | 2016-02-06T17:23:25Z | 2022-08-17T16:12:43Z |
hyperloglog | HyperLogLog with lots of sugar (Sparse, LogLog-Beta bias correction and TailCut space reduction) | 797 | 61 | 3 | 2017-06-18T11:18:12Z | 2022-01-05T17:43:42Z |
go-geoindex | Go native library for fast point tracking and K-Nearest queries | 341 | 43 | 3 | 2015-01-22T12:26:17Z | 2018-02-20T21:58:39Z |
hilbert | Go package for mapping values to and from space-filling curves, such as Hilbert and Peano curves. | 253 | 38 | 2 | 2015-08-06T15:50:00Z | 2018-11-22T06:15:33Z |
go-rquad | 📌 State of the art point location and neighbour finding algorithms for region quadtrees, in Go | 120 | 6 | 0 | 2016-09-12T21:46:37Z | 2022-06-22T22:06:28Z |
conjungo | A small flexible merge library in go | 106 | 14 | 10 | 2016-12-29T23:50:38Z | 2020-10-23T10:46:02Z |
go-rampart | Determine how intervals relate to each other. | 81 | 3 | 0 | 2022-04-08T13:29:42Z | 2022-06-16T11:39:35Z |
count-min-log | Go implementation of Count-Min-Log | 57 | 5 | 0 | 2015-08-16T22:31:36Z | 2017-02-12T13:09:21Z |
hide | ID type with marshalling to/from hash to prevent sending IDs to clients. | 49 | 6 | 0 | 2019-01-16T13:54:17Z | 2021-11-09T19:21:48Z |
concurrent-writer | Highly concurrent drop-in replacement for bufio.Writer | 45 | 8 | 0 | 2017-09-18T15:29:59Z | 2017-11-17T21:28:32Z |
go-tuple | Go 1.18 generic tuples | 33 | 2 | 0 | 2021-12-23T22:51:49Z | 2022-04-02T17:45:18Z |
fsm | Finite State Machine package in Go | 27 | 1 | 0 | 2021-10-11T10:12:51Z | 2021-10-12T20:13:09Z |
genfuncs | Go 1.18+ polymorphic generic containers and functions. | 25 | 3 | 0 | 2021-12-16T14:48:12Z | 2022-08-07T13:03:44Z |
go18ds | 23 | 2 | 1 | 2022-03-15T19:03:23Z | 2022-03-28T14:32:34Z | |
gofal | fractional api base on golang . golang math tools fractional molecular denominator 分数计算 分子 分母 运算 | 15 | 3 | 0 | 2019-08-05T07:37:55Z | 2019-10-08T03:02:59Z |
slices | Functions that operate on slices. Similar to functions from package strings or package bytes that have been adapted to work with slices. | 7 | 2 | 0 | 2020-07-02T23:17:34Z | 2020-11-09T08:18:51Z |
slices | Pure functions for slices. | 6 | 1 | 0 | 2021-12-06T16:39:12Z | 2022-07-08T18:32:20Z |
Nullable Types
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
nan | Zero allocation Nullable structures in one library with handy conversion functions, marshallers and unmarshallers | 55 | 8 | 0 | 2020-05-05T20:20:54Z | 2022-08-08T17:44:11Z |
typ | Null Types, Safe primitive type conversion and fetching value from complex structures. | 32 | 3 | 0 | 2019-03-03T05:34:23Z | 2021-10-15T16:11:56Z |
null | Nullable Go types that can be marshalled/unmarshalled to/from JSON. | 27 | 4 | 0 | 2018-07-04T21:18:45Z | 2021-11-09T16:04:18Z |
Queues
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
deque | Fast ring-buffer deque (double-ended queue) | 364 | 43 | 1 | 2018-04-24T02:57:55Z | 2022-08-17T17:51:51Z |
goconcurrentqueue | Go concurrent-safe, goroutine-safe, thread-safe queue | 203 | 20 | 0 | 2019-01-10T21:21:23Z | 2022-03-04T06:25:12Z |
deque | A highly optimized double-ended queue | 60 | 2 | 0 | 2019-02-01T03:32:28Z | 2022-08-25T16:46:53Z |
memlog | A Kafka log inspired in-memory and append-only data structure | 59 | 3 | 0 | 2022-01-03T10:44:56Z | 2022-07-08T06:24:29Z |
Sets
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
golang-set | A simple generic set type for the Go language. Trusted by Docker, 1Password, Ethereum and Hashicorp. | 2639 | 217 | 10 | 2013-07-03T21:52:01Z | 2022-07-28T04:33:06Z |
goset | Set is a useful collection but there is no built-in implementation in Go lang. | 49 | 15 | 0 | 2017-08-25T09:21:30Z | 2020-12-11T10:18:54Z |
set | A simple Set data structure implementation in Go (Golang) using LinkedHashMap. | 21 | 10 | 2 | 2018-07-20T21:53:37Z | 2022-05-27T19:29:03Z |
dsu | Disjoint Set data structure implementation in Go | 7 | 1 | 0 | 2021-04-27T16:35:38Z | 2022-01-29T08:42:56Z |
Text Analysis
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
bleve | A modern text indexing library for go | 8569 | 635 | 276 | 2014-04-17T21:02:18Z | 2022-08-24T06:33:40Z |
trie | Data structure and relevant algorithms for extremely fast prefix/fuzzy string searching. | 599 | 104 | 11 | 2014-03-06T22:01:49Z | 2022-03-19T00:15:59Z |
go-edlib | 📚 String comparison and edit distance algorithms library, featuring : Levenshtein, LCS, Hamming, Damerau levenshtein (OSA and Adjacent transpositions algorithms), Jaro-Winkler, Cosine, etc... | 338 | 19 | 1 | 2020-08-18T09:30:59Z | 2022-07-03T15:35:18Z |
go-adaptive-radix-tree | Adaptive Radix Trees implemented in Go | 244 | 38 | 0 | 2016-04-01T01:40:40Z | 2020-08-16T07:15:37Z |
levenshtein | Go implementation to calculate Levenshtein Distance. | 228 | 17 | 1 | 2014-07-30T14:03:55Z | 2022-08-08T05:44:58Z |
levenshtein | Levenshtein distance and similarity metrics with customizable edit costs and Winkler-like bonus for common prefix. | 69 | 6 | 0 | 2016-04-08T00:14:31Z | 2020-10-15T13:29:05Z |
ptrie | A prefix tree implementation in go | 28 | 9 | 0 | 2019-05-20T14:13:05Z | 2022-03-26T15:03:21Z |
mspm | Multi-String Pattern Matching Algorithm Using TrieHashNode | 17 | 4 | 0 | 2018-05-17T18:59:44Z | 2018-05-19T06:36:38Z |
parsefields | Tools for parse JSON-like logs for collecting unique fields and events | 6 | 1 | 0 | 2019-04-12T22:15:10Z | 2019-05-05T18:55:53Z |
Trees
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
skiplist | A Go library for an efficient implementation of a skip list: https://godoc.org/github.com/MauriceGit/skiplist | 222 | 36 | 5 | 2018-06-23T16:01:51Z | 2022-02-03T08:11:52Z |
skiplist | skiplist for golang | 78 | 22 | 1 | 2014-11-18T16:29:53Z | 2014-11-21T05:13:52Z |
treemap | Generic sorted map for Go with red-black tree under the hood | 24 | 3 | 0 | 2018-08-20T23:41:07Z | 2022-03-22T05:03:27Z |
treap | golang persistent immutable treap sorted sets | 19 | 6 | 0 | 2018-09-16T01:38:03Z | 2019-12-18T09:31:05Z |
hashsplit | 11 | 2 | 1 | 2020-04-26T00:30:09Z | 2021-08-19T02:46:31Z | |
merkle | Merkle hash trees | 5 | 1 | 0 | 2018-10-13T15:25:10Z | 2022-05-08T00:27:21Z |
Pipes
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
pipeline | Pipelines using goroutines | 43 | 8 | 1 | 2018-04-25T00:11:36Z | 2021-11-02T22:47:16Z |
parapipe | Paralleling pipeline | 19 | 1 | 1 | 2021-04-09T06:49:56Z | 2021-06-07T08:11:36Z |
ordered-concurrently | Ordered-concurrently a library for concurrent processing with ordered output in Go. Process work concurrently and returns output in a channel in the order of input. It is useful in concurrently processing items in a queue, and get output in the order provided by the queue. | 14 | 1 | 2 | 2021-02-28T17:56:05Z | 2022-03-16T02:43:35Z |
Caches
Data stores with expiring records, in-memory distributed data stores, or in-memory subsets of file-based databases.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
groupcache | groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases. | 11640 | 1301 | 40 | 2013-07-22T21:55:07Z | 2022-08-16T17:46:35Z |
bigcache | Efficient cache for gigabytes of data written in Go. | 5965 | 510 | 72 | 2016-03-23T07:18:52Z | 2022-08-23T06:44:05Z |
gcache | An in-memory cache library for golang. It supports multiple eviction policies: LRU, LFU, ARC | 2072 | 239 | 24 | 2015-01-24T18:17:07Z | 2022-08-24T09:01:52Z |
cache2go | Concurrency-safe Go caching library with expiration capabilities and access counters | 1808 | 495 | 27 | 2013-11-11T03:45:02Z | 2022-07-23T08:46:45Z |
fastcache | Fast thread-safe inmemory cache for big number of entries in Go. Minimizes GC overhead | 1532 | 130 | 41 | 2018-11-22T22:50:13Z | 2022-08-05T08:27:58Z |
gocache | ☔️ A complete Go cache library that brings you multiple ways of managing your caches | 1429 | 134 | 17 | 2019-10-05T08:13:54Z | 2022-08-09T15:31:21Z |
ttlcache | An in-memory cache with item expiration and generics | 474 | 76 | 5 | 2014-12-13T01:55:40Z | 2022-08-08T22:02:49Z |
cachego | Golang Cache component - Multiple drivers | 180 | 11 | 0 | 2016-10-05T18:10:03Z | 2022-06-10T16:30:19Z |
remember-go | Cache Slow Database Queries | 115 | 8 | 1 | 2019-04-04T20:24:25Z | 2021-04-19T07:43:10Z |
cache | 👜 Cache arbitrary data with an expiration time. | 111 | 12 | 0 | 2019-05-11T12:42:45Z | 2022-08-10T02:39:09Z |
bcache | Eventually consistent distributed in-memory cache Go library | 90 | 13 | 4 | 2018-12-26T15:45:16Z | 2019-05-01T02:01:34Z |
go-mcache | Fast in-memory key:value store/cache with TTL | 83 | 13 | 1 | 2018-04-14T23:31:21Z | 2020-01-21T12:43:35Z |
go-cache | A flexible multi-layer Go caching library to deal with in-memory and shared cache by adopting Cache-Aside pattern. | 70 | 5 | 1 | 2022-05-24T05:44:24Z | 2022-07-11T02:04:43Z |
couchcache | A RESTful caching micro-service in Go backed by Couchbase | 57 | 6 | 0 | 2015-04-05T07:13:05Z | 2021-10-02T02:59:37Z |
timedmap | A thread safe map which has expiring key-value pairs. | 46 | 7 | 0 | 2019-01-30T12:55:37Z | 2022-04-29T08:41:22Z |
clusteredBigCache | golang bigcache with clustering as a library. | 41 | 5 | 2 | 2017-12-18T07:48:07Z | 2018-01-22T22:02:54Z |
2q | 11 | 2 | 0 | 2022-03-27T13:27:26Z | 2022-04-01T14:08:13Z | |
gdcache | gdcache is a pure non-intrusive cache library implemented by golang, you can use it to implement your own cache. | 9 | 2 | 0 | 2021-07-20T12:52:02Z | 2021-10-14T17:31:29Z |
ttlcache | Simple in-memory key-value storage with TTL for each record. | 6 | 6 | 0 | 2021-01-06T19:24:26Z | 2022-05-04T18:51:48Z |
Databases Implemented in Go
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
prometheus | The Prometheus monitoring system and time series database. | 43998 | 7403 | 712 | 2012-11-24T11:14:12Z | 2022-08-25T15:07:41Z |
tidb | TiDB is an open-source, cloud-native, distributed, MySQL-Compatible database for elastic scale and real-time analytics. Try free: https://tidbcloud.com/free-trial | 32130 | 5221 | 3639 | 2015-09-06T04:01:52Z | 2022-08-25T17:49:33Z |
cockroach | CockroachDB - the open source, cloud-native distributed SQL database. | 25441 | 3227 | 5695 | 2014-02-06T00:18:47Z | 2022-08-25T21:03:03Z |
influxdb | Scalable datastore for metrics, events, and real-time analytics | 23999 | 3232 | 1580 | 2013-09-26T14:31:10Z | 2022-08-25T18:25:11Z |
dgraph | Native GraphQL Database with graph backend | 18361 | 1394 | 148 | 2015-08-25T07:15:56Z | 2022-08-25T19:46:51Z |
milvus | Vector database for scalable similarity search and AI applications. | 11719 | 1653 | 302 | 2019-09-16T06:43:43Z | 2022-08-25T15:29:52Z |
badger | Fast key-value DB in Go. | 11215 | 993 | 9 | 2017-01-26T05:09:49Z | 2022-08-14T16:11:40Z |
rqlite | The lightweight, distributed relational database built on SQLite | 10924 | 548 | 42 | 2014-08-23T04:31:18Z | 2022-08-23T13:52:58Z |
immudb | immudb - immutable database based on zero trust, SQL and Key-Value, tamperproof, data change history | 7794 | 278 | 122 | 2019-11-07T08:22:16Z | 2022-08-25T18:40:59Z |
VictoriaMetrics | VictoriaMetrics: fast, cost-effective monitoring solution and time series database | 6985 | 671 | 515 | 2018-09-30T09:58:01Z | 2022-08-25T14:24:54Z |
bbolt | An embedded key/value database for Go. | 5797 | 464 | 139 | 2017-06-17T01:42:09Z | 2022-08-19T14:21:14Z |
goleveldb | LevelDB key/value database in Go. | 5325 | 819 | 98 | 2013-01-23T04:08:58Z | 2022-08-20T09:22:01Z |
ledisdb | A high performance NoSQL Database Server powered by Go | 3889 | 438 | 2 | 2014-04-30T00:43:09Z | 2022-01-26T13:15:24Z |
buntdb | BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support | 3842 | 265 | 13 | 2016-07-19T22:11:40Z | 2022-08-19T13:08:54Z |
rosedb | 🚀 A high performance NoSQL database based on bitcask, supports string, list, hash, set, and sorted set. | 3147 | 469 | 8 | 2020-12-06T07:02:48Z | 2022-08-17T13:56:04Z |
tiedot | A rudimentary implementation of a basic document (NoSQL) database in Go | 2700 | 270 | 26 | 2013-05-26T10:03:49Z | 2021-09-05T17:47:27Z |
nutsdb | 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. | 2403 | 238 | 25 | 2018-12-07T07:03:38Z | 2022-08-23T14:32:57Z |
godis | A Golang implemented Redis Server and Cluster. Go 语言实现的 Redis 服务器和分布式集群 | 2116 | 355 | 3 | 2019-06-01T07:49:11Z | 2022-08-20T22:01:07Z |
CovenantSQL | A decentralized, trusted, high performance, SQL database with blockchain features | 1352 | 154 | 29 | 2018-04-11T09:52:58Z | 2022-05-24T20:56:30Z |
diskv | A disk-backed key-value store. | 1209 | 101 | 8 | 2012-03-21T16:44:32Z | 2021-11-10T01:12:08Z |
databunker | Secure SDK/vault for personal records/PII built to comply with GDPR | 1004 | 52 | 3 | 2019-12-08T21:55:55Z | 2022-08-25T17:57:28Z |
column | High-performance, columnar, in-memory store with bitmap indexing in Go | 968 | 39 | 11 | 2021-05-26T21:27:45Z | 2022-07-03T20:16:04Z |
eliasdb | EliasDB a graph-based database. | 940 | 44 | 14 | 2016-08-13T13:53:28Z | 2022-08-14T09:04:27Z |
lotusdb | Fast k/v storage compatible with lsm tree and b+tree, inspired by SLM-DB in USENIX FAST ’19. | 938 | 95 | 7 | 2021-12-14T05:26:57Z | 2022-08-21T18:20:39Z |
pogreb | Embedded key-value store for read-heavy workloads written in Go | 923 | 70 | 12 | 2018-01-06T23:16:36Z | 2021-08-27T13:45:37Z |
moss | moss - a simple, fast, ordered, persistable, key-val storage library for golang | 881 | 57 | 46 | 2016-02-06T20:27:22Z | 2022-03-03T01:10:06Z |
levigo | levigo is a Go wrapper for LevelDB | 405 | 84 | 6 | 2012-01-17T08:17:54Z | 2022-03-07T12:05:55Z |
pudge | Fast and simple key/value store written using Go's standard library | 328 | 26 | 0 | 2018-11-20T10:11:53Z | 2021-07-04T02:08:38Z |
clover | A lightweight document-oriented NoSQL database written in pure Golang. | 252 | 27 | 3 | 2022-01-28T19:25:23Z | 2022-08-07T12:18:41Z |
vasto | A distributed key-value store. On Disk. Able to grow or shrink without service interruption. | 238 | 29 | 4 | 2018-01-16T05:16:57Z | 2019-03-07T20:29:11Z |
[ARCHIVED] dtf | 大家好,dtm最终跟原公司谈下来了知识产权转让,现已恢复维护,请大家访问 https://github.com/dtm-labs/dtm 。中间给大家带来的不便,敬请谅解! | 235 | 29 | 5 | 2022-03-04T11:55:37Z | 2022-03-29T07:45:14Z |
piladb | Lightweight RESTful database engine based on stack data structures | 195 | 20 | 9 | 2015-09-08T23:12:22Z | 2020-10-29T19:19:06Z |
unitdb | Fast specialized time-series database for IoT, real-time internet connected devices and AI analytics. | 96 | 11 | 0 | 2019-08-29T18:21:27Z | 2021-10-28T10:30:09Z |
hare | Hare is a nimble little database management system for Go. | 59 | 8 | 1 | 2016-10-05T20:05:45Z | 2021-02-25T00:05:34Z |
coffer | Simply ACID* key-value database. At the medium or even low latency it tries to provide greater throughput without losing the ACID properties of the database. The database provides the ability to create record headers at own discretion and use them as transactions. The maximum size of stored data is limited by the size of the computer's RAM. | 30 | 3 | 0 | 2019-05-13T18:30:23Z | 2022-05-01T17:41:42Z |
tempdb | Key-value store for temporary items 📝 | 16 | 3 | 0 | 2017-03-17T18:03:42Z | 2018-02-14T19:03:13Z |
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). | - | - | - | - | - |
Database Schema Migration
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
migrate | Database migrations. CLI and Golang library. | 9561 | 1013 | 216 | 2018-01-19T09:30:58Z | 2022-08-25T13:15:11Z |
goose | A database migration tool. Supports SQL migrations and Go functions. | 2915 | 353 | 48 | 2016-02-25T20:39:37Z | 2022-08-24T13:11:09Z |
sql-migrate | SQL schema migration tool for Go. | 2549 | 237 | 75 | 2014-09-09T07:31:41Z | 2022-08-25T14:06:39Z |
atlas | A database toolkit | 1772 | 69 | 33 | 2021-04-30T18:56:42Z | 2022-08-25T14:15:29Z |
pop | A Tasty Treat For All Your Database Needs | 1223 | 225 | 124 | 2018-02-07T21:13:46Z | 2022-08-23T22:32:47Z |
skeema | Declarative pure-SQL schema management for MySQL and MariaDB | 1048 | 93 | 23 | 2016-10-31T23:18:56Z | 2022-08-05T20:49:13Z |
goavro | 825 | 192 | 59 | 2015-02-23T20:28:46Z | 2022-08-20T14:36:48Z | |
gormigrate | Minimalistic database migration helper for Gorm ORM | 805 | 88 | 21 | 2016-08-31T11:46:23Z | 2022-08-25T10:41:23Z |
darwin | Database schema evolution library for Go | 132 | 32 | 4 | 2016-04-05T15:57:59Z | 2021-03-24T15:22:39Z |
migrator | Dead simple Go database migration library. | 128 | 17 | 5 | 2019-02-04T09:40:01Z | 2022-05-17T11:17:13Z |
go-pg-migrations | A Go package to help write migrations with go-pg/pg. | 80 | 20 | 4 | 2018-08-11T07:00:13Z | 2021-08-28T21:36:29Z |
avro | Apache AVRO for go | 38 | 7 | 0 | 2019-04-07T12:22:46Z | 2022-01-11T14:34:32Z |
sqlize | sql migration schema generate from models | 38 | 3 | 0 | 2020-09-08T23:51:14Z | 2022-07-24T08:21:08Z |
go-fixtures | Django style fixtures for Golang's excellent built-in database/sql library. | 28 | 10 | 0 | 2015-12-24T11:27:45Z | 2019-12-26T21:13:18Z |
pravasan | Simple Migration Tool - written in Go | 28 | 6 | 30 | 2015-01-03T17:11:05Z | 2018-12-20T01:56:10Z |
schema | Embedded schema migration package for Go | 24 | 3 | 0 | 2019-09-24T19:27:13Z | 2022-06-20T04:44:58Z |
migrator | MySQL database migrator | 19 | 4 | 0 | 2020-06-27T14:40:29Z | 2022-07-21T21:48:23Z |
go-pg-migrate | CLI-friendly package for pg migrations management. | 7 | 3 | 0 | 2021-01-16T17:01:32Z | 2021-11-30T23:35:34Z |
libschema | Go schema migrations on a per-library basis | 3 | 1 | 0 | 2021-07-05T20:13:45Z | 2022-07-01T04:26:09Z |
gorm-seeder | Gorm seeder package | 2 | 0 | 0 | 2022-05-02T14:47:21Z | 2022-07-11T03:51:37Z |
godfish | a db migration manager | 2 | 0 | 2 | 2020-01-22T05:31:25Z | 2022-04-30T21:47:32Z |
Database Tools
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
vitess | Vitess is a database clustering system for horizontal scaling of MySQL. | 14592 | 1816 | 749 | 2013-06-27T21:20:28Z | 2022-08-25T20:11:06Z |
pgweb | Cross-platform client for PostgreSQL databases | 7410 | 615 | 46 | 2014-10-09T01:41:32Z | 2022-08-19T14:22:16Z |
kingshard | A high-performance MySQL proxy | 6080 | 1186 | 161 | 2015-07-04T02:22:32Z | 2021-06-17T09:30:32Z |
orchestrator | MySQL replication topology management and HA | 4626 | 824 | 387 | 2016-11-30T13:44:24Z | 2022-05-06T02:34:28Z |
go-mysql-elasticsearch | Sync MySQL data into elasticsearch | 3821 | 765 | 204 | 2015-01-15T09:54:18Z | 2022-05-20T06:46:34Z |
go-mysql | a powerful mysql toolset with Go | 3767 | 844 | 168 | 2014-02-21T01:56:45Z | 2022-08-23T05:58:35Z |
prest | PostgreSQL ➕ REST, low-code, simplify and accelerate development, ⚡ instant, realtime, high-performance on any Postgres application, existing or new | 3350 | 246 | 137 | 2016-11-22T05:17:05Z | 2022-08-25T00:40:24Z |
chproxy | Open-Source ClickHouse http proxy and load balancer | 961 | 209 | 47 | 2017-09-18T13:09:23Z | 2022-08-25T12:31:19Z |
pg_timetable | pg_timetable: Advanced scheduling for PostgreSQL | 772 | 42 | 4 | 2018-12-19T10:19:51Z | 2022-08-19T19:05:34Z |
clickhouse-bulk | Collects many small inserts to ClickHouse and send in big inserts | 377 | 77 | 17 | 2017-04-29T10:38:41Z | 2022-08-08T15:40:52Z |
myreplication | Golang MySql binary log replication listener | 187 | 50 | 5 | 2015-02-04T20:59:49Z | 2018-10-05T07:34:57Z |
rdb | Golang implemented Redis RDB parser for secondary development and memory analysis | 178 | 35 | 1 | 2021-11-10T15:14:53Z | 2022-08-13T19:04:28Z |
octillery | Go package for sharding databases ( Supports every ORM or raw SQL ) | 168 | 27 | 6 | 2018-11-26T10:39:35Z | 2021-05-26T02:41:55Z |
dbbench | 🏋️ dbbench is a simple database benchmarking tool which supports several databases and own scripts | 72 | 15 | 10 | 2018-11-24T13:21:18Z | 2022-08-24T05:58:43Z |
datagen | A fast data generator that's multi-table aware and supports multi-row DML. | 49 | 8 | 0 | 2019-04-18T19:58:01Z | 2020-06-26T12:37:50Z |
prep | Prep finds all SQL statements in a Go package and instruments db connection with prepared statements | 31 | 6 | 0 | 2017-12-11T23:47:38Z | 2017-12-19T17:35:51Z |
rwdb | Database wrapper that manage read write connections | 15 | 2 | 0 | 2017-10-04T03:55:29Z | 2017-11-08T09:10:17Z |
dynago | Simplify working with AWS DynamoDB. | 2 | 0 | 3 | 2022-03-17T16:09:23Z | 2022-08-16T16:38:53Z |
hasql | Library for accessing multi-host SQL database installations. | - | - | - | - | - |
SQL Query Builders
Libraries for building and using SQL.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
sqlc | Generate type-safe code from SQL | 6212 | 426 | 264 | 2019-06-21T21:11:35Z | 2022-08-24T05:02:26Z |
squirrel | Fluent SQL generation for golang | 5101 | 390 | 55 | 2014-01-18T05:29:58Z | 2022-07-31T19:13:44Z |
xo | Command line tool to generate idiomatic Go code for SQL databases supporting PostgreSQL, MySQL, SQLite, Oracle, and Microsoft SQL Server | 3199 | 284 | 37 | 2016-02-05T10:22:20Z | 2022-08-11T15:10:40Z |
goqu | SQL builder and query library for golang | 1649 | 139 | 82 | 2015-02-21T01:06:00Z | 2022-07-12T00:41:37Z |
gendry | a golang library for sql builder | 1420 | 182 | 14 | 2017-12-01T08:15:43Z | 2022-07-22T12:31:17Z |
jet | Type safe SQL builder with code generation and automatic query result data mapping | 777 | 56 | 25 | 2019-03-02T11:06:23Z | 2022-08-23T10:38:20Z |
dotsql | A Golang library for using SQL. | 644 | 47 | 6 | 2014-11-20T12:14:39Z | 2022-06-07T07:36:02Z |
ozzo-dbx | A Go (golang) package that enhances the standard database/sql package by providing powerful data retrieval methods as well as DB-agnostic query building capabilities. | 569 | 60 | 41 | 2015-12-10T22:39:26Z | 2022-08-14T18:24:56Z |
dbq | Zero boilerplate database operations for Go | 348 | 20 | 1 | 2019-07-11T02:17:33Z | 2021-02-22T23:21:16Z |
sqlingo | 💥 A lightweight DSL & ORM which helps you to write SQL in Go. | 258 | 22 | 1 | 2018-11-18T14:11:03Z | 2022-08-21T17:16:00Z |
sqrl | Fluent SQL generation for golang | 242 | 34 | 7 | 2014-06-25T10:03:06Z | 2022-04-20T08:34:43Z |
go-structured-query | Type safe SQL query builder and struct mapper for Go | 170 | 11 | 2 | 2020-05-30T14:07:30Z | 2022-05-24T18:30:47Z |
igor | igor is an abstraction layer for PostgreSQL with a gorm like syntax. | 86 | 4 | 0 | 2016-03-10T14:45:08Z | 2020-06-30T09:43:05Z |
sqlf | Fast SQL query builder for Go | 81 | 12 | 3 | 2019-07-20T07:03:27Z | 2022-05-13T21:30:48Z |
buildsqlx | Go database query builder library for PostgreSQL | 71 | 9 | 9 | 2019-08-18T08:18:21Z | 2022-08-18T17:59:08Z |
godbal | Database Abstraction Layer (dbal) for Go. Support SQL builder and get result easily (now only support mysql) | 53 | 29 | 0 | 2018-02-28T05:47:42Z | 2019-01-30T05:57:00Z |
bqb | BQB is a lightweight and easy to use query builder that works with sqlite, mysql, mariadb, postgres, and others. | 40 | 3 | 0 | 2021-07-31T17:41:45Z | 2022-04-07T13:26:51Z |
gosql | SQL query builder for Go | 24 | 2 | 0 | 2020-01-08T17:13:09Z | 2022-04-12T15:59:32Z |
qry | Write your SQL queries in raw files with all benefits of modern IDEs, use them in an easy way inside your application with all the profit of compile time constants | 22 | 4 | 1 | 2019-08-20T09:01:00Z | 2021-09-30T07:55:24Z |
ormlite | Lightweight package containing some ORM-like features and helpers for sqlite databases. | 3 | 3 | 2 | 2018-06-28T13:42:09Z | 2021-01-13T15:25:04Z |
sg | sg: A simple standard SQL generator written in Go. | 1 | 0 | 0 | 2021-08-31T08:05:06Z | 2022-05-11T07:33:32Z |
Squalus | Thin layer over the Go SQL package that makes it easier to perform queries. | - | - | - | - | - |
Interfaces to Multiple Backends
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
cayley | An open-source graph database | 14294 | 1277 | 88 | 2014-06-05T18:49:41Z | 2022-03-04T21:43:06Z |
gokv | Simple key-value store abstraction and implementations for Go (Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB and many more) | 463 | 53 | 23 | 2018-10-08T18:55:22Z | 2022-08-15T19:52:48Z |
dsc | Datastore Connectivity in go | 25 | 8 | 0 | 2016-06-13T20:18:10Z | 2022-02-14T19:53:33Z |
Relational Database Drivers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
mysql | Go MySQL Driver is a MySQL driver for Go's (golang) database/sql package | 12530 | 2139 | 98 | 2012-12-09T20:33:55Z | 2022-08-23T21:37:41Z |
pq | Pure Go Postgres driver for database/sql | 7539 | 860 | 283 | 2012-03-12T18:50:22Z | 2022-08-20T17:36:41Z |
go-sqlite3 | sqlite3 driver for go using database/sql | 5946 | 978 | 111 | 2011-11-11T12:36:50Z | 2022-08-22T08:19:04Z |
pgx | PostgreSQL driver and toolkit for Go | 5877 | 554 | 237 | 2013-03-30T19:06:26Z | 2022-08-24T00:39:47Z |
go-mssqldb | Microsoft SQL server driver written in go language | 1615 | 437 | 169 | 2013-12-16T00:10:47Z | 2022-08-25T09:38:48Z |
go-oci8 | Oracle driver for Go using database/sql | 593 | 208 | 13 | 2012-02-29T12:19:16Z | 2021-10-25T19:04:43Z |
sqlhooks | Attach hooks to any database/sql driver | 574 | 40 | 7 | 2016-04-20T18:37:14Z | 2022-04-01T03:42:16Z |
godror | GO DRiver for ORacle DB | 384 | 80 | 1 | 2019-11-21T21:23:17Z | 2022-08-15T13:36:44Z |
kivik | Kivik provides a common interface to CouchDB or CouchDB-like databases for Go and GopherJS. | 240 | 33 | 14 | 2017-02-09T14:14:54Z | 2022-03-30T13:13:01Z |
firebirdsql | Firebird RDBMS sql driver for Go (golang) | 173 | 51 | 13 | 2013-08-27T13:09:14Z | 2022-08-23T03:59:02Z |
ksql | A Simple and Powerful Golang SQL Library | 147 | 13 | 0 | 2020-09-12T06:08:45Z | 2022-08-25T01:45:30Z |
go-adodb | Microsoft ActiveX Object DataBase driver for go that using exp/sql | 128 | 32 | 19 | 2011-11-14T04:32:50Z | 2022-04-21T14:35:58Z |
sqinn-go | SQLite with pure Go | 124 | 10 | 0 | 2020-06-06T20:37:12Z | 2021-05-27T18:57:09Z |
gofreetds | Go Sql Server database driver. | 106 | 45 | 18 | 2012-12-06T17:29:26Z | 2020-11-30T22:32:55Z |
calcite-avatica-go | Mirror of Apache Calcite - Avatica Go SQL Driver | 99 | 27 | 0 | 2017-08-08T07:00:08Z | 2022-08-13T06:40:21Z |
bgc | Datastore Connectivity for BigQuery in go | 16 | 8 | 0 | 2016-06-13T20:24:26Z | 2020-02-13T15:00:33Z |
pig | Simple pgx wrapper to execute and scan query results | 9 | 2 | 0 | 2021-04-15T15:33:23Z | 2021-04-18T16:51:29Z |
NoSQL Database Drivers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
redis | Type-safe Redis client for Golang | 15229 | 1862 | 162 | 2012-07-25T13:01:39Z | 2022-08-17T10:50:13Z |
redigo | Go client for Redis | 9245 | 1258 | 16 | 2012-04-14T04:31:58Z | 2022-07-26T02:37:30Z |
mongo-go-driver | The Go driver for MongoDB | 6876 | 797 | 6 | 2017-02-08T17:18:02Z | 2022-08-25T15:48:28Z |
mgo | The MongoDB driver for Go | 1948 | 237 | 66 | 2017-04-13T11:14:04Z | 2021-10-29T16:04:56Z |
rethinkdb-go | Go language driver for RethinkDB | 1606 | 182 | 18 | 2013-09-12T13:56:27Z | 2022-06-02T15:05:28Z |
gomemcache | Go Memcached client library #golang | 1508 | 424 | 53 | 2011-06-28T19:29:12Z | 2022-08-19T14:21:25Z |
qmgo | Qmgo - The Go driver for MongoDB. It‘s based on official mongo-go-driver but easier to use like Mgo. | 954 | 120 | 32 | 2020-08-04T09:06:00Z | 2022-08-16T07:33:36Z |
mgm | Mongo Go Models (mgm) is a fast and simple MongoDB ODM for Go (based on official Mongo Go Driver) | 544 | 58 | 6 | 2019-12-27T14:40:51Z | 2022-06-05T18:42:13Z |
rueidis | A Fast Golang Redis RESP3 client that supports Client Side Caching, Auto Pipelining, Generics OM, RedisJSON, RedisBloom, RediSearch, RedisAI, RedisGears, etc. | 467 | 35 | 4 | 2021-09-18T10:38:58Z | 2022-08-25T16:13:12Z |
redeo | High-performance framework for building redis-protocol compatible TCP servers/services | 416 | 36 | 3 | 2014-03-06T08:46:18Z | 2020-12-11T15:22:37Z |
aerospike-client-go | Aerospike Client Go | 395 | 182 | 24 | 2014-07-26T02:56:21Z | 2022-07-27T20:56:33Z |
neoism | Neo4j client for Golang | 388 | 59 | 14 | 2012-07-12T07:42:33Z | 2020-02-16T09:28:03Z |
gocb | The Couchbase Go SDK | 338 | 98 | 0 | 2015-01-15T20:01:32Z | 2022-08-03T13:13:04Z |
go-couchbase | Couchbase client in Go | 316 | 92 | 41 | 2012-01-19T22:52:08Z | 2022-04-19T12:41:18Z |
go-rejson | Golang client for redislabs' ReJSON module with support for multilple redis clients (redigo, go-redis) | 278 | 44 | 8 | 2018-04-23T00:51:05Z | 2022-08-11T20:55:23Z |
godis | redis client implement by golang, inspired by jedis. | 105 | 18 | 0 | 2019-06-14T03:14:22Z | 2020-05-12T07:08:10Z |
Neo4j-GO | Neo4j REST Client in golang | 76 | 19 | 0 | 2011-06-04T16:08:35Z | 2018-06-20T12:15:38Z |
arangolite | Lightweight Golang driver for ArangoDB | 72 | 20 | 5 | 2015-10-04T17:27:34Z | 2021-03-10T17:27:51Z |
go-pilosa | Go client library for Pilosa | 54 | 23 | 13 | 2016-09-30T21:37:10Z | 2020-03-08T19:32:12Z |
goforestdb | Go bindings for ForestDB | 32 | 6 | 7 | 2014-05-14T15:36:12Z | 2016-12-15T22:01:01Z |
neo4j | Neo4j Rest API Client for Go lang | 28 | 9 | 8 | 2013-05-18T08:54:01Z | 2015-04-02T17:38:48Z |
goriak | goriak - Go language driver for Riak KV | 27 | 6 | 5 | 2016-10-05T16:48:17Z | 2021-09-15T17:43:18Z |
xredis | Go Redis Client | 18 | 6 | 0 | 2017-06-14T00:19:26Z | 2019-06-08T14:36:42Z |
godscache | An unofficial Google Cloud Platform Go Datastore wrapper that adds caching using memcached. For App Engine Flexible, Compute Engine, Kubernetes Engine, and more. | 10 | 2 | 0 | 2018-05-08T20:19:39Z | 2019-02-08T07:04:54Z |
gocosmos | Go driver for Azure CosmosDB SQL API | 9 | 7 | 0 | 2020-12-06T07:03:43Z | 2022-06-15T19:10:02Z |
asc | Datastore Connectivity for Aerospike for go | 8 | 3 | 0 | 2016-06-13T20:22:31Z | 2019-04-20T03:34:22Z |
gocql | Go language driver for Apache Cassandra. | - | - | - | - | - |
Search and Analytic Databases
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
elastic | Deprecated: Use the official Elasticsearch client for Go at https://github.com/elastic/go-elasticsearch | 6978 | 1129 | 91 | 2012-12-06T17:15:33Z | 2022-08-10T08:11:22Z |
go-elasticsearch | The official Go client for Elasticsearch | 4304 | 489 | 55 | 2017-03-27T17:56:15Z | 2022-08-24T16:13:45Z |
elasticsql | convert sql to elasticsearch DSL in golang(go) | 950 | 176 | 9 | 2016-08-24T07:29:43Z | 2022-07-05T03:16:45Z |
elastigo | A Go (golang) based Elasticsearch client library. | 947 | 259 | 72 | 2012-10-12T04:19:59Z | 2019-02-05T18:17:02Z |
skizze | A probabilistic data structure service and storage | 86 | 10 | 0 | 2016-01-17T12:10:40Z | 2016-05-09T18:15:30Z |
goes | A library to interact with Elasticsearch in Go! | 28 | 14 | 0 | 2015-12-28T18:52:03Z | 2020-10-19T19:31:25Z |
Date and Time
Libraries for working with dates and times.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
now | Now is a time toolkit for golang | 3794 | 221 | 8 | 2013-11-18T10:55:30Z | 2022-07-11T14:35:19Z |
carbon | A simple, semantic and developer-friendly golang package for datetime | 2216 | 137 | 3 | 2020-09-07T09:07:35Z | 2022-08-22T12:23:36Z |
dateparse | GoLang Parse many date strings without knowing format in advance. | 1776 | 136 | 51 | 2014-04-21T02:55:48Z | 2022-02-01T15:06:29Z |
carbon | Carbon for Golang, an extension for Time | 724 | 55 | 2 | 2016-08-03T10:55:52Z | 2022-04-28T12:43:00Z |
durafmt | 🕗 Better time duration formatting in Go! | 443 | 47 | 7 | 2016-05-20T21:49:33Z | 2021-06-08T08:57:54Z |
timeutil | timeutil - useful extensions (Timedelta, Strftime, ...) to the golang's time package | 189 | 14 | 2 | 2015-08-02T01:32:06Z | 2019-02-03T13:14:43Z |
gostradamus | Gostradamus: Better DateTimes for Go 🕰️ | 169 | 4 | 1 | 2020-04-07T12:29:21Z | 2021-11-21T18:24:23Z |
go-persian-calendar | The implementation of Persian (Solar Hijri) Calendar in Go | 127 | 19 | 4 | 2016-01-31T18:40:23Z | 2022-08-10T10:22:19Z |
iso8601 | A fast ISO8601 date parser for Go | 105 | 10 | 1 | 2017-04-25T15:54:18Z | 2022-03-18T17:58:34Z |
date | A Go package for working with dates | 91 | 21 | 7 | 2015-11-23T22:58:07Z | 2022-08-02T20:18:01Z |
timespan | Golang package to manipulate time intervals. | 82 | 12 | 3 | 2014-10-07T03:57:02Z | 2019-03-19T18:38:15Z |
go-sunrise | Go package for calculating the sunrise and sunset times for a given location | 56 | 11 | 0 | 2017-06-15T20:49:41Z | 2021-06-07T17:58:34Z |
go-str2duration | Convert string to duration in golang | 45 | 5 | 1 | 2020-02-02T06:04:07Z | 2020-08-11T00:48:43Z |
feiertage | Gesetzliche Feiertage und mehr in Deutschland und Österreich (Bank holidays/public holidays in Austria and Germany) | 42 | 7 | 1 | 2015-11-04T14:19:27Z | 2021-08-16T20:16:45Z |
kair | 🕐 Date and Time - Golang Formatting Library | 23 | 7 | 0 | 2018-10-03T15:44:07Z | 2020-06-18T03:06:36Z |
cronrange | time range expression in cron style | 17 | 6 | 1 | 2019-11-10T01:30:45Z | 2022-02-16T22:36:25Z |
nulltime | 12 | 4 | 0 | 2016-03-06T01:44:58Z | 2017-03-22T04:30:28Z | |
tuesday | Ruby-compatible strftime for golang | 11 | 3 | 1 | 2017-08-10T20:46:26Z | 2021-06-19T03:38:18Z |
strftime | C99-compatible strftime formatter for use with Go time.Time instances. | 10 | 5 | 0 | 2018-02-10T00:35:46Z | 2018-02-21T15:59:14Z |
go-week | A Go package to work with ISO 8601 week dates | 7 | 7 | 2 | 2018-02-23T07:02:37Z | 2021-11-15T17:56:19Z |
Distributed Systems
Packages that help with building Distributed Systems.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
etcd | Distributed reliable key-value store for the most critical data of a distributed system | 40955 | 8802 | 204 | 2013-07-06T21:57:21Z | 2022-08-25T19:19:25Z |
kit | A standard library for microservices. | 23692 | 2353 | 47 | 2015-02-03T00:01:19Z | 2022-08-25T18:39:41Z |
go-zero | A cloud-native Go microservices framework with cli tool for productivity. | 20153 | 2919 | 100 | 2020-08-07T15:37:57Z | 2022-08-25T15:37:32Z |
go-micro | A Go microservices framework | 18924 | 2143 | 81 | 2015-01-13T23:30:18Z | 2022-08-17T09:02:52Z |
kratos | Your ultimate Go microservices framework for the cloud-native era. | 18677 | 3583 | 112 | 2019-01-10T10:42:31Z | 2022-08-25T12:49:17Z |
grpc-go | The Go language implementation of gRPC. HTTP/2 based RPC | 16642 | 3708 | 141 | 2014-12-08T18:59:34Z | 2022-08-25T17:45:08Z |
nats-server | High-Performance server for NATS.io, the cloud and edge native messaging system. | 11378 | 1117 | 248 | 2012-10-29T16:12:24Z | 2022-08-25T20:46:56Z |
micro | API first services platform | 11268 | 996 | 21 | 2015-01-16T22:35:14Z | 2022-08-22T15:31:34Z |
rpcx | Best microservices framework in Go, like alibaba Dubbo, but with more features, Scale easily. Try it. Test it. If you feel it's better, use it! 𝐉𝐚𝐯𝐚有𝐝𝐮𝐛𝐛𝐨, 𝐆𝐨𝐥𝐚𝐧𝐠有𝐫𝐩𝐜𝐱! build for cloud! | 7185 | 1095 | 15 | 2016-05-18T09:34:05Z | 2022-08-20T04:38:37Z |
raft | Golang implementation of the Raft consensus protocol | 6306 | 823 | 28 | 2013-11-05T00:41:20Z | 2022-08-19T15:04:31Z |
lura | Ultra performant API Gateway with middlewares. A project hosted at The Linux Foundation | 5199 | 504 | 72 | 2016-11-04T18:37:13Z | 2022-08-22T20:32:41Z |
torrent | Full-featured BitTorrent client package and utilities | 4467 | 549 | 81 | 2015-01-08T21:10:42Z | 2022-08-14T03:05:25Z |
dragonboat | A feature complete and high performance multi-group Raft library in Go. | 4331 | 473 | 22 | 2018-12-23T07:02:04Z | 2022-08-23T05:29:38Z |
emitter | High performance, distributed and low latency publish-subscribe platform. | 3342 | 320 | 12 | 2016-10-29T08:52:21Z | 2022-03-21T19:23:22Z |
gleam | Fast, efficient, and scalable distributed map/reduce system, DAG execution, in memory or on disk, written in pure Go, runs standalone or distributedly. | 3096 | 284 | 37 | 2016-08-26T08:44:48Z | 2021-05-13T22:17:25Z |
glow | Glow is an easy-to-use distributed computation system written in Go, similar to Hadoop Map Reduce, Spark, Flink, Storm, etc. I am also working on another similar pure Go system, https://github.com/chrislusf/gleam , which is more flexible and more performant. | 3083 | 242 | 13 | 2015-06-14T00:33:48Z | 2018-11-02T06:09:14Z |
liftbridge | Lightweight, fault-tolerant message streams. | 2311 | 102 | 34 | 2017-10-13T19:50:26Z | 2022-05-09T21:41:26Z |
hprose-golang | Hprose is a cross-language RPC. This project is Hprose for Golang. | 1211 | 208 | 0 | 2014-02-14T03:16:43Z | 2022-08-15T14:32:29Z |
go-doudou | go-doudou(doudou pronounce /dəudəu/)is OpenAPI 3.0 spec based lightweight microservice framework. It supports monolith service application as well. Currently, it supports RESTful service only. 中文文档地址:https://go-doudou.unionj.cloud | 844 | 151 | 3 | 2021-02-24T07:21:40Z | 2022-08-22T03:48:39Z |
redislock | Simplified distributed locking implementation using Redis | 781 | 107 | 2 | 2019-06-24T11:10:10Z | 2022-08-22T07:47:00Z |
rain | 🌧 BitTorrent client and library in Go | 752 | 54 | 0 | 2014-05-21T09:17:24Z | 2022-08-21T22:17:27Z |
ringpop-go | Scalable, fault-tolerant application-layer sharding for Go applications | 743 | 71 | 26 | 2015-06-05T22:48:53Z | 2022-07-22T19:23:56Z |
gorpc | Simple, fast and scalable golang rpc library for high load | 653 | 97 | 14 | 2014-11-20T17:02:37Z | 2019-09-11T11:57:02Z |
go-health | Library for enabling asynchronous health checks in your service | 632 | 44 | 11 | 2017-11-29T21:00:07Z | 2022-07-07T15:54:34Z |
resgate | A Realtime API Gateway used with NATS to build REST, real time, and RPC APIs, where all your clients are synchronized seamlessly. | 587 | 53 | 9 | 2018-02-22T12:06:26Z | 2022-04-10T06:03:50Z |
arpc | More effective network communication, two-way calling, notify and broadcast supported. | 586 | 61 | 1 | 2020-05-19T11:30:05Z | 2022-08-24T10:55:07Z |
consistent | Consistent hashing with bounded loads in Golang | 499 | 59 | 6 | 2018-03-25T15:38:27Z | 2022-05-18T10:31:57Z |
go-sundheit | A library built to provide support for defining service health for golang services. It allows you to register async health checks for your dependencies and the service itself, provides a health endpoint that exposes their status, and health metrics. | 487 | 28 | 4 | 2019-04-08T12:54:01Z | 2022-03-26T17:42:22Z |
digota | ecommerce microservice | 456 | 73 | 10 | 2017-08-14T12:01:37Z | 2021-02-14T21:42:48Z |
sleuth | A Go library for master-less peer-to-peer autodiscovery and RPC between HTTP services | 355 | 25 | 0 | 2016-04-23T14:21:41Z | 2018-03-21T15:59:30Z |
go-jump | go-jump: Jump consistent hashing | 348 | 31 | 1 | 2014-06-15T22:12:04Z | 2021-10-18T20:05:52Z |
dht | dht is used by anacrolix/torrent, and is intended for use as a library in other projects both torrent related and otherwise | 241 | 56 | 2 | 2016-12-14T00:34:42Z | 2022-08-22T01:19:19Z |
jsonrpc | A simple go implementation of json rpc 2.0 client over http | 237 | 76 | 4 | 2016-11-10T11:27:55Z | 2022-06-30T13:31:52Z |
jsonrpc | The jsonrpc package helps implement of JSON-RPC 2.0 | 168 | 20 | 4 | 2016-10-28T13:36:59Z | 2021-10-15T12:47:14Z |
dynamolock | DynamoDB Lock Client for Go | 88 | 43 | 0 | 2018-07-08T11:13:00Z | 2022-04-08T19:51:54Z |
outboxer | A library that implements the outboxer pattern in go | 87 | 17 | 5 | 2019-02-01T09:50:13Z | 2022-08-22T11:16:08Z |
doublejump | A revamped Google's jump consistent hash | 77 | 14 | 0 | 2018-06-26T16:04:50Z | 2022-08-03T23:41:57Z |
semaphore | Take control of your data, connect with anything, and expose it anywhere through protocols such as HTTP, GraphQL, and gRPC. | 74 | 16 | 17 | 2020-02-05T16:39:39Z | 2022-07-20T02:01:04Z |
celeriac.v1 | Golang client library for adding support for interacting and monitoring Celery workers, tasks and events. | 73 | 11 | 1 | 2015-10-10T07:27:33Z | 2020-10-16T04:43:47Z |
dot | distributed data sync with operational transformation/transforms | 72 | 5 | 0 | 2017-12-18T01:08:12Z | 2019-09-30T00:29:15Z |
flowgraph | Flowgraph package for scalable asynchronous system development | 51 | 6 | 0 | 2018-08-29T21:45:26Z | 2021-04-24T16:09:30Z |
pglock | PostgreSQL Lock Client for Go | 49 | 11 | 0 | 2018-12-17T17:43:41Z | 2022-06-05T15:42:11Z |
go-mysql-lock | MySQL Backed Locking Primitive | 46 | 11 | 3 | 2020-06-06T16:30:07Z | 2021-07-25T17:36:16Z |
drmaa | Compute cluster (HPC) job submission library for Go (#golang) based on the open DRMAA standard. | 40 | 20 | 0 | 2013-03-17T12:58:02Z | 2022-03-07T18:19:16Z |
go-pdu | Go implementation of PDU - A decentralized SNS backbone | 39 | 7 | 0 | 2018-10-08T08:13:22Z | 2022-08-25T08:42:59Z |
micro | A Go distributed systems development framework | 20 | 7 | 0 | 2020-05-03T01:16:16Z | 2022-08-18T10:30:54Z |
dynatomic | Dynatomic is a library for using dynamodb as an atomic counter | 14 | 3 | 0 | 2019-02-08T17:45:14Z | 2020-11-04T16:28:08Z |
consistenthash | A Go library that implements Consistent Hashing | 11 | 4 | 0 | 2020-04-22T16:01:25Z | 2022-03-22T11:06:06Z |
failured | Adaptive Accrual Failure Detector | 6 | 1 | 0 | 2021-07-26T10:11:01Z | 2021-08-02T03:08:02Z |
pjrpc | Golang JSON-RPC Server-Client with Protobuf spec. | - | - | - | - | - |
Dynamic DNS
Tools for updating dynamic DNS records.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
godns | A dynamic DNS client tool supports AliDNS, Cloudflare, Google Domains, DNSPod, HE.net & DuckDNS & DreamHost, etc, written in Go. | 1138 | 188 | 13 | 2014-05-11T11:49:17Z | 2022-08-25T02:04:43Z |
ddns | Personal DDNS client with Digital Ocean Networking DNS as backend. | 216 | 21 | 1 | 2017-03-13T21:02:27Z | 2022-06-07T12:03:21Z |
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. | - | - | - | - | - |
Libraries and tools that implement email creation and sending.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
MailHog | Web and API based SMTP testing | 10664 | 851 | 217 | 2014-04-16T22:28:49Z | 2022-08-03T20:12:09Z |
hermes | Golang package that generates clean, responsive HTML e-mails for sending transactional mail | 2517 | 209 | 32 | 2017-03-25T18:25:36Z | 2021-12-05T01:25:36Z |
Robust and flexible email library for Go | 2123 | 283 | 52 | 2013-12-12T20:11:59Z | 2021-12-17T03:22:10Z | |
go-imap | 📥 An IMAP library for clients and servers | 1595 | 222 | 70 | 2016-04-26T17:59:18Z | 2022-08-15T17:19:50Z |
sendgrid-go | The Official Twilio SendGrid Golang API Library | 839 | 255 | 19 | 2013-09-12T03:31:13Z | 2022-08-18T00:59:35Z |
mailgun-go | Go library for sending mail with the Mailgun API. | 621 | 128 | 0 | 2014-02-28T00:28:44Z | 2022-05-27T18:40:47Z |
chasquid | SMTP (email) server with a focus on simplicity, security, and ease of operation [mirror] | 552 | 40 | 4 | 2016-11-03T01:28:05Z | 2022-08-23T22:51:00Z |
email-verifier | ✅ A Go library for email verification without sending any emails. | 498 | 72 | 3 | 2020-12-18T08:47:28Z | 2022-08-22T23:09:37Z |
go-simple-mail | Golang package for send email. Support keep alive connection, TLS and SSL. Easy for bulk SMTP. | 368 | 60 | 10 | 2019-09-15T05:38:54Z | 2022-05-17T04:37:59Z |
go-message | ✉ A streaming Go library for the Internet Message Format and mail messages | 261 | 83 | 21 | 2016-12-31T09:31:52Z | 2022-08-22T20:34:23Z |
hectane | Lightweight SMTP client written in Go | 220 | 26 | 16 | 2015-08-28T01:36:47Z | 2020-11-29T20:53:17Z |
douceur | A simple CSS parser and inliner in Go | 219 | 39 | 9 | 2015-04-09T10:21:26Z | 2021-06-05T19:55:34Z |
mailchain | Using Mailchain, blockchain users can now send and receive rich-media HTML messages with attachments via a blockchain address. | 123 | 50 | 44 | 2019-04-11T17:37:31Z | 2022-04-01T17:33:18Z |
go-premailer | Inline styling for html mail in golang | 90 | 15 | 3 | 2015-02-16T22:19:18Z | 2021-03-06T20:26:39Z |
go-dkim | DKIM package for golang | 80 | 35 | 4 | 2015-04-29T15:38:27Z | 2020-11-03T13:16:31Z |
smtp | MailHog SMTP Protocol | 72 | 29 | 6 | 2014-12-24T16:13:49Z | 2021-10-20T15:16:17Z |
go-smtp-mock | SMTP mock server written on Golang. Mimic any 📤 SMTP server behaviour for your test environment with fake SMTP server. | 51 | 6 | 3 | 2021-08-31T13:54:57Z | 2022-07-12T12:54:46Z |
go-email-normalizer | Golang library for providing a canonical representation of email address. | 51 | 5 | 0 | 2020-08-21T23:13:04Z | 2021-09-18T11:31:53Z |
go-email-validator | 📧 Golang Email address validator | 38 | 8 | 2 | 2020-12-10T18:27:20Z | 2022-08-24T18:07:22Z |
go-mail | 📧 Easy to use, yet comprehensive library for sending mails with Go | 37 | 4 | 2 | 2022-03-05T11:03:34Z | 2022-08-14T12:47:57Z |
truemail-go | 🚀 Configurable Golang 📨 email validator/verifier. Verify email via Regex, DNS, SMTP and even more. Be sure that email address valid and exists. | 19 | 2 | 0 | 2020-12-31T08:06:30Z | 2022-05-31T08:29:31Z |
mailx | A library that makes it easier to send email via SMTP. | 3 | 2 | 0 | 2021-11-11T12:12:26Z | 2022-02-08T12:07:54Z |
Embeddable Scripting Languages
Embedding other languages inside your go code.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gopher-lua | GopherLua: VM and compiler for Lua in Go | 4970 | 548 | 52 | 2015-02-15T13:23:37Z | 2022-08-01T03:31:57Z |
goja | ECMAScript/JavaScript engine in pure Go | 3186 | 250 | 24 | 2016-11-04T22:04:06Z | 2022-08-15T08:35:17Z |
tengo | A fast script language for Go | 2860 | 194 | 62 | 2019-01-09T07:17:17Z | 2022-08-12T12:30:50Z |
expr | Expression language for Go | 2792 | 212 | 52 | 2018-07-14T15:57:34Z | 2022-08-10T15:22:01Z |
go-lua | A Lua VM in Go | 2477 | 171 | 42 | 2013-12-20T17:29:43Z | 2022-07-29T17:11:04Z |
go-python | naive go bindings to the CPython2 C-API | 1410 | 138 | 28 | 2012-07-09T15:43:31Z | 2021-04-14T08:55:37Z |
cel-go | Fast, portable, non-Turing complete expression evaluation with gradual typing (Go) | 1276 | 146 | 28 | 2018-03-09T22:57:58Z | 2022-08-25T21:07:59Z |
anko | Scriptable interpreter written in golang | 1274 | 125 | 20 | 2014-03-28T07:29:40Z | 2022-02-06T11:43:43Z |
core | MetaCall: The ultimate polyglot programming experience. | 1022 | 108 | 49 | 2018-12-26T22:02:57Z | 2022-08-25T09:32:12Z |
go-php | PHP bindings for the Go programming language (Golang) | 868 | 101 | 21 | 2015-09-17T21:23:52Z | 2021-11-28T08:15:10Z |
[ARCHIVED] go-duktape | [abandoned] Duktape JavaScript engine bindings for Go | 781 | 96 | 8 | 2015-01-08T05:09:05Z | 2021-10-14T11:38:32Z |
golua | Go bindings for Lua C API - in progress | 591 | 166 | 3 | 2010-12-06T21:39:53Z | 2021-11-19T15:09:33Z |
gval | Expression evaluation in golang | 524 | 69 | 15 | 2017-09-27T08:32:49Z | 2022-08-05T02:49:55Z |
gisp | Simple LISP in Go | 486 | 36 | 1 | 2014-01-11T14:05:43Z | 2017-08-25T13:48:45Z |
prolog | The only reasonable scripting engine for Go. | 409 | 16 | 12 | 2020-11-03T03:16:31Z | 2022-08-25T13:10:33Z |
gentee | Gentee - script programming language for automation. It uses VM and compiler written in Go (Golang). | 95 | 11 | 0 | 2018-01-14T15:49:05Z | 2022-01-25T12:37:14Z |
binder | High level go to Lua binder. Write less, do more. | 59 | 10 | 1 | 2017-04-02T17:14:52Z | 2022-07-07T19:44:46Z |
purl | Perl, but fluffy like a cat! | 34 | 5 | 2 | 2014-11-29T19:06:01Z | 2014-12-07T17:45:34Z |
ecal | A simple embeddable scripting language which supports concurrent event processing. | 26 | 4 | 0 | 2020-11-30T15:58:56Z | 2021-05-23T09:52:36Z |
ngaro | An embeddable implementation of the Ngaro Virtual Machine for Go programs | 22 | 3 | 1 | 2016-08-09T15:23:50Z | 2018-06-03T10:57:43Z |
Error Handling
Libraries for handling errors.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
[ARCHIVED] errors | Simple error handling primitives | 7871 | 638 | 42 | 2015-12-27T12:05:38Z | 2021-11-02T20:32:11Z |
go-multierror | A Go (golang) package for representing a list of errors as a single error. | 1671 | 105 | 21 | 2014-12-15T20:12:26Z | 2022-07-08T08:51:58Z |
errors | Go error library with error portability over the network | 1416 | 43 | 11 | 2019-06-09T10:42:19Z | 2022-07-29T18:47:09Z |
eris | Error handling library with readable stack traces and flexible formatting support 🎆 | 1069 | 38 | 2 | 2019-09-07T16:50:33Z | 2022-04-27T22:04:43Z |
errorx | A comprehensive error handling library for Go | 883 | 26 | 5 | 2018-08-17T08:02:10Z | 2022-07-14T11:14:20Z |
tracerr | Golang errors with stack trace and source fragments. | 733 | 28 | 1 | 2019-02-06T18:57:46Z | 2019-03-15T03:57:28Z |
errlog | Reduce debugging time while programming Go. Use static and stack-trace analysis to determine which func call causes the error. | 407 | 17 | 0 | 2019-02-16T23:19:05Z | 2020-11-30T18:28:01Z |
emperror | The Emperor takes care of all errors personally | 257 | 18 | 5 | 2017-06-13T00:24:28Z | 2020-10-04T16:48:36Z |
errors | Drop-in replacement for the standard library errors package and github.com/pkg/errors | 154 | 11 | 10 | 2019-07-09T13:02:52Z | 2022-06-20T01:43:12Z |
errors | A drop-in replacement for Go errors, with some added sugar! Unwrap user-friendly messages, HTTP status code, easy wrapping with multiple error types. | 42 | 5 | 0 | 2020-07-17T18:57:04Z | 2021-12-13T06:16:55Z |
exception | A simple utility package for exception handling with try-catch in Golang | 15 | 1 | 0 | 2022-05-15T02:16:49Z | 2022-05-30T14:30:19Z |
falcon | A Simple Yet Highly Powerful Package For Error Handling | 7 | 1 | 0 | 2019-09-09T12:49:43Z | 2019-10-10T09:59:47Z |
errors | Simple and efficient error package | 5 | 1 | 0 | 2020-01-08T21:12:51Z | 2022-03-31T13:23:10Z |
errors | Simple golang error handling with classification primitives. | 3 | 1 | 0 | 2019-07-26T00:15:36Z | 2019-08-02T15:28:00Z |
File Handling
Libraries for handling files and file systems.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
afero | A FileSystem Abstraction System for Go | 4723 | 440 | 112 | 2014-10-28T14:19:05Z | 2022-08-25T02:05:11Z |
pdfcpu | A PDF processor written in Go. | 3314 | 275 | 70 | 2017-06-18T17:27:38Z | 2022-08-09T10:59:07Z |
gdu | Fast disk usage analyzer with console interface written in Go | 1923 | 84 | 17 | 2018-02-24T15:04:23Z | 2022-08-08T13:36:10Z |
notify | File system event notification library on steroids. | 754 | 113 | 40 | 2014-09-08T16:09:34Z | 2021-08-09T11:31:54Z |
copy | Go copy directory recursively | 457 | 90 | 15 | 2017-09-01T03:18:56Z | 2022-08-23T08:10:38Z |
bigfile | Bigfile -- a file transfer system that supports http, rpc and ftp protocol https://bigfile.site | 229 | 43 | 2 | 2019-07-15T10:43:50Z | 2020-02-26T01:29:46Z |
afs | Abstract File Storage | 195 | 27 | 0 | 2019-08-19T18:43:38Z | 2022-07-08T15:40:09Z |
vfs | Pluggable, extensible virtual file system for Go | 189 | 19 | 7 | 2017-08-01T18:06:14Z | 2022-08-19T20:29:25Z |
go-exiftool | Golang wrapper for Exiftool : extract as much metadata as possible (EXIF, ...) from files (pictures, pdf, office documents, ...) | 133 | 29 | 6 | 2019-05-12T20:34:09Z | 2022-07-10T21:15:18Z |
go-csv-tag | Read csv file from go using tags | 97 | 24 | 1 | 2017-06-18T15:31:16Z | 2021-11-14T17:04:52Z |
gofs | A cross-platform file synchronization tool out of the box based on golang | 85 | 7 | 2 | 2021-09-13T07:28:53Z | 2022-08-15T16:17:52Z |
skywalker | A package to allow one to concurrently go through a filesystem with ease | 82 | 5 | 1 | 2017-08-01T20:08:25Z | 2021-08-31T17:22:09Z |
opc | Go implementation of the Open Packaging Conventions (OPC) | 72 | 7 | 0 | 2018-11-06T14:49:06Z | 2021-03-01T20:00:33Z |
checksum | Compute message digest for large files in Go | 67 | 15 | 0 | 2014-11-05T09:37:00Z | 2021-11-29T08:44:34Z |
parquet | A library for reading and writing parquet files. | 56 | 11 | 0 | 2019-01-29T21:52:30Z | 2021-10-10T12:39:19Z |
tarfs | An implementation of the FileSystem interface for tar files. | 50 | 8 | 1 | 2017-03-10T22:13:11Z | 2020-03-13T18:47:56Z |
baraka | a tool for handling file uploads simple | 46 | 7 | 1 | 2020-07-12T21:56:50Z | 2022-07-22T20:31:47Z |
go-gtfs | Load GTFS files in golang | 32 | 19 | 1 | 2017-07-09T09:30:31Z | 2022-07-23T16:11:10Z |
flop | Go file operations library chasing GNU APIs. | 31 | 10 | 0 | 2019-03-01T13:41:39Z | 2021-12-07T15:59:35Z |
gut | 🍱 yet another collection of go utilities & tools | 24 | 8 | 13 | 2019-10-05T23:47:24Z | 2020-11-17T17:52:05Z |
go-decent-copy | copy files for humans | 16 | 8 | 1 | 2018-10-16T07:08:24Z | 2020-01-03T16:44:55Z |
todotxt | Parser for todo.txt files in Go ✅ | 13 | 4 | 1 | 2020-11-06T17:41:59Z | 2022-01-30T01:39:57Z |
higgs | A tiny cross-platform Go library to hide/unhide files and directories | 11 | 3 | 0 | 2020-12-13T18:33:10Z | 2022-01-29T13:29:27Z |
pathtype | Add a type for paths in Go. | 11 | 3 | 0 | 2021-08-03T09:59:44Z | 2021-08-12T15:10:37Z |
stl | Modules to read and write STL (stereolithography) files. Concurrent algorithm for reading. | - | - | - | - | - |
Financial
Packages for accounting and finance.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
ticker | Terminal stock ticker with live updates and position tracking | 4351 | 238 | 25 | 2021-01-24T03:50:46Z | 2022-08-24T00:36:45Z |
decimal | Arbitrary-precision fixed-point decimal numbers in go | 4282 | 484 | 91 | 2015-02-25T20:12:57Z | 2022-06-21T18:09:34Z |
go-money | Go implementation of Fowler's Money pattern | 1146 | 113 | 21 | 2017-03-20T16:23:54Z | 2022-08-19T16:28:25Z |
accounting | money and currency formatting for golang | 762 | 63 | 10 | 2015-08-10T13:23:56Z | 2022-07-28T18:11:49Z |
bbgo | The modern cryptocurrency trading bot framework written in Go. | 665 | 167 | 94 | 2020-10-05T08:45:21Z | 2022-08-25T15:43:31Z |
techan | Technical Analysis Library for Golang | 662 | 113 | 22 | 2017-03-08T03:04:08Z | 2022-05-12T18:10:57Z |
go-finance | ⚠ Deprecrated in favor of https://github.com/piquette/finance-go | 537 | 53 | 4 | 2016-02-28T00:37:46Z | 2018-03-09T02:50:46Z |
currency | Currency handling for Go. | 331 | 20 | 1 | 2020-04-16T15:34:39Z | 2022-07-14T12:25:03Z |
ach | ACH implements a reader, writer, and validator for Automated Clearing House (ACH) files. The HTTP server is available in a Docker image and the Go package is available. | 326 | 98 | 27 | 2016-12-14T21:12:49Z | 2022-08-23T13:40:56Z |
orderbook | Matching Engine for Limit Order Book in Golang | 286 | 104 | 5 | 2018-04-24T18:05:26Z | 2021-05-16T21:28:00Z |
go-finance | Go library containing a collection of financial functions for time value of money (annuities), cash flow, interest rate conversions, bonds and depreciation calculations. | 141 | 22 | 0 | 2017-06-01T15:58:33Z | 2021-12-02T20:16:28Z |
transaction | Embedded database for accounts transactions. | 114 | 16 | 0 | 2017-10-11T13:50:30Z | 2022-05-23T17:26:59Z |
ofxgo | Golang library for querying and parsing OFX | 104 | 24 | 0 | 2015-11-08T13:56:53Z | 2021-10-18T01:58:17Z |
sleet | Payment abstraction library - one interface for multiple payment processors ( inspired by Ruby's ActiveMerchant ) | 98 | 16 | 8 | 2019-11-13T21:56:58Z | 2022-08-03T18:28:58Z |
vat | Go package for dealing with EU VAT. Does VAT number validation & rates retrieval. | 96 | 14 | 3 | 2016-06-18T16:10:09Z | 2022-01-26T08:12:34Z |
[ARCHIVED] go-finnhub | Simple and easy to use client for stock market, forex and crypto data from finnhub.io written in Go. Access real-time financial market data from 60+ stock exchanges, 10 forex brokers, and 15+ crypto exchanges | 74 | 15 | 0 | 2020-01-13T20:47:13Z | 2020-02-01T14:53:23Z |
currency | A currency computations package. | 47 | 8 | 0 | 2017-05-09T06:06:38Z | 2021-11-13T17:10:30Z |
fastme | 36 | 9 | 0 | 2020-10-29T13:57:10Z | 2021-09-20T15:24:53Z | |
fpdecimal | 🛫 Fixed-Point Decimals | 12 | 0 | 0 | 2022-05-27T12:01:28Z | 2022-06-12T06:55:04Z |
payme | QR code generator (ASCII & PNG) for SEPA payments | 10 | 1 | 0 | 2021-05-03T21:56:06Z | 2022-05-24T06:31:04Z |
go-finance | Finance related Go functions (e.g. exchange rates, VAT number checking, …) | 9 | 5 | 0 | 2019-09-30T06:49:07Z | 2019-10-23T13:05:23Z |
fpmoney | 🧧 Fixed-Point Decimal Money | 7 | 0 | 2 | 2022-06-11T04:03:58Z | 2022-07-04T01:59:27Z |
Forms
Libraries for working with forms.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
nosurf | CSRF protection middleware for Go. | 1309 | 113 | 10 | 2013-08-22T17:47:34Z | 2020-10-22T21:11:02Z |
csrf | gorilla/csrf provides Cross Site Request Forgery (CSRF) prevention middleware for Go web applications & services 🔒 | 824 | 114 | 1 | 2015-08-03T00:35:16Z | 2022-03-29T17:57:42Z |
[ARCHIVED] binding | Reflectionless data binding for Go's net/http (not actively maintained) | 792 | 83 | 8 | 2014-05-20T23:35:14Z | 2018-03-28T23:47:34Z |
form | 🚂 Decodes url.Values into Go value(s) and Encodes Go value(s) into url.Values. Dual Array and Full map support. | 552 | 33 | 10 | 2016-05-26T13:26:40Z | 2021-07-08T05:00:48Z |
conform | Trims, sanitizes & scrubs data based on struct tags (go, golang) | 265 | 31 | 1 | 2016-01-05T18:00:06Z | 2021-09-29T18:12:34Z |
formam | a package for decode form's values into struct in Go | 172 | 16 | 2 | 2014-10-25T00:23:30Z | 2021-10-03T00:24:15Z |
forms | A lightweight go library for parsing form data or json from an http.Request. | 132 | 21 | 2 | 2014-08-07T16:11:30Z | 2017-07-02T12:22:45Z |
httpin | 🍡 HTTP Input for Go - Decode an HTTP request into a custom struct | 103 | 10 | 5 | 2021-04-13T02:15:36Z | 2022-08-07T16:11:30Z |
qs | Go module for encoding structs into URL query parameters | 63 | 3 | 0 | 2020-10-02T09:50:35Z | 2022-03-01T18:15:08Z |
bind | 27 | 6 | 0 | 2014-08-06T00:13:10Z | 2014-08-16T17:03:51Z | |
queryparam | Go package to easily convert a URL's query parameters/values into usable struct values of the correct types. | 13 | 6 | 0 | 2018-06-14T10:23:05Z | 2020-09-23T15:23:11Z |
gbind | Bind data to any Go value. Can use built-in and custom expression binding capabilities; supports data validation logic for Go values. // 将数据绑定到任何 Go 值。可使用内置和自定义表达式绑定能力;支持对Go值的数据校验逻辑. | 7 | 1 | 0 | 2022-05-21T06:34:24Z | 2022-06-14T09:01:28Z |
Functional
Packages to support functional programming in Go.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-underscore | Helpfully Functional Go - A useful collection of Go utilities. Designed for programmer happiness. | 1250 | 68 | 5 | 2014-07-02T10:27:16Z | 2022-07-11T22:10:40Z |
mo | 🦄 Monads and popular FP abstractions, powered by Go 1.18+ Generics (Option, Result, Either...) | 793 | 18 | 6 | 2022-05-17T23:07:48Z | 2022-08-17T13:42:41Z |
fpGo | Monad, Functional Programming features for Golang | 284 | 19 | 0 | 2018-05-24T09:08:45Z | 2022-06-02T10:28:09Z |
gofp | A super simple Lodash like utility library with essential functions that empowers the development in Go | 128 | 6 | 0 | 2021-02-19T00:01:39Z | 2021-02-23T02:11:36Z |
fuego | Functional Experiment in Golang | 120 | 10 | 0 | 2018-11-05T22:24:09Z | 2022-08-01T23:18:40Z |
fp-go | Fp-go is a collection of Functional Programming helpers powered by Golang 1.18+ generics. | 97 | 5 | 3 | 2022-03-06T23:09:02Z | 2022-08-25T21:04:04Z |
underscore | 🌟 Useful functional programming helpers for Go 1.18 and beyond | 66 | 1 | 1 | 2021-12-28T23:23:16Z | 2022-08-10T15:01:47Z |
valor | Go option and result types that optionally contain a value | 5 | 0 | 2 | 2022-04-07T03:26:46Z | 2022-05-25T16:22:47Z |
Game Development
Awesome game development libraries.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
ebiten | Ebitengine - A dead simple 2D game library for Go | 6937 | 460 | 262 | 2013-06-16T15:13:01Z | 2022-08-25T16:27:25Z |
leaf | A game server framework in Go (golang) | 4502 | 1185 | 19 | 2014-08-04T12:40:08Z | 2021-07-11T11:08:50Z |
pixel | A hand-crafted 2D game library in Go | 4036 | 230 | 41 | 2016-11-19T11:15:34Z | 2022-06-27T09:22:05Z |
goworld | Scalable Distributed Game Server Engine with Hot Swapping in Golang | 2163 | 408 | 21 | 2017-06-03T15:02:46Z | 2022-08-13T16:51:10Z |
engine | Go 3D Game Engine (http://g3n.rocks) | 2109 | 202 | 33 | 2017-03-07T18:25:09Z | 2022-06-18T15:07:08Z |
nano | Lightweight, facility, high performance golang based game server framework | 2082 | 342 | 21 | 2017-08-02T06:05:14Z | 2022-08-22T01:55:02Z |
go-sdl2 | SDL2 binding for Go | 1825 | 214 | 61 | 2013-06-05T18:30:03Z | 2022-08-20T15:59:32Z |
engo | Engo is an open-source 2D game engine written in Go. | 1531 | 126 | 51 | 2014-11-12T05:50:03Z | 2022-08-02T21:59:22Z |
pitaya | Scalable game server framework with clustering support and client libraries for iOS, Android, Unity and others through the C SDK. | 1511 | 324 | 36 | 2018-03-19T19:40:36Z | 2022-08-15T21:37:49Z |
termloop | Terminal-based game engine for Go, built on top of Termbox | 1296 | 75 | 5 | 2015-05-23T17:12:34Z | 2021-08-06T17:39:44Z |
oak | A pure Go game engine | 1273 | 72 | 13 | 2017-07-15T16:24:27Z | 2022-08-23T00:30:47Z |
gonet | A Game Server Skeleton in golang. | 1187 | 301 | 0 | 2013-04-11T02:18:23Z | 2017-05-12T07:31:41Z |
raylib-go | Go bindings for raylib, a simple and easy-to-use library to enjoy videogames programming. | 857 | 90 | 18 | 2017-01-27T08:31:45Z | 2022-08-05T12:40:27Z |
engine | Azul3D - A 3D game engine written in Go! | 553 | 53 | 82 | 2016-02-29T04:54:44Z | 2021-10-24T04:33:05Z |
go-astar | Go implementation of the A* search algorithm | 512 | 69 | 2 | 2014-05-28T02:00:03Z | 2022-01-27T15:08:37Z |
go3d | A performance oriented 2D/3D math package for Go | 266 | 41 | 2 | 2011-06-27T13:02:26Z | 2022-04-04T20:16:13Z |
prototype | Simple 2D game prototyping framework. | 74 | 6 | 1 | 2015-03-04T09:24:39Z | 2021-12-10T17:39:44Z |
tile | Tile is a 2D grid engine, built with data and cache friendly ways, includes pathfinding and observers. | 65 | 5 | 0 | 2020-08-19T13:23:18Z | 2022-06-19T06:22:42Z |
Generators
Tools that generate Go code.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-linq | .NET LINQ capabilities in Go | 3068 | 219 | 9 | 2013-12-19T03:05:00Z | 2022-08-08T02:53:39Z |
jennifer | Jennifer is a code generator for Go | 2523 | 131 | 18 | 2016-12-04T20:57:38Z | 2022-08-06T18:56:26Z |
goderive | Derives and generates mundane golang functions that you do not want to maintain yourself | 1005 | 39 | 17 | 2017-02-10T21:46:49Z | 2022-08-08T04:13:09Z |
gowrap | GoWrap is a command line tool for generating decorators for Go interfaces | 648 | 63 | 2 | 2018-09-15T09:20:42Z | 2022-08-16T07:01:09Z |
go-enum | An enum generator for go | 364 | 37 | 3 | 2017-08-10T22:07:31Z | 2022-08-24T13:05:45Z |
interfaces | Code generation tools for Go. | 352 | 26 | 7 | 2015-12-06T00:04:50Z | 2022-08-07T17:57:20Z |
copygen | Go generator to copy values from type to type and fields from struct to struct (copier without reflection). Generate any code based on types. | 172 | 7 | 1 | 2021-09-21T01:51:04Z | 2022-07-28T12:28:22Z |
goverter | Generate type-safe Go converters by simply defining an interface | 141 | 15 | 8 | 2021-03-09T20:39:27Z | 2022-08-01T19:46:45Z |
gotype | Golang source code parsing, usage like reflect package | 46 | 7 | 1 | 2017-12-05T04:09:47Z | 2022-06-21T05:55:05Z |
GENERIS | Versatile Go code generator. | 35 | 1 | 0 | 2019-03-10T19:33:31Z | 2022-02-22T21:26:01Z |
go-xray | Helpers for making the use of reflection easier | 23 | 2 | 0 | 2019-10-01T08:40:51Z | 2019-11-20T17:31:59Z |
typeregistry | create type dynamically in Golang | 14 | 1 | 0 | 2020-01-14T15:50:38Z | 2020-02-20T13:00:03Z |
Geographic
Geographic tools and servers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
tile38 | Real-time Geospatial and Geofencing | 8234 | 514 | 125 | 2016-03-04T23:07:44Z | 2022-08-17T15:34:27Z |
geo | S2 geometry library in Go | 1416 | 160 | 19 | 2014-12-03T23:02:15Z | 2022-08-23T01:10:03Z |
mbtileserver | Basic Go server for mbtiles | 375 | 68 | 13 | 2014-11-01T04:12:14Z | 2022-06-13T22:29:16Z |
osm | General purpose library for reading, writing and working with OpenStreetMap data | 226 | 34 | 1 | 2016-02-02T00:59:03Z | 2022-08-19T21:51:05Z |
wgs84 | A zero-dependency Go package for coordinate transformations. | 87 | 7 | 0 | 2019-06-08T17:17:59Z | 2022-06-05T08:34:33Z |
godal | golang wrapper for github.com/OSGEO/gdal | 80 | 16 | 7 | 2021-02-05T17:27:05Z | 2022-07-06T12:13:23Z |
geoserver | geoserver is a Go library for manipulating a GeoServer instance via the GeoServer REST API. | 74 | 19 | 5 | 2018-03-26T21:36:49Z | 2022-07-13T18:22:16Z |
simplefeatures | Simple Features is a pure Go Implementation of the OpenGIS Simple Feature Access Specification | 60 | 9 | 40 | 2019-06-07T07:52:01Z | 2022-07-08T05:31:01Z |
gismanager | Publish Your GIS Data(Vector Data) to PostGIS and Geoserver | 47 | 9 | 1 | 2018-09-29T12:51:37Z | 2018-10-30T08:55:19Z |
pbf | OpenStreetMap PBF golang parser | 37 | 7 | 2 | 2017-09-18T23:13:18Z | 2022-06-04T22:02:31Z |
s2-geojson | Draw a polygon on the map or paste a geoJSON and explore how the s2.RegionCoverer covers it with S2 cells depending on the min and max levels | 18 | 6 | 1 | 2020-03-27T09:47:32Z | 2020-04-05T06:44:10Z |
go-geojson2h3 | Conversion utilities between H3 indexes and GeoJSON | 2 | 0 | 0 | 2022-05-06T17:28:57Z | 2022-05-11T10:56:34Z |
web-mercator-projection | A Go project to explore the math to calculate and present data in a map using the Web Mercator Projection |
1 | 1 | 0 | 2022-03-16T20:19:56Z | 2022-03-24T20:30:37Z |
go-h3geo-dist | H3-geo distributed cells | 0 | 1 | 0 | 2021-12-27T14:05:36Z | 2022-05-11T11:33:40Z |
Go Compilers
Tools for compiling Go to other languages.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gopherjs | A compiler from Go to JavaScript for running Go code in a browser | 11302 | 529 | 183 | 2013-08-27T22:23:58Z | 2022-08-24T20:25:35Z |
tardisgo | Golang->Haxe->CPP/CSharp/Java/JavaScript transpiler | 419 | 31 | 4 | 2014-01-08T11:07:33Z | 2016-11-19T18:08:43Z |
c4go | Transpiling C code to Go code | 324 | 38 | 25 | 2018-03-28T06:24:57Z | 2021-11-15T11:17:02Z |
c2go | Convert C to Go | 194 | 14 | 6 | 2022-03-25T15:38:59Z | 2022-08-08T15:37:15Z |
esp32-transpiler | Transpile Golang into Arduino code to use fully automated testing at your IoT projects. | 51 | 4 | 0 | 2018-03-14T14:22:55Z | 2022-08-23T19:40:45Z |
f4go | Transpiling fortran code to golang code | 32 | 9 | 6 | 2018-07-08T17:05:43Z | 2021-11-30T13:42:22Z |
Goroutines
Tools for managing and working with Goroutines.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
ants | 🐜🐜🐜 ants is a high-performance and low-cost goroutine pool in Go, inspired by fasthttp./ ants 是一个高性能且低损耗的 goroutine 池。 | 8961 | 1087 | 36 | 2018-05-19T01:13:38Z | 2022-08-24T13:18:02Z |
tunny | A goroutine pool for Go | 3181 | 269 | 6 | 2014-04-02T16:14:58Z | 2022-08-04T03:10:04Z |
goworker | goworker is a Go-based background worker that runs 10 to 100,000* times faster than Ruby-based workers. | 2667 | 240 | 32 | 2013-07-22T17:04:27Z | 2022-07-28T19:38:31Z |
workerpool | Concurrency limiting goroutine pool | 897 | 112 | 8 | 2016-05-17T14:32:06Z | 2022-08-17T01:04:44Z |
grpool | Lightweight Goroutine pool | 703 | 101 | 5 | 2015-07-22T00:15:04Z | 2019-01-27T23:07:22Z |
pool | 🚤 a limited consumer goroutine or unlimited goroutine pool for easier goroutine handling and cancellation | 693 | 61 | 4 | 2015-10-28T16:36:08Z | 2021-06-28T13:01:34Z |
pond | 🔘 Minimalistic and High-performance goroutine worker pool written in Go | 607 | 39 | 1 | 2020-03-21T14:56:33Z | 2022-08-22T11:10:40Z |
gowp | golang worker pool , Concurrency limiting goroutine pool | 407 | 61 | 1 | 2019-09-14T11:43:50Z | 2022-05-28T19:25:06Z |
go-floc | Floc: Orchestrate goroutines with ease. | 258 | 17 | 0 | 2017-07-03T07:34:06Z | 2021-08-10T10:33:23Z |
go-flow | Simply way to control goroutines execution order based on dependencies | 194 | 21 | 1 | 2016-09-25T14:46:09Z | 2019-05-14T12:10:41Z |
semaphore | Fast resizable golang semaphore primitive | 149 | 10 | 0 | 2017-11-22T14:00:58Z | 2021-03-28T09:27:47Z |
go-workers | 👷 Library for safely running groups of workers concurrently or consecutively that require input and output through channels | 143 | 12 | 3 | 2020-10-06T15:39:43Z | 2022-01-13T07:41:18Z |
artifex | Simple in-memory job queue for Golang using worker-based dispatching | 133 | 10 | 0 | 2018-10-31T19:34:31Z | 2020-08-18T21:33:48Z |
errgroup | errgroup with goroutine worker limits | 132 | 10 | 7 | 2020-06-26T06:07:39Z | 2022-04-01T10:03:37Z |
async | A safe way to execute functions asynchronously, recovering them in case of panic. It also provides an error stack aiming to facilitate fail causes discovery. | 110 | 16 | 2 | 2017-06-30T17:08:33Z | 2020-11-19T17:27:17Z |
cyclicbarrier | CyclicBarrier golang implementation | 101 | 13 | 0 | 2018-01-11T10:38:46Z | 2020-06-30T10:11:31Z |
gollback | Go asynchronous simple function utilities, for managing execution of closures and callbacks | 96 | 11 | 0 | 2019-05-11T05:56:37Z | 2022-02-17T08:48:36Z |
semaphore | 🚦 Semaphore pattern implementation with timeout of lock/unlock operations. | 90 | 11 | 6 | 2016-10-08T11:48:12Z | 2020-04-16T19:25:15Z |
Hunch | Hunch provides functions like: All, First, Retry, Waterfall etc., that makes asynchronous flow control more intuitive. | 87 | 9 | 1 | 2019-06-05T13:21:04Z | 2022-06-26T13:00:20Z |
async | Synchronization and asynchronous computation utilities library for Go | 86 | 6 | 0 | 2019-12-28T09:48:40Z | 2022-06-12T08:23:10Z |
gpool | gpool - a generic context-aware resizable goroutines pool to bound concurrency based on semaphore. | 84 | 4 | 0 | 2018-12-03T04:23:35Z | 2019-12-16T17:37:15Z |
worker-pool | Go simple async worker pool | 83 | 13 | 0 | 2017-10-04T09:18:31Z | 2021-01-17T02:27:13Z |
threadpool | Golang simple thread pool implementation | 75 | 15 | 1 | 2017-09-06T18:45:39Z | 2020-03-23T11:51:49Z |
goccm | Limits the number of goroutines that are allowed to run concurrently | 54 | 9 | 3 | 2019-08-16T02:26:53Z | 2022-08-20T15:35:46Z |
routine | go routine control, abstraction of the Main and some useful Executors.如果你不会管理Goroutine的话,用它 | 52 | 7 | 0 | 2019-03-04T12:25:23Z | 2020-10-08T05:51:14Z |
nursery | Structured Concurrency in Go | 51 | 5 | 1 | 2019-11-23T19:26:02Z | 2021-07-08T15:59:22Z |
gohive | 🐝 A Highly Performant and easy to use goroutine pool for Go | 42 | 6 | 3 | 2019-05-31T10:44:24Z | 2021-11-27T10:45:02Z |
kyoo | Unlimited job queue for go, using a pool of concurrent workers processing the job queue entries | 38 | 2 | 0 | 2020-01-06T20:35:11Z | 2020-03-29T16:11:58Z |
gowl | 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. | 35 | 4 | 5 | 2021-04-12T19:15:53Z | 2022-07-12T18:55:45Z |
parallel-fn | Run functions in parallel ☄ | 33 | 2 | 0 | 2017-06-18T09:47:54Z | 2018-01-01T20:34:49Z |
go-waitgroup | A sync.WaitGroup with error handling and concurrency control | 31 | 3 | 1 | 2018-08-08T16:12:35Z | 2020-02-21T09:12:59Z |
go-trylock | TryLock support on read-write lock for Golang | 30 | 9 | 1 | 2018-04-26T06:02:47Z | 2021-05-07T03:38:43Z |
oversight | [Mirror] Erlang-like supervisor trees | 28 | 5 | 0 | 2018-11-09T14:46:48Z | 2022-01-17T06:16:42Z |
channelify | Make functions return a channel for parallel processing via go routines. | 24 | 3 | 1 | 2020-10-05T13:12:48Z | 2021-02-25T17:33:41Z |
stl | Software Transactional Locks | 23 | 4 | 0 | 2018-06-19T10:50:11Z | 2020-07-24T08:20:52Z |
queue | package queue gives you a queue group accessibility. Helps you to limit goroutines, wait for the end of the all goroutines and much more. | 12 | 2 | 0 | 2018-12-21T07:15:00Z | 2019-05-18T11:05:23Z |
conexec | A concurrent toolkit to help execute funcs concurrently in an efficient and safe way. It supports specifying the overall timeout to avoid blocking. | 12 | 2 | 0 | 2019-12-24T07:35:11Z | 2020-06-28T03:09:55Z |
execpool | A pool that spins up a given number of processes in advance and attaches stdin and stdout when needed. Very similar to FastCGI but works for any command. | 12 | 2 | 0 | 2021-06-17T18:41:46Z | 2021-07-06T20:39:16Z |
hands | Hands is a process controller used to control the execution and return strategies of multiple goroutines. | 9 | 3 | 1 | 2020-04-04T11:04:11Z | 2022-04-05T04:12:38Z |
concurrency-limiter | 8 | 3 | 0 | 2020-11-22T02:35:52Z | 2020-12-04T21:15:00Z | |
go-tools | A collection of tools for Golang | 7 | 3 | 0 | 2018-11-14T02:53:08Z | 2019-03-27T19:18:09Z |
breaker | 🚧 Flexible mechanism to make execution flow interruptible. | 6 | 1 | 0 | 2021-07-11T10:35:18Z | 2021-07-11T10:32:17Z |
async-job | AsyncJob is an asynchronous queue job manager with light code, clear and speed. I hope so ! 😬 | 2 | 0 | 0 | 2022-02-12T12:49:26Z | 2022-05-30T18:51:58Z |
Hardware
Libraries, tools, and tutorials for interacting with hardware.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
arduino-cli | Arduino command line tool | 3515 | 320 | 280 | 2018-08-08T15:57:32Z | 2022-08-24T20:46:06Z |
go-rpio | 🔌 Raspberry Pi GPIO library for go-lang | 1919 | 213 | 35 | 2013-07-30T03:58:33Z | 2022-03-26T04:49:13Z |
ghw | Golang hardware discovery/inspection library | 1196 | 143 | 39 | 2017-05-26T16:39:02Z | 2022-07-16T12:49:23Z |
emgo | Emgo: Bare metal Go (language for programming embedded systems) | 987 | 72 | 13 | 2014-07-09T10:55:20Z | 2021-12-05T21:00:21Z |
sysinfo | Sysinfo is a Go library providing Linux OS / kernel / hardware system information. | 375 | 76 | 13 | 2016-08-22T01:46:45Z | 2022-08-16T10:20:54Z |
goroslib | ROS client library for the Go programming language | 215 | 37 | 3 | 2020-01-19T20:02:35Z | 2022-08-23T08:57:48Z |
go-osc | Open Sound Control (OSC) library for Golang. Implemented in pure Go. | 156 | 42 | 13 | 2013-08-26T14:10:42Z | 2022-03-08T23:43:04Z |
joystick | Go Joystick API | 32 | 13 | 0 | 2015-07-24T14:51:47Z | 2022-03-19T20:31:06Z |
Images
Libraries for manipulating images.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gocv | Go package for computer vision using OpenCV 4 and beyond. | 4961 | 726 | 233 | 2017-09-18T21:54:17Z | 2022-08-24T15:20:17Z |
imaginary | Fast, simple, scalable, Docker-ready HTTP microservice for high-level image processing | 4484 | 407 | 113 | 2015-03-04T18:51:40Z | 2022-08-11T12:16:10Z |
imaging | Imaging is a simple image processing package for Go | 4354 | 358 | 18 | 2012-12-06T20:21:21Z | 2020-12-18T19:30:12Z |
bild | Image processing algorithms in pure Go | 3594 | 197 | 14 | 2016-08-01T15:54:29Z | 2022-06-14T15:56:21Z |
gg | Go Graphics - 2D rendering in Go with a simple API. | 3550 | 280 | 78 | 2016-02-18T21:05:08Z | 2022-07-05T20:56:36Z |
ln | 3D line art engine. | 3089 | 118 | 12 | 2016-01-10T04:28:10Z | 2019-07-19T09:00:40Z |
resize | Pure golang image resizing | 2876 | 291 | 12 | 2012-08-02T19:48:26Z | 2022-04-02T06:46:33Z |
pt | A path tracer written in Go. | 2021 | 117 | 8 | 2015-01-23T19:39:29Z | 2019-03-21T10:07:26Z |
bimg | Go package for fast high-level image processing powered by libvips C library | 2006 | 311 | 142 | 2015-03-17T14:14:02Z | 2022-07-18T16:23:23Z |
svgo | Go Language Library for SVG generation | 1882 | 160 | 12 | 2010-03-05T23:24:10Z | 2022-04-24T02:17:10Z |
gowitness | 🔍 gowitness - a golang, web screenshot utility using Chrome Headless | 1699 | 226 | 12 | 2017-10-31T08:36:35Z | 2022-07-30T15:29:37Z |
picfit | An image resizing server written in Go | 1686 | 147 | 17 | 2014-12-06T17:30:45Z | 2022-08-18T15:52:25Z |
smartcrop | smartcrop finds good image crops for arbitrary crop sizes | 1658 | 107 | 7 | 2014-04-07T22:40:03Z | 2022-04-11T14:16:31Z |
gift | Go Image Filtering Toolkit | 1573 | 116 | 2 | 2014-07-12T18:47:40Z | 2020-11-21T15:45:54Z |
imagick | Go binding to ImageMagick's MagickWand C API | 1476 | 174 | 13 | 2013-04-30T17:31:48Z | 2022-06-10T03:13:50Z |
go-opencv | Go bindings for OpenCV / 2.x API in gocv / 1.x API in opencv | 1278 | 198 | 45 | 2013-12-09T09:43:26Z | 2019-05-24T14:30:18Z |
geopattern | 📐 Create beautiful generative image patterns from a string in golang. | 1191 | 66 | 3 | 2014-10-22T17:26:30Z | 2019-01-08T20:17:57Z |
stegify | 🔍 Go tool for LSB steganography, capable of hiding any file within an image. | 1024 | 112 | 0 | 2018-11-29T16:45:58Z | 2020-07-08T13:43:58Z |
canvas | Cairo in Go: vector to raster, SVG, PDF, EPS, WASM, OpenGL, Gio, etc. | 1017 | 70 | 9 | 2017-05-20T18:10:51Z | 2022-06-27T19:56:42Z |
govips | A lightning fast image processing and resizing library for Go | 740 | 151 | 33 | 2016-12-25T04:32:56Z | 2022-08-05T05:13:26Z |
image2ascii | 🌁 Convert image to ASCII | 689 | 62 | 7 | 2018-10-20T05:06:25Z | 2022-07-18T02:27:18Z |
draft | Generate High Level Cloud Architecture diagrams using YAML syntax. | 542 | 25 | 0 | 2020-06-05T16:11:40Z | 2021-09-08T18:02:56Z |
goimagehash | Go Perceptual image hashing package | 525 | 57 | 13 | 2017-07-28T17:15:58Z | 2022-08-07T04:46:47Z |
govatar | Avatar generation library for GO language | 513 | 35 | 0 | 2016-01-18T12:12:28Z | 2022-07-29T11:21:00Z |
mort | Storage and image processing server written in Go | 459 | 20 | 3 | 2017-11-19T13:37:58Z | 2022-08-19T23:16:07Z |
go-nude | Nudity detection with Go. | 352 | 39 | 3 | 2014-05-02T08:32:29Z | 2022-04-18T04:02:28Z |
rez | Image resizing in pure Go and SIMD | 207 | 19 | 1 | 2014-01-16T21:16:15Z | 2017-07-31T18:51:31Z |
darkroom | 196 | 37 | 8 | 2019-07-01T10:17:08Z | 2022-04-16T21:41:01Z | |
mergi | go library for image programming (merge, crop, resize, watermark, animate, ease, transit) | 180 | 27 | 2 | 2018-09-24T03:40:47Z | 2020-05-29T19:49:07Z |
gltf | 👓 Go library for encoding glTF 2.0 files | 173 | 29 | 4 | 2019-01-15T17:43:54Z | 2022-07-11T06:50:08Z |
steganography | Pure Golang Library that allows simple LSB steganography on images | 149 | 25 | 0 | 2018-05-21T17:27:36Z | 2021-07-29T15:48:34Z |
img | A selection of image manipulation tools | 140 | 12 | 2 | 2012-07-28T19:57:47Z | 2015-05-01T15:11:26Z |
go-cairo | Go binding for the cairo graphics library | 122 | 30 | 0 | 2012-08-22T18:27:01Z | 2022-08-15T09:39:14Z |
cameron | An avatar generator for Go. | 87 | 10 | 1 | 2018-05-05T22:13:11Z | 2022-08-04T09:11:16Z |
go-webp | Simple and fast webp library for golang | 67 | 14 | 2 | 2020-02-18T09:53:07Z | 2021-09-15T04:03:25Z |
go-gd | Go bingings for GD (http://www.boutell.com/gd/) | 54 | 17 | 1 | 2011-05-12T06:33:54Z | 2018-05-07T19:29:26Z |
gridder | A Grid based 2D Graphics library | 54 | 11 | 0 | 2020-04-10T00:13:10Z | 2021-09-30T17:31:42Z |
webp-server | Simple and minimal image server capable of storing, resizing, converting and caching images. | 46 | 11 | 0 | 2020-11-22T12:03:12Z | 2021-01-14T20:14:09Z |
goimghdr | The imghdr module determines the type of image contained in a file for go | 38 | 4 | 0 | 2018-02-25T09:34:44Z | 2019-06-14T10:13:28Z |
[ARCHIVED] tga | Go package for decoding and encoding TARGA image format | 31 | 12 | 1 | 2012-10-08T01:09:20Z | 2015-05-24T08:11:41Z |
go-webcolors | Port of webcolors library from Python to Go | 26 | 6 | 0 | 2014-04-24T14:41:22Z | 2015-08-21T04:56:56Z |
mpo | JPEG-MPO Decoder / Converter Library and CLI Tool | 9 | 4 | 1 | 2015-04-14T22:37:59Z | 2020-06-18T16:55:56Z |
scout | Scout is a standalone open source software solution for DIY video security. | 4 | 2 | 0 | 2020-09-25T17:28:58Z | 2022-06-22T18:18:31Z |
IoT (Internet of Things)
Libraries for programming devices of the IoT.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gobot | Golang framework for robotics, drones, and the Internet of Things (IoT) | 7882 | 967 | 171 | 2013-09-21T14:09:19Z | 2022-07-26T19:20:45Z |
flogo | Project Flogo is an open source ecosystem of opinionated event-driven capabilities to simplify building efficient & modern serverless functions, microservices & edge apps. | 2086 | 275 | 123 | 2016-07-10T02:57:43Z | 2022-08-09T14:34:13Z |
mainflux | Industrial IoT Messaging and Device Management Platform | 1855 | 545 | 112 | 2015-07-06T20:31:50Z | 2022-08-25T13:54:43Z |
periph | Go·Hardware·Lean | 1749 | 182 | 42 | 2016-10-13T16:53:51Z | 2022-05-29T14:36:30Z |
gatt | Gatt is a Go package for building Bluetooth Low Energy peripherals | 1035 | 283 | 50 | 2014-04-23T13:45:27Z | 2022-08-17T00:35:11Z |
heedy | An aggregator for personal metrics, and an extensible analysis engine | 344 | 32 | 21 | 2015-01-16T19:44:21Z | 2022-06-27T02:04:19Z |
devices | Suite of libraries for IoT devices (written in Go), experimental for x/exp/io | 254 | 28 | 9 | 2016-05-30T08:07:02Z | 2016-07-10T00:46:08Z |
sensorbee | Lightweight stream processing engine for IoT | 213 | 41 | 39 | 2016-02-19T07:49:56Z | 2019-11-04T22:46:34Z |
huego | An extensive Philips Hue client library for Go with an emphasis on simplicity | 212 | 36 | 9 | 2017-05-16T05:31:45Z | 2022-07-08T11:51:54Z |
iot | A Go client for Google IoT Core | 59 | 12 | 0 | 2018-03-08T06:51:51Z | 2019-11-08T18:32:28Z |
eywa | Make IoT a lot more fun with data. | 56 | 16 | 9 | 2016-02-20T17:02:16Z | 2017-04-12T07:41:51Z |
Job Scheduler
Libraries for scheduling jobs.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gocron | Easy and fluent Go cron scheduling. This is a fork from https://github.com/jasonlvhit/gocron | 2212 | 165 | 15 | 2020-03-20T15:33:05Z | 2022-08-24T17:13:40Z |
jobrunner | Framework for performing work asynchronously, outside of the request flow | 934 | 86 | 11 | 2015-10-21T04:17:01Z | 2020-11-14T21:03:29Z |
go-quartz | Minimalist and zero-dependency scheduling library for Go | 931 | 52 | 9 | 2019-04-14T18:57:51Z | 2022-05-24T06:37:18Z |
gron | gron, Cron Jobs in Go. | 905 | 54 | 8 | 2016-06-04T08:02:22Z | 2021-01-14T08:44:12Z |
jobs | A persistent and flexible background jobs library for go. | 490 | 44 | 17 | 2015-02-09T22:13:29Z | 2018-06-16T21:00:16Z |
scheduler | Job scheduling made easy. | 393 | 53 | 8 | 2015-02-03T17:10:23Z | 2022-06-23T14:43:15Z |
dagu | A just another Cron alternative with a Web UI, but with much more capabilities | 284 | 21 | 12 | 2022-04-22T13:00:42Z | 2022-08-25T14:17:10Z |
go-cron | A 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. | 211 | 19 | 0 | 2011-04-15T14:50:49Z | 2020-02-10T17:52:36Z |
gronx | Lightweight, fast and dependency-free Cron expression parser (due checker), task scheduler and/or daemon for Golang (tested on v1.13 and above) and standalone usage | 209 | 13 | 2 | 2021-04-21T06:14:03Z | 2022-08-18T05:11:00Z |
clockwerk | Job Scheduling Library | 123 | 14 | 0 | 2017-04-09T23:10:48Z | 2019-11-08T07:51:19Z |
tasks | Package tasks is an easy to use in-process scheduler for recurring tasks in Go | 104 | 11 | 1 | 2019-12-24T18:26:18Z | 2022-05-31T14:24:30Z |
leprechaun | You had one job, or more then one, which can be done in steps | 87 | 12 | 12 | 2018-04-08T13:44:04Z | 2022-07-12T09:58:02Z |
goflow | Web UI-based workflow orchestrator for rapid prototyping | 55 | 4 | 0 | 2020-03-22T20:03:31Z | 2022-08-23T05:20:19Z |
cheek | Crontab-like scHeduler for Effective Execution of tasKs, cheek for short. | 45 | 3 | 15 | 2021-12-01T21:30:36Z | 2022-08-19T23:27:03Z |
sched | A job scheduler for Go with the ability to fast-forward time. | 25 | 1 | 0 | 2021-06-19T22:57:48Z | 2021-07-09T14:15:46Z |
cdule | cdule (pronounce as Schedule) Golang based scheduler library with database support. | 10 | 3 | 1 | 2022-02-12T11:49:51Z | 2022-05-01T11:07:37Z |
cronticker | Golang ticker that works with Cron scheduling. | 4 | 4 | 0 | 2020-11-28T20:59:38Z | 2021-01-02T01:57:05Z |
JSON
Libraries for working with JSON.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gjson | Get JSON values quickly - JSON parser for Go | 10866 | 718 | 51 | 2016-08-11T03:08:47Z | 2022-08-16T13:45:28Z |
json-to-go | Translates JSON into a Go type in your browser instantly (original) | 3710 | 448 | 18 | 2014-01-21T18:11:13Z | 2022-06-08T22:11:43Z |
gojson | Automatically generate Go (golang) struct definitions from example JSON | 2523 | 205 | 42 | 2012-12-27T19:10:50Z | 2021-07-30T03:02:50Z |
fastjson | Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection | 1636 | 102 | 38 | 2018-05-28T21:41:47Z | 2022-08-17T06:58:26Z |
ojg | Optimized JSON for Go | 501 | 34 | 1 | 2020-04-12T17:17:31Z | 2022-08-12T00:37:21Z |
kazaam | Arbitrary transformations of JSON in Golang | 235 | 50 | 22 | 2016-07-19T14:19:03Z | 2022-06-06T06:01:18Z |
marshmallow | Marshmallow provides a flexible and performant JSON unmarshalling in Go. It specializes in dealing with unstructured struct - when some fields are known and some aren't, with zero performance overhead nor extra coding needed. | 197 | 6 | 3 | 2022-04-13T08:16:03Z | 2022-08-25T20:55:36Z |
jsondiff | Compute the diff between two JSON documents as a series of RFC6902 (JSON Patch) operations | 184 | 21 | 0 | 2020-11-28T19:05:16Z | 2022-04-04T16:16:38Z |
gojq | JSON query in Golang | 182 | 23 | 1 | 2015-12-30T09:02:13Z | 2020-11-20T03:35:26Z |
jettison | Highly configurable, fast JSON encoder for Go | 130 | 10 | 1 | 2019-08-30T13:28:03Z | 2022-04-11T20:16:43Z |
ajson | Abstract JSON for Golang with JSONPath support | 125 | 17 | 10 | 2019-03-07T20:47:38Z | 2022-05-02T10:40:20Z |
json-to-proto.github.io | convert JSON to Protocol Buffers online in your browser instantly | 111 | 23 | 2 | 2020-04-18T20:42:45Z | 2022-08-17T00:27:45Z |
gjo | Small utility to create JSON objects | 110 | 14 | 1 | 2019-02-23T01:54:21Z | 2021-04-18T16:48:02Z |
json2go | Create go type representation from json | 105 | 15 | 1 | 2017-06-10T23:55:07Z | 2021-12-15T12:21:53Z |
jsongo | Fluent API to make it easier to create Json objects. | 103 | 17 | 2 | 2015-08-07T23:23:17Z | 2021-10-04T03:26:13Z |
jaydiff | A JSON diff utility | 89 | 8 | 2 | 2017-04-24T16:05:35Z | 2021-01-27T19:43:07Z |
jsonf | Console JSON formatter with query feature | 63 | 11 | 0 | 2015-05-25T04:53:32Z | 2020-12-13T21:45:56Z |
ujson | µjson - A fast and minimal JSON parser and transformer that works on unstructured JSON | 60 | 7 | 0 | 2019-02-27T12:58:07Z | 2021-08-06T04:09:15Z |
go-respond | A Go package for handling common HTTP JSON responses. | 48 | 9 | 1 | 2017-03-12T21:00:54Z | 2021-09-24T20:08:26Z |
mp | Simple Email Parser | 45 | 8 | 1 | 2014-06-15T21:14:39Z | 2016-05-11T19:40:58Z |
vjson | vjson is a golang package that helps to validate JSON objects | 30 | 2 | 2 | 2021-04-29T16:47:50Z | 2021-11-15T05:55:42Z |
jsoncolor | Colorized JSON output for Go | 27 | 5 | 3 | 2021-09-13T01:44:14Z | 2022-03-03T17:41:58Z |
ask | A Go package that provides a simple way of accessing nested properties in maps and slices. | 17 | 1 | 0 | 2020-09-13T13:53:31Z | 2022-08-21T16:16:07Z |
jscan | High performance JSON iterator for Go | 14 | 2 | 2 | 2022-01-08T03:28:41Z | 2022-01-25T05:59:22Z |
mapslice-json | Go MapSlice for ordered marshal/ unmarshal of maps in JSON | 13 | 6 | 3 | 2020-02-19T11:01:48Z | 2022-07-26T21:44:15Z |
dynjson | Client-customizable JSON formats for dynamic APIs | 12 | 5 | 0 | 2020-05-06T07:10:02Z | 2021-10-11T15:25:37Z |
jsonapi-errors | Go bindings based on the JSON API errors reference | 12 | 3 | 0 | 2016-07-08T10:08:58Z | 2016-11-17T16:02:12Z |
go-jsonerror | Small package which wraps error responses to follow jsonapi.org | 12 | 2 | 0 | 2018-10-18T15:03:45Z | 2019-10-09T11:56:05Z |
jsonhal | A simple Go package to make custom structs marshal into HAL compatible JSON responses. | 10 | 6 | 1 | 2016-01-15T11:38:40Z | 2020-03-24T12:17:52Z |
jzon | A golang json library inspired by jsoniter | 10 | 3 | 0 | 2019-11-12T10:42:41Z | 2022-08-02T18:21:40Z |
epoch | Contains primitives for marshaling/unmarshaling Unix timestamp/epoch to/from built-in time.Time type in JSON | 9 | 3 | 1 | 2019-12-15T12:54:37Z | 2022-05-18T20:47:51Z |
ej | Write and read JSON from different sources in one line | 8 | 2 | 0 | 2020-01-04T17:39:35Z | 2020-04-07T00:36:07Z |
jsonic | All you need with JSON | 7 | 2 | 0 | 2021-01-09T06:21:59Z | 2021-01-15T08:00:58Z |
omg.jsonparser | The simple JSON parser with validation by condition | 4 | 2 | 0 | 2021-07-08T23:59:21Z | 2021-10-12T12:34:19Z |
Logging
Libraries for generating and working with log files.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
logrus | Structured, pluggable logging for Go. | 21159 | 2168 | 71 | 2013-10-16T19:08:55Z | 2022-08-20T06:28:21Z |
zap | Blazing fast, structured, leveled logging in Go. | 16746 | 1198 | 103 | 2016-02-18T19:52:56Z | 2022-08-25T05:39:34Z |
zerolog | Zero Allocation JSON Logger | 6757 | 403 | 106 | 2017-05-12T05:24:39Z | 2022-08-22T06:12:49Z |
go-spew | Implements a deep pretty printer for Go data structures to aid in debugging | 5229 | 345 | 60 | 2013-01-09T05:18:22Z | 2022-03-10T06:36:16Z |
lumberjack | lumberjack is a log rolling package for Go | 3494 | 449 | 60 | 2014-06-14T11:55:47Z | 2022-08-16T17:18:25Z |
glog | Leveled execution logs for Go | 3224 | 871 | 2 | 2013-07-16T04:33:04Z | 2022-07-15T10:41:31Z |
tail | Go package for reading from continously updated files (tail -f) | 2404 | 477 | 73 | 2013-02-05T00:28:03Z | 2022-03-23T02:34:51Z |
seelog | Seelog is a native Go logging library that provides flexible asynchronous dispatching, filtering, and formatting. | 1616 | 250 | 41 | 2011-11-17T09:43:15Z | 2019-03-04T07:03:16Z |
log | Structured logging package for Go. | 1248 | 108 | 39 | 2015-12-21T20:27:48Z | 2022-06-20T10:43:29Z |
log15 | Structured, composable logging for Go | 1058 | 148 | 46 | 2014-05-20T00:11:52Z | 2021-10-31T02:28:23Z |
log | High performance structured logging | 443 | 38 | 0 | 2019-07-07T09:40:38Z | 2022-08-14T09:19:03Z |
onelog | Dead simple, super fast, zero allocation logger for Golang | 400 | 15 | 2 | 2018-05-06T14:32:10Z | 2019-03-06T04:37:07Z |
logxi | A 12-factor app logger built for performance and happy development | 349 | 42 | 23 | 2015-03-01T22:13:45Z | 2020-04-14T15:56:24Z |
logutils | Utilities for slightly better logging in Go (Golang). | 325 | 32 | 3 | 2013-10-09T07:31:15Z | 2021-11-08T05:38:47Z |
log | 📗 Simple, configurable and scalable Structured Logging for Go. | 280 | 22 | 0 | 2016-02-07T16:17:48Z | 2022-06-23T23:02:30Z |
go-logger | Simple logger for Go programs. Allows custom formats for messages. | 277 | 51 | 2 | 2014-09-26T04:57:06Z | 2019-05-15T21:27:11Z |
httpretty | Package httpretty prints the HTTP requests you make with Go pretty on your terminal. | 270 | 9 | 2 | 2020-01-24T18:17:16Z | 2022-05-04T02:11:38Z |
sqldb-logger | A logger for Go SQL database driver without modifying existing *sql.DB stdlib usage. | 258 | 11 | 6 | 2019-11-02T17:28:03Z | 2022-05-21T16:39:26Z |
rollingwriter | Rolling writer is an IO util for auto rolling write in go. | 242 | 36 | 7 | 2017-02-12T12:05:26Z | 2022-06-20T03:24:30Z |
glg | Simple and blazing fast lockfree logging library for golang | 168 | 13 | 1 | 2017-06-21T13:26:16Z | 2022-08-08T03:30:56Z |
logur | Logur is an opinionated collection of logging best practices | 167 | 12 | 8 | 2018-12-09T16:43:11Z | 2020-10-04T16:49:57Z |
logger | Minimalistic logging library for Go. | 155 | 16 | 0 | 2014-09-30T06:45:09Z | 2021-11-22T15:36:32Z |
xlog | xlog is a logger for net/context aware HTTP applications | 135 | 13 | 3 | 2015-10-22T09:26:45Z | 2021-02-17T06:17:46Z |
ozzo-log | A Go (golang) package providing high-performance asynchronous logging, message filtering by severity and category, and multiple message targets. | 119 | 33 | 9 | 2015-10-22T22:29:02Z | 2021-01-07T10:03:10Z |
slog | 📑 Lightweight, configurable, extensible logging library written in Go. 一个易于使用的,轻量级、可配置、可扩展的日志库 | 114 | 10 | 0 | 2020-07-06T02:26:45Z | 2022-08-20T06:55:04Z |
logvoyage | LogVoyage - logging SaaS written in GoLang | 91 | 12 | 9 | 2015-03-29T11:05:09Z | 2017-05-24T19:48:17Z |
go-cronowriter | Time based rotating file writer | 49 | 8 | 3 | 2017-02-04T09:02:55Z | 2021-03-16T17:25:35Z |
log | Logging packages for Go | 44 | 4 | 1 | 2014-04-19T14:31:56Z | 2015-09-15T22:13:22Z |
[ARCHIVED] gologger | The Simplest and worst logging library ever written | 40 | 10 | 2 | 2015-09-02T08:52:26Z | 2018-01-31T03:17:58Z |
gone | Golang packages for writing small daemons and servers. | 40 | 8 | 0 | 2016-09-05T09:39:11Z | 2021-05-24T14:23:37Z |
logex | An golang log lib, supports tracking and level, wrap by standard log lib | 39 | 11 | 1 | 2014-10-10T06:38:39Z | 2022-04-24T13:15:45Z |
go-log | A logger, for Go | 38 | 19 | 3 | 2014-05-02T00:34:09Z | 2018-03-31T02:06:55Z |
noodlog | 🍜 Parametrized JSON logging library in Golang which lets you obfuscate sensitive data and marshal any kind of content. | 37 | 8 | 7 | 2021-04-09T08:38:54Z | 2021-10-06T16:10:24Z |
go-log | a golang log lib supports level and multi handlers | 31 | 16 | 1 | 2014-05-18T03:41:55Z | 2019-02-21T02:24:31Z |
journald | Go implementation of systemd Journal's native API for logging | 31 | 2 | 0 | 2017-08-23T07:06:09Z | 2021-03-05T18:33:46Z |
distillog | Logging, distilled | 28 | 8 | 0 | 2015-10-12T16:32:21Z | 2018-07-26T23:35:13Z |
logrusly | Loggly Hooks for GO Logrus logger | 27 | 18 | 3 | 2014-09-11T23:27:11Z | 2021-07-27T21:32:29Z |
mlog | A simple logging module for go, with a rotating file feature and console logging. | 26 | 21 | 1 | 2014-10-20T15:06:26Z | 2018-08-05T17:35:46Z |
log | Structured log interface | 25 | 3 | 0 | 2017-10-28T19:57:55Z | 2017-12-04T18:53:45Z |
zkits-logger | A powerful zero-dependency json logger. | 18 | 1 | 0 | 2020-03-31T14:23:40Z | 2022-08-15T13:18:08Z |
gomol | Gomol is a library for structured, multiple-output logging for Go with extensible logging outputs | 18 | 1 | 3 | 2015-08-30T15:51:46Z | 2019-03-14T03:15:36Z |
logmatic | Colorized logger for Golang with dynamic log level configuration | 14 | 4 | 1 | 2018-11-07T01:52:45Z | 2021-01-11T03:10:50Z |
glo | Logging library for Golang | 14 | 1 | 0 | 2019-01-19T22:10:42Z | 2019-01-23T11:35:10Z |
logrusiowriter | io.Writer implementation using logrus logger | 13 | 1 | 0 | 2019-08-09T08:58:25Z | 2020-07-15T09:10:12Z |
go-log | Simple and configurable Logging in Go, with level, formatters and writers | 12 | 7 | 0 | 2017-05-07T08:09:24Z | 2018-05-19T08:03:37Z |
go-log | A logging library with strack traces, object dumping and optional timestamps | 9 | 5 | 0 | 2019-10-01T08:55:38Z | 2020-07-08T07:39:26Z |
logdump | Package for multi-level logging | 9 | 3 | 0 | 2017-01-13T15:34:31Z | 2018-04-02T00:28:16Z |
logo | Golang logger to different configurable writers. | 9 | 2 | 0 | 2017-02-07T18:02:55Z | 2020-12-27T10:33:21Z |
log | 📝 Logging with multiple output targets. | 9 | 1 | 0 | 2017-06-10T09:54:08Z | 2019-10-26T04:19:45Z |
kemba | A tiny debug logging tool. Ideal for CLI tools and command applications. Inspired by https://github.com/visionmedia/debug | 8 | 2 | 3 | 2020-07-13T03:10:54Z | 2022-08-02T20:24:22Z |
xlog | plugin architecture and flexible log system for golang | 7 | 4 | 0 | 2016-05-05T16:47:45Z | 2019-01-15T10:17:30Z |
log | A simple to use log system, minimalist but with features for debugging and differentiation of messages | 4 | 1 | 1 | 2022-01-26T20:17:37Z | 2022-01-27T05:03:58Z |
slf4g | Simple Logging Facade for Golang | 1 | 1 | 1 | 2020-09-14T06:35:23Z | 2022-04-21T08:00:14Z |
yell | 📒 Yet another minimalist logging library | 0 | 0 | 0 | 2021-02-07T16:07:27Z | 2022-03-01T22:01:45Z |
Machine Learning
Libraries for Machine Learning.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
golearn | Machine Learning for Go | 8505 | 1180 | 77 | 2013-12-26T13:06:14Z | 2022-08-04T21:27:27Z |
gorse | An open source recommender system service written in Go | 6133 | 530 | 33 | 2018-08-14T11:01:09Z | 2022-08-25T13:43:07Z |
gorgonia | Gorgonia is a library that helps facilitate machine learning in Go. | 4608 | 393 | 95 | 2016-09-14T23:19:43Z | 2022-08-09T10:04:30Z |
m2cgen | Transform ML models into a native code (Java, C, Python, Go, JavaScript, Visual Basic, C#, R, PowerShell, PHP, Dart, Haskell, Ruby, F#, Rust) with zero dependencies | 2177 | 205 | 30 | 2019-01-13T02:32:55Z | 2022-08-23T02:01:29Z |
tfgo | Tensorflow + Go, the gopher way | 2022 | 150 | 11 | 2017-05-23T13:27:39Z | 2022-06-22T15:19:04Z |
gosseract | Go package for OCR (Optical Character Recognition), by using Tesseract C++ library | 1836 | 234 | 27 | 2013-10-11T07:27:53Z | 2022-08-22T03:05:18Z |
goml | On-line Machine Learning in Go (and so much more) | 1372 | 128 | 3 | 2015-06-27T05:52:01Z | 2022-07-15T00:13:54Z |
eaopt | 🍀 Evolutionary optimization library for Go (genetic algorithm, partical swarm optimization, differential evolution) | 809 | 92 | 7 | 2016-01-31T00:04:52Z | 2021-04-05T09:12:42Z |
bayesian | Naive Bayesian Classification for Golang. | 740 | 122 | 8 | 2011-11-23T04:17:00Z | 2020-07-24T17:41:07Z |
CloudForest | Ensembles of decision trees in go/golang. | 715 | 92 | 34 | 2012-10-22T17:38:16Z | 2022-02-05T06:54:29Z |
gobrain | Neural Networks written in go | 525 | 59 | 2 | 2014-04-29T13:32:36Z | 2020-12-12T12:34:25Z |
ocrserver | A simple OCR API server, seriously easy to be deployed by Docker, on Heroku as well | 523 | 116 | 1 | 2015-11-15T07:57:42Z | 2021-08-05T08:20:24Z |
onnx-go | onnx-go gives the ability to import a pre-trained neural network within Go without being linked to a framework or library. | 414 | 45 | 28 | 2018-08-28T07:39:20Z | 2022-06-27T05:18:04Z |
go-deep | Artificial Neural Network | 381 | 44 | 0 | 2017-12-09T15:10:06Z | 2022-01-29T15:21:27Z |
regommend | Recommendation engine for Go | 299 | 29 | 0 | 2014-02-05T17:00:49Z | 2019-08-07T04:55:12Z |
goptuna | A hyperparameter optimization framework, inspired by Optuna. | 222 | 17 | 20 | 2019-07-24T12:03:05Z | 2022-07-30T03:04:44Z |
go-galib | Genetic Algorithms library written in Go / golang | 192 | 41 | 0 | 2009-11-30T10:46:58Z | 2015-12-28T16:27:45Z |
goRecommend | Collaborative Filtering (CF) Algorithms in Go! | 190 | 22 | 0 | 2014-07-16T05:32:23Z | 2014-07-29T04:49:57Z |
goga | Golang Genetic Algorithm | 165 | 14 | 0 | 2015-10-20T12:50:51Z | 2022-04-13T07:09:30Z |
shield | Bayesian text classifier with flexible tokenizers and storage backends for Go | 152 | 32 | 5 | 2013-04-10T19:38:16Z | 2020-03-04T03:41:47Z |
go-fann | Go bindings for FANN, library for artificial neural networks | 110 | 20 | 2 | 2011-03-10T21:08:27Z | 2015-02-03T21:53:31Z |
goscore | Go Scoring API for PMML | 83 | 24 | 3 | 2017-08-19T11:08:39Z | 2019-08-23T11:21:08Z |
go-featureprocessing | 🔥 Fast, simple sklearn-like feature processing for Go | 81 | 8 | 5 | 2020-12-18T13:09:18Z | 2022-06-30T00:05:14Z |
gonet | Neural Network for Go. | 75 | 8 | 0 | 2020-01-11T18:27:28Z | 2020-04-05T16:08:18Z |
libsvm | libsvm go version | 71 | 13 | 1 | 2012-07-31T07:57:47Z | 2016-05-09T03:47:11Z |
fonet | fonet is a deep neural network package for Go. | 69 | 17 | 2 | 2017-10-03T15:57:15Z | 2021-06-01T10:04:04Z |
[ARCHIVED] neat | NEAT (NeuroEvolution of Augmenting Topologies) implemented in Go | 65 | 13 | 4 | 2016-11-17T04:23:14Z | 2018-07-04T20:45:55Z |
neural-go | A multilayer perceptron network implemented in Go, with training via backpropagation. | 63 | 16 | 1 | 2011-10-17T09:31:33Z | 2020-08-31T10:58:21Z |
go-pr | Pattern recognition package in Go lang. | 61 | 14 | 0 | 2013-06-07T02:36:20Z | 2013-06-08T10:17:05Z |
Varis | Golang Neural Network | 48 | 8 | 0 | 2017-10-10T08:43:27Z | 2018-08-02T13:47:14Z |
golinear | liblinear bindings for Go | 44 | 12 | 0 | 2013-04-05T15:37:01Z | 2018-08-29T10:30:44Z |
go-cluster | k-modes and k-prototypes clustering algorithms implementation in Go | 34 | 8 | 0 | 2017-10-04T12:24:52Z | 2018-08-06T07:35:27Z |
godist | Probability distributions and associated methods in Go | 33 | 7 | 0 | 2014-09-05T09:48:51Z | 2015-05-11T10:38:48Z |
gomind | A simplistic Neural Network Library in Go | 32 | 7 | 7 | 2017-10-19T03:48:51Z | 2022-05-08T21:10:38Z |
evoli | Genetic Algorithm and Particle Swarm Optimization | 24 | 10 | 21 | 2015-06-12T06:58:30Z | 2021-10-27T10:26:23Z |
randomForest | Random Forest implementation in golang | 23 | 6 | 0 | 2018-10-25T07:05:29Z | 2022-07-08T20:15:41Z |
ddt | Golang Dynamic Decision Tree | 19 | 4 | 0 | 2020-05-20T13:51:42Z | 2021-02-22T12:47:34Z |
probab | Automatically exported from code.google.com/p/probab | 17 | 6 | 3 | 2015-09-14T12:07:52Z | 2015-09-14T12:08:34Z |
Messaging
Libraries that implement messaging systems.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
sarama | Sarama is a Go library for Apache Kafka. | 9102 | 1541 | 266 | 2013-07-05T18:52:38Z | 2022-08-22T14:50:39Z |
gorush | A push notification server written in Go (Golang). | 6519 | 734 | 43 | 2016-03-22T07:15:20Z | 2022-08-18T05:40:25Z |
machinery | Machinery is an asynchronous task queue/job queue based on distributed message passing. | 6443 | 818 | 220 | 2015-04-05T19:46:34Z | 2022-08-13T10:55:34Z |
centrifugo | Scalable real-time messaging server in a language-agnostic way. Set up once and forever. | 6325 | 501 | 6 | 2015-03-31T20:26:49Z | 2022-08-25T07:40:09Z |
go-socket.io | socket.io library for golang, a realtime application framework. | 4765 | 748 | 103 | 2013-07-13T13:04:38Z | 2022-05-26T20:38:40Z |
benthos | Fancy stream processing made operationally mundane | 4713 | 460 | 277 | 2016-03-22T01:18:48Z | 2022-08-25T19:43:00Z |
nats.go | Golang client for NATS, the cloud native messaging system. | 4092 | 552 | 71 | 2012-08-15T12:54:59Z | 2022-08-25T18:18:30Z |
asynq | Simple, reliable, and efficient distributed task queue in Go | 3904 | 287 | 41 | 2019-11-15T05:17:55Z | 2022-08-19T01:46:51Z |
confluent-kafka-go | Confluent's Apache Kafka Golang client | 3529 | 541 | 193 | 2016-07-12T22:23:34Z | 2022-08-22T05:43:53Z |
mercure | An open, easy, fast, reliable and battery-efficient solution for real-time communications | 2981 | 231 | 13 | 2018-07-14T13:47:14Z | 2022-08-12T22:14:57Z |
apns2 | ⚡ HTTP/2 Apple Push Notification Service (APNs) push provider for Go — Send push notifications to iOS, tvOS, Safari and OSX apps, using the APNs HTTP/2 protocol. | 2680 | 310 | 25 | 2016-01-05T00:56:53Z | 2022-08-03T19:03:44Z |
melody | 🎶 Minimalist websocket framework for Go | 2513 | 298 | 25 | 2015-05-13T20:38:32Z | 2022-03-09T11:29:28Z |
go-nsq | The official Go package for NSQ | 2290 | 414 | 22 | 2013-08-29T01:18:32Z | 2022-08-12T09:36:25Z |
gopush-cluster | Golang push server cluster | 2049 | 569 | 5 | 2013-12-27T08:56:10Z | 2017-06-07T12:18:31Z |
uniqush-push | Uniqush is a free and open source software system which provides a unified push service for server side notification to apps on mobile devices. | 1422 | 204 | 72 | 2011-08-29T08:42:37Z | 2020-04-09T17:28:55Z |
Beaver | 💨 A real time messaging system to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps. | 1368 | 73 | 7 | 2018-10-20T21:10:43Z | 2022-08-08T07:13:38Z |
EventBus | [Go] Lightweight eventbus with async compatibility for Go | 1218 | 157 | 21 | 2014-12-19T16:38:39Z | 2022-04-14T21:53:38Z |
zmq4 | A Go interface to ZeroMQ version 4 | 1008 | 156 | 48 | 2013-10-18T11:48:51Z | 2022-08-02T18:50:57Z |
gollum | An n:m message multiplexer written in Go | 921 | 79 | 21 | 2015-06-20T21:51:20Z | 2022-02-25T12:49:20Z |
chanify | Chanify is a safe and simple notification tools. This repository is command line tools for Chanify. | 908 | 84 | 5 | 2021-02-25T17:20:04Z | 2022-04-23T15:42:25Z |
dbus | Native Go bindings for D-Bus | 751 | 198 | 41 | 2014-03-27T19:07:41Z | 2022-08-18T10:33:49Z |
golongpoll | golang long polling library. Makes web pub-sub easy via HTTP long-poll servers and clients 😃 ☕ 💻 | 606 | 53 | 1 | 2015-11-02T00:32:56Z | 2022-06-28T04:41:53Z |
mangos | mangos is a pure Golang implementation of nanomsg's "Scalablilty Protocols" | 537 | 66 | 21 | 2018-10-12T17:35:46Z | 2022-08-20T15:55:55Z |
amqp091-go | An AMQP 0-9-1 Go client maintained by the RabbitMQ team. Originally by @streadway: streadway/amqp |
476 | 60 | 6 | 2021-06-09T11:03:48Z | 2022-08-24T15:00:11Z |
emitter | Emits events in Go way, with wildcard, predicates, cancellation possibilities and many other good wins | 431 | 32 | 4 | 2015-11-10T20:56:36Z | 2020-02-05T13:10:15Z |
glue | Glue - Robust Go and Javascript Socket Library (Alternative to Socket.io) | 402 | 32 | 6 | 2015-06-07T10:21:15Z | 2020-05-20T06:46:44Z |
pubsub | A simple pubsub package for go. | 378 | 65 | 2 | 2012-04-01T06:31:43Z | 2022-06-08T16:26:50Z |
bus | 🔊Minimalist message bus implementation for internal communication with zero-allocation magic on Emit | 273 | 20 | 0 | 2019-04-27T06:41:53Z | 2021-05-11T03:36:00Z |
quamina | Home of Quamina, a fast pattern-matching library in Go | 239 | 10 | 12 | 2022-01-25T03:23:41Z | 2022-08-24T01:43:26Z |
message-bus | Go simple async message bus | 226 | 36 | 2 | 2017-10-04T09:18:34Z | 2021-01-14T22:04:03Z |
rabtap | RabbitMQ wire tap and swiss army knife | 217 | 16 | 2 | 2017-11-11T11:32:39Z | 2022-08-23T09:04:41Z |
guble | websocket based messaging server written in golang | 152 | 22 | 5 | 2015-11-15T20:32:42Z | 2017-10-31T19:15:41Z |
hub | 📨 A fast Message/Event Hub using publish/subscribe pattern with support for topics like* rabbitMQ exchanges for Go applications | 118 | 15 | 2 | 2018-04-13T23:47:13Z | 2020-10-26T14:23:55Z |
oplog | A generic oplog/replication system for microservices | 112 | 13 | 2 | 2014-11-06T09:11:15Z | 2015-11-07T00:51:48Z |
rabbus | A tiny wrapper over amqp exchanges and queues 🚌 ✨ | 93 | 24 | 6 | 2017-05-07T08:51:11Z | 2019-07-23T10:48:01Z |
redisqueue | redisqueue provides a producer and consumer of a queue that uses Redis streams | 86 | 35 | 6 | 2019-07-07T04:36:54Z | 2022-05-17T10:56:56Z |
drone-line | Sending line notifications using a binary, docker or Drone CI. | 77 | 17 | 0 | 2016-09-13T05:21:44Z | 2021-06-18T00:53:29Z |
go-mq | Declare AMQP entities like queues, producers, and consumers in a declarative way. Can be used to work with RabbitMQ. | 76 | 15 | 3 | 2017-06-19T16:16:30Z | 2021-11-30T12:40:58Z |
nsq-event-bus | A tiny wrapper around NSQ topic and channel 🚀 | 74 | 14 | 2 | 2017-01-15T22:05:13Z | 2018-02-15T22:30:14Z |
RapidMQ | RapidMQ is a pure, extremely productive, lightweight and reliable library for managing of the local messages queue | 64 | 11 | 1 | 2016-10-04T21:07:48Z | 2017-12-07T08:34:10Z |
go-notify | Package notify provides an implementation of the Gnome DBus Notifications Specification. | 61 | 12 | 1 | 2015-03-01T19:21:44Z | 2020-12-11T18:09:42Z |
commander | Build event-driven and event streaming applications with ease | 60 | 5 | 2 | 2018-04-20T12:30:51Z | 2021-04-28T21:55:28Z |
go-res | RES Service protocol library for Go | 59 | 8 | 7 | 2018-07-15T09:10:11Z | 2022-01-17T10:23:05Z |
hare | 🐇 CLI tool for websockets and easy to use Golang package | 50 | 10 | 1 | 2020-12-01T22:30:27Z | 2022-08-07T09:03:15Z |
event | The implementation of the pattern observer | 47 | 11 | 0 | 2017-07-02T12:19:56Z | 2018-02-19T12:11:32Z |
ami | Go client to reliable queues based on Redis Cluster Streams | 23 | 8 | 0 | 2018-10-27T10:38:16Z | 2020-04-02T22:56:51Z |
gosd | A library for scheduling when to dispatch a message to a channel | 20 | 4 | 0 | 2020-05-17T23:19:51Z | 2022-08-17T01:47:34Z |
go-vitotrol | golang client library to Viessmann Vitotrol web service | 19 | 7 | 1 | 2016-11-03T19:59:43Z | 2022-05-27T06:50:19Z |
rmqconn | RabbitMQ Reconnection client | 19 | 2 | 0 | 2019-01-14T16:05:44Z | 2020-01-27T09:57:25Z |
jazz | Abstraction layer for simple rabbitMQ connection, messaging and administration | 16 | 4 | 1 | 2018-10-22T12:28:15Z | 2019-03-21T11:10:11Z |
gaurun-client | Gaurun Client written in Go | 10 | 4 | 0 | 2017-06-29T02:50:51Z | 2021-08-03T07:04:33Z |
Microsoft Office
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
unioffice | Pure go library for creating and processing Office Word (.docx), Excel (.xlsx) and Powerpoint (.pptx) documents | 3457 | 386 | 32 | 2017-08-29T01:25:48Z | 2022-06-27T20:27:12Z |
Microsoft Excel
Libraries for working with Microsoft Excel.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
excelize | Go language library for reading and writing Microsoft Excel™ (XLAM / XLSM / XLSX / XLTM / XLTX) spreadsheets | 12650 | 1294 | 101 | 2016-08-29T12:32:12Z | 2022-08-25T01:34:29Z |
xlsx | Go (golang) library for reading and writing XLSX files. | 5364 | 797 | 54 | 2011-06-28T15:20:28Z | 2022-06-10T18:17:55Z |
go-excel | A simple and light excel file reader to read a standard excel as a table faster 一个轻量级的Excel数据读取库,用一种更关系数据库 的方式解析Excel。 |
153 | 30 | 2 | 2017-09-03T11:51:58Z | 2022-04-28T00:15:08Z |
xlsx | Fast and reliable way to work with Microsoft Excel™ [xlsx] files in Golang | 152 | 22 | 10 | 2017-08-26T23:11:38Z | 2020-11-04T15:00:26Z |
[ARCHIVED] goxlsxwriter | Golang bindings for libxlsxwriter for writing XLSX files | 18 | 6 | 0 | 2017-03-13T04:15:17Z | 2022-06-10T07:38:30Z |
exl | Excel binding to struct written in Go.(Only supports Go1.18+) | 10 | 1 | 1 | 2022-04-19T06:04:31Z | 2022-06-24T09:24:36Z |
Dependency Injection
Libraries for working with dependency injection.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
wire | Compile-time Dependency Injection for Go | 8931 | 487 | 86 | 2018-11-28T17:34:51Z | 2022-08-24T14:24:04Z |
fx | A dependency injection based application framework for Go. | 3032 | 196 | 37 | 2016-10-27T00:25:00Z | 2022-08-25T17:40:19Z |
dig | A reflection based dependency injection toolkit for Go. | 2708 | 178 | 22 | 2017-03-21T23:55:50Z | 2022-08-16T22:34:23Z |
do | ⚙️ A dependency injection toolkit based on Go 1.18+ Generics. | 496 | 14 | 4 | 2022-05-17T22:10:38Z | 2022-08-06T23:51:11Z |
container | A lightweight yet powerful IoC dependency injection container for the Go programming language | 375 | 25 | 0 | 2019-09-23T16:12:50Z | 2022-08-25T18:02:47Z |
di | Simple and yet powerful Dependency Injection for Go | 200 | 9 | 0 | 2020-06-11T12:28:06Z | 2022-08-16T12:39:51Z |
di | 🛠 A full-featured dependency injection container for go programming language. | 156 | 9 | 1 | 2020-02-03T19:06:39Z | 2021-11-30T00:02:18Z |
dingo | Go Dependency Injection Framework | 136 | 8 | 18 | 2018-10-29T08:55:18Z | 2022-08-02T19:45:41Z |
alice | An additive dependency injection container for Golang. | 46 | 4 | 0 | 2017-04-08T16:25:21Z | 2017-04-26T06:08:23Z |
wire | Strict Runtime Dependency Injection for Golang | 35 | 8 | 1 | 2018-07-05T10:42:24Z | 2021-08-22T07:00:18Z |
linker | Dependency Injection and Inversion of Control package | 35 | 6 | 0 | 2018-12-04T23:56:34Z | 2020-06-25T19:18:10Z |
nject | Golang type-safe dependency injection | 18 | 1 | 0 | 2021-09-15T03:48:32Z | 2022-08-07T06:14:14Z |
gocontainer | Simple Dependency Injection Container | 16 | 2 | 0 | 2019-06-06T08:18:07Z | 2020-03-23T09:12:06Z |
kinit | GO Dependency Injection | 8 | 1 | 0 | 2021-01-24T13:41:41Z | 2021-06-12T14:27:19Z |
di | DI container library that is focused on clean API and flexibility. | 4 | 4 | 0 | 2021-10-13T07:09:09Z | 2022-06-29T13:11:35Z |
Project Layout
Unofficial set of patterns for structuring projects.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
project-layout | Standard Go Project Layout | 34091 | 3839 | 92 | 2017-09-09T16:33:26Z | 2022-08-16T02:25:58Z |
service | Starter code for writing web services in Go using Kubernetes. | 2439 | 456 | 0 | 2017-11-20T14:51:17Z | 2022-08-24T15:06:55Z |
modern-go-application | Modern Go Application example | 1307 | 127 | 18 | 2018-09-14T12:19:02Z | 2021-12-24T02:49:26Z |
cookiecutter-golang | A Go project template | 542 | 145 | 2 | 2016-12-18T18:22:26Z | 2022-06-09T23:52:42Z |
pagoda | Rapid, easy full-stack web development starter kit in Go | 399 | 19 | 2 | 2021-12-03T11:04:30Z | 2022-07-08T13:59:14Z |
seed | Go application GitHub repository template. | 282 | 33 | 2 | 2020-04-30T21:31:36Z | 2022-08-08T06:06:00Z |
go-starter | An opinionated production-ready SQL-/Swagger-first RESTful JSON API written in Go, highly integrated with VSCode DevContainers by allaboutapps. | 177 | 28 | 11 | 2020-05-08T14:22:49Z | 2022-08-24T04:04:28Z |
go-todo-backend | Go Todo Backend example using modular project layout for product microservice. | 166 | 20 | 1 | 2020-06-25T14:28:50Z | 2022-08-25T04:15:20Z |
scaffold | Generate scaffold project layout for Go. | 117 | 25 | 2 | 2018-12-11T10:36:03Z | 2019-01-10T04:00:20Z |
go-sample | Go Project Sample Layout | 106 | 25 | 0 | 2019-01-24T23:41:46Z | 2019-01-24T23:54:54Z |
gobase | This is a simple skeleton for golang applications | 30 | 4 | 0 | 2020-12-15T16:54:20Z | 2022-07-26T20:50:31Z |
go-project-layout | My understanding of how to structure a golang project. | 17 | 2 | 0 | 2019-10-06T12:59:24Z | 2021-05-16T01:32:02Z |
inizio | Golang project standard layout generator | 11 | 1 | 0 | 2021-03-02T20:59:22Z | 2022-06-20T12:40:14Z |
Strings
Libraries for working with strings.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
xstrings | Implements string functions widely used in other languages but absent in Go. | 1067 | 66 | 0 | 2015-01-06T07:25:26Z | 2021-12-21T04:03:08Z |
sttr | cross-platform, cli app to perform various operations on string | 413 | 22 | 1 | 2021-09-18T14:00:40Z | 2022-06-22T18:30:36Z |
strutil | String utilities for Go | 180 | 22 | 1 | 2018-08-16T06:56:15Z | 2022-05-25T07:15:27Z |
stringy | Convert string to camel case, snake case, kebab case / slugify, custom delimiter, pad string, tease string and many other functionalities with help of by Stringy package. | 140 | 12 | 3 | 2020-04-03T03:34:10Z | 2022-08-10T03:10:48Z |
bexp | Go implementation of Brace Expansion mechanism to generate arbitrary strings. | 9 | 0 | 0 | 2020-12-15T17:11:43Z | 2022-07-09T00:23:01Z |
go-formatter | Implements replacement fields surrounded by curly braces {} format strings. | - | - | - | - | - |
Uncategorized
These libraries were placed here because none of the other categories seemed to fit.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gopsutil | psutil for golang | 8105 | 1336 | 145 | 2014-04-18T07:35:28Z | 2022-08-25T13:12:33Z |
archiver | Easily create & extract archives, and compress & decompress files of various formats | 3661 | 337 | 7 | 2016-04-08T22:46:55Z | 2022-08-18T23:57:52Z |
gatus | ⛑ Gatus - Automated service health dashboard | 2792 | 190 | 53 | 2019-09-04T02:35:40Z | 2022-08-24T01:39:08Z |
gofakeit | Random fake data generator written in go | 2591 | 152 | 5 | 2015-04-24T04:45:59Z | 2022-08-20T03:25:47Z |
go-resiliency | Resiliency patterns for golang | 1570 | 120 | 1 | 2014-11-29T04:11:32Z | 2022-06-28T01:14:03Z |
base64Captcha | captcha of base64 image string | 1554 | 234 | 12 | 2017-12-12T12:17:07Z | 2022-07-01T05:58:08Z |
gosms | 📪 Your own local SMS gateway in Go | 1392 | 147 | 6 | 2015-01-23T19:25:55Z | 2021-02-05T19:15:02Z |
go-commons-pool | a generic object pool for golang | 1062 | 139 | 3 | 2015-12-28T14:26:23Z | 2022-07-01T02:09:54Z |
llvm | Library for interacting with LLVM IR in pure Go. | 941 | 64 | 16 | 2014-09-19T11:18:44Z | 2022-08-03T13:38:05Z |
shortid | Super short, fully unique, non-sequential and URL friendly Ids | 791 | 62 | 1 | 2016-01-04T01:17:10Z | 2022-06-17T16:11:02Z |
health | A simple and flexible health check library for Go. | 522 | 17 | 5 | 2021-07-02T11:27:34Z | 2022-08-17T02:14:49Z |
stateless | Go library for creating finite state machines | 474 | 29 | 6 | 2019-09-11T08:19:18Z | 2022-07-24T18:40:56Z |
health | An easy to use, extensible health check library for Go applications. | 434 | 45 | 3 | 2016-03-08T23:04:43Z | 2022-07-24T20:48:20Z |
shoutrrr | Notification library for gophers and their furry friends. | 417 | 42 | 23 | 2019-04-11T06:49:34Z | 2022-07-30T10:21:32Z |
banner | An easy way to add useful startup banners into your Go applications | 404 | 23 | 0 | 2016-03-25T21:28:44Z | 2021-01-04T09:25:38Z |
xz | Pure golang package for reading and writing xz-compressed files | 385 | 32 | 14 | 2014-08-15T19:41:21Z | 2022-08-02T10:58:32Z |
go-conv | Fast conversions across various Go types with a simple API. | 382 | 18 | 0 | 2016-10-11T07:41:41Z | 2021-08-23T21:52:24Z |
gountries | Gountries provides: Countries (ISO-3166-1), Country Subdivisions(ISO-3166-2), Currencies (ISO 4217), Geo Coordinates(ISO-6709) as well as translations, country borders and other stuff exposed as struct data. | 353 | 63 | 13 | 2016-01-13T08:04:18Z | 2022-08-12T12:16:42Z |
ffmt | Golang beautify data display for Humans | 276 | 20 | 2 | 2015-02-14T15:19:45Z | 2021-11-19T15:22:56Z |
lk | Simple licensing library for golang. | 252 | 41 | 1 | 2016-07-14T16:06:07Z | 2020-05-04T06:08:01Z |
antch | Antch, a fast, powerful and extensible web crawling & scraping framework for Go | 234 | 41 | 4 | 2017-09-28T05:44:17Z | 2020-05-31T15:12:21Z |
healthcheck | An simple, easily extensible and concurrent health-check library for Go services | 226 | 30 | 1 | 2017-08-18T12:48:40Z | 2021-06-17T16:33:44Z |
battery | cross-platform, normalized battery information library | 208 | 29 | 7 | 2016-03-12T23:03:40Z | 2022-01-15T13:52:54Z |
go-unarr | Go bindings for unarr (decompression library for RAR, TAR, ZIP and 7z archives) | 197 | 33 | 3 | 2015-11-01T09:38:37Z | 2022-08-25T12:40:39Z |
bitio | Optimized bit-level Reader and Writer for Go. | 194 | 25 | 1 | 2016-05-31T10:02:30Z | 2022-08-12T13:34:07Z |
stats | 📈 Monitors Go MemStats + System stats such as Memory, Swap and CPU and sends via UDP anywhere you want for logging etc... | 162 | 20 | 1 | 2015-09-14T20:20:20Z | 2016-09-07T12:51:16Z |
turtle | Emojis for Go 😄🐢🚀 | 136 | 11 | 2 | 2017-09-08T22:25:32Z | 2021-10-04T08:23:47Z |
captcha | 😎Package captcha provides an easy to use, unopinionated API for captcha generation | 114 | 20 | 0 | 2017-09-12T06:52:15Z | 2022-06-27T05:00:41Z |
gommit | Enforce git message commit consistency | 96 | 3 | 1 | 2016-08-30T11:10:11Z | 2022-07-20T06:03:26Z |
indigo | A distributed unique ID generator of using Sonyflake and encoded by Base58 | 95 | 12 | 0 | 2016-08-31T14:17:45Z | 2022-05-04T05:37:01Z |
gotoprom | Type-safe Prometheus metrics builder library for golang | 93 | 2 | 0 | 2018-10-10T16:07:33Z | 2020-01-29T09:07:33Z |
morse | Morse Code Library in Go | 75 | 12 | 5 | 2018-08-15T05:31:31Z | 2022-02-23T12:04:39Z |
persian | Some utilities for Persian language in Go (Golang) | 65 | 9 | 1 | 2017-10-16T16:16:56Z | 2021-06-17T05:22:01Z |
gtree | Output tree🌳 or Make directories(files)📁 from Markdown or Programmatically. Provide CLI, Go Packages and Web(WebAssembly). | 65 | 5 | 4 | 2021-05-30T01:51:22Z | 2022-08-25T17:02:37Z |
faker | Random fake data and struct generator for Go. | 63 | 5 | 0 | 2020-07-22T20:09:46Z | 2022-04-05T10:06:06Z |
pdfgen | HTTP service to generate PDF from Json requests | 57 | 8 | 0 | 2015-11-30T19:27:26Z | 2018-02-19T15:49:42Z |
xkg | User level X Keyboard Grabber | 53 | 6 | 1 | 2015-01-05T01:04:43Z | 2015-01-08T04:01:03Z |
browscap_go | GoLang Library for Browser Capabilities Project | 42 | 28 | 9 | 2014-09-18T04:47:42Z | 2022-06-13T14:05:16Z |
datacounter | Golang counters for readers/writers | 40 | 8 | 2 | 2015-10-14T19:15:50Z | 2022-07-03T21:09:36Z |
url-shortener | A golang URL Shortener | 37 | 7 | 0 | 2018-06-04T05:57:45Z | 2018-06-09T14:39:44Z |
sandid | Every grain of sand on Earth has its own ID. | 37 | 7 | 0 | 2018-06-12T01:24:14Z | 2022-08-04T09:10:51Z |
autoflags | Populate go command line app flags from config struct | 36 | 4 | 0 | 2014-05-15T19:00:29Z | 2022-06-11T19:21:34Z |
gosh | Provide Go Statistics Handler, Struct, Measure Method | 29 | 2 | 0 | 2018-05-25T08:55:55Z | 2022-05-04T07:00:29Z |
xdg | FreeDesktop.org (xdg) Specs implemented in Go | 28 | 8 | 1 | 2013-12-15T09:51:51Z | 2022-04-26T02:05:26Z |
metrics | atomic measures + Prometheus exposition library | 22 | 4 | 3 | 2019-01-29T09:39:18Z | 2022-06-14T23:35:06Z |
shellwords | A Golang library to manipulate strings according to the word parsing rules of the UNIX Bourne shell. | 17 | 3 | 0 | 2017-09-28T09:08:28Z | 2022-03-15T08:24:38Z |
anagent | Minimalistic, pluggable Golang evloop/timer handler with dependency-injection | 14 | 4 | 0 | 2017-12-29T17:16:25Z | 2018-08-12T17:51:33Z |
hostutils | A golang library for packing and unpacking hosts list | 11 | 5 | 0 | 2017-09-26T03:47:32Z | 2022-01-24T01:07:28Z |
avgRating | Calculate average score and rating based on Wilson Score Equation | 11 | 3 | 0 | 2017-08-05T19:04:30Z | 2017-08-05T19:37:44Z |
numa | NUMA is a utility library, which is written in go. It help us to write some NUMA-AWARED code. | 10 | 4 | 0 | 2018-12-10T09:59:13Z | 2022-03-25T15:25:38Z |
openapi | OpenAPI 3.x parser | 7 | 3 | 3 | 2022-01-23T09:49:54Z | 2022-06-29T22:38:28Z |
faker | Fake data generator | 7 | 1 | 0 | 2022-01-23T09:50:26Z | 2022-07-21T15:36:15Z |
go-commandbus | Simple command bus for GO | 5 | 3 | 0 | 2019-10-03T20:08:22Z | 2022-01-26T15:20:42Z |
generators | #golang generator | 4 | 2 | 0 | 2016-02-29T14:29:02Z | 2016-12-30T13:41:30Z |
varint | variable length integer encoding using prefix code | 2 | 1 | 0 | 2021-11-30T11:29:34Z | 2021-12-15T08:40:15Z |
basexx | Convert digit strings between arbitrary bases. | 2 | 0 | 0 | 2019-06-08T17:46:13Z | 2021-10-02T14:57:12Z |
go-openapi | Collection of packages to parse and utilize open-api schemas. | - | - | - | - | - |
Language Detection
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
whatlanggo | Natural language detection library for Go | 549 | 54 | 11 | 2017-02-20T17:32:01Z | 2021-01-15T09:31:00Z |
getlang | Natural language detection package in pure Go | 138 | 20 | 4 | 2018-03-01T21:27:30Z | 2020-12-27T07:47:21Z |
guesslanguage | Guess the natural language of a text in Go | 55 | 5 | 1 | 2014-12-16T10:58:47Z | 2017-11-08T02:01:01Z |
detectlanguage-go | Detect Language API Go Client | 15 | 2 | 0 | 2019-12-14T23:30:44Z | 2022-04-30T15:03:20Z |
Morphological Analyzers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
spago | Self-contained Machine Learning and Natural Language Processing library in Go | 1222 | 69 | 11 | 2020-01-05T20:39:29Z | 2022-08-01T11:49:22Z |
kagome | Self-contained Japanese Morphological Analyzer written in pure Go | 665 | 45 | 3 | 2014-06-26T04:38:13Z | 2022-08-24T00:30:31Z |
nlp | [UNMANTEINED] Extract values from strings and fill your structs with nlp. | 379 | 34 | 3 | 2017-01-25T07:19:03Z | 2017-09-18T14:32:30Z |
nlp | Selected Machine Learning algorithms for natural language processing and semantic analysis in Golang | 373 | 44 | 4 | 2017-03-15T08:28:05Z | 2021-05-11T12:03:06Z |
RAKE.Go | A Go port of the Rapid Automatic Keyword Extraction algorithm (RAKE) | 94 | 18 | 4 | 2016-12-17T13:36:25Z | 2020-02-27T08:40:40Z |
go-stem | Word Stemming in Go | 68 | 16 | 1 | 2011-09-23T19:07:23Z | 2018-06-16T22:48:56Z |
go2vec | Read and use word2vec vectors in Go | 48 | 6 | 0 | 2015-01-27T12:02:04Z | 2018-08-30T05:34:08Z |
porter2 | High Performance Porter2 Stemmer | 45 | 7 | 1 | 2015-01-21T07:30:32Z | 2020-10-07T17:10:59Z |
snowball | Cgo binding for Snowball C library | 32 | 5 | 0 | 2012-12-11T12:42:19Z | 2017-06-27T08:13:41Z |
paicehusk | Golang implementation of the Paice/Husk Stemming Algorithm | 28 | 7 | 2 | 2012-09-29T16:06:58Z | 2013-12-16T12:45:11Z |
govader | vader sentiment analysis in go | 25 | 6 | 1 | 2020-01-19T10:06:15Z | 2022-04-08T02:28:59Z |
golibstemmer | Go bindings for the snowball libstemmer library including porter 2 | 19 | 6 | 0 | 2012-08-06T19:31:05Z | 2014-06-17T16:04:56Z |
libtextcat | Cgo binding for libtextcat C library | 11 | 8 | 0 | 2012-12-10T21:21:47Z | 2012-12-27T17:23:35Z |
porter | porter stemmer | 9 | 2 | 0 | 2013-09-17T11:10:16Z | 2013-10-03T11:10:18Z |
gosentiwordnet | 💬 Sentiment analyzer library using SentiWordnet in Go | 8 | 2 | 0 | 2020-04-21T09:09:28Z | 2021-03-11T05:01:50Z |
govader_backend | Sentimental Analysis Microservice | 2 | 0 | 0 | 2022-04-05T22:59:13Z | 2022-04-11T10:43:12Z |
spellingcorrector | Spelling corrector for Spanish language | 0 | 0 | 0 | 2022-03-14T16:38:32Z | 2022-03-23T10:33:20Z |
Slugifiers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
slug | URL-friendly slugify with multiple languages support. | 850 | 86 | 13 | 2014-03-31T06:24:51Z | 2022-08-23T05:48:57Z |
go-slugify | Pretty Slug. | 81 | 6 | 1 | 2016-07-16T11:55:15Z | 2020-05-13T18:54:09Z |
slugify | A Go slugify application that handles string | 31 | 4 | 0 | 2015-04-13T01:54:30Z | 2018-05-01T14:59:21Z |
Tokenizers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
[ARCHIVED] prose | 📖 A Golang library for text processing, including tokenization, part-of-speech tagging, and named-entity extraction. | 2943 | 147 | 20 | 2017-02-17T17:08:22Z | 2022-05-17T11:03:05Z |
gse | Go efficient multilingual NLP and text segmentation; support English, Chinese, Japanese and others. | 1991 | 176 | 6 | 2017-06-23T15:42:35Z | 2022-05-19T06:37:32Z |
gojieba | "结巴"中文分词的Golang版本 | 1940 | 270 | 57 | 2015-09-12T01:30:44Z | 2022-08-24T07:06:23Z |
sentences | A multilingual command line sentence tokenizer in Golang | 327 | 31 | 3 | 2015-08-07T01:08:20Z | 2022-08-10T19:09:50Z |
segment | A Go library for performing Unicode Text Segmentation as described in Unicode Standard Annex #29 | 70 | 16 | 5 | 2014-10-16T19:24:26Z | 2021-01-13T19:12:27Z |
textcat | A Go package for n-gram based text categorization, with support for utf-8 and raw text | 67 | 10 | 1 | 2012-09-21T15:04:45Z | 2021-02-20T13:40:48Z |
MMSEGO | Chinese word splitting algorithm MMSEG in GO | 61 | 15 | 0 | 2012-04-18T04:06:21Z | 2012-04-18T04:18:51Z |
stemmer | Stemmer packages for Go programming language. Includes English, German and Dutch stemmers. | 51 | 6 | 0 | 2011-03-21T02:08:12Z | 2016-12-07T10:24:03Z |
gotokenizer | A tokenizer based on the dictionary and Bigram language models for Go. (Now only support chinese segmentation) | 14 | 7 | 0 | 2018-10-11T03:22:36Z | 2019-04-10T09:39:09Z |
shamoji | The shamoji (杓文字) is a word filtering package | 12 | 2 | 0 | 2017-07-23T06:38:42Z | 2022-05-04T07:58:17Z |
Translation
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-i18n | Translate your Go program into multiple languages. | 2117 | 207 | 12 | 2012-01-14T21:44:37Z | 2022-06-29T17:52:30Z |
go-pinyin | 汉字转拼音 | 1227 | 172 | 10 | 2014-11-09T14:04:33Z | 2022-03-06T14:06:53Z |
gotext | Go (Golang) GNU gettext utilities package | 349 | 43 | 6 | 2016-06-19T20:14:43Z | 2022-06-08T19:58:45Z |
go-localize | i18n (Internationalization and localization) engine written in Go, used for translating locale strings. | 41 | 10 | 1 | 2019-12-23T12:02:51Z | 2021-10-29T18:23:38Z |
iuliia-go | Transliterate Cyrillic → Latin in every possible way | 30 | 5 | 0 | 2020-04-27T09:29:40Z | 2021-06-15T16:27:22Z |
mystem | CGo bindings to Yandex.Mystem | 28 | 8 | 0 | 2016-08-30T14:55:39Z | 2016-10-05T05:53:17Z |
icu | Cgo binding for icu4c library | 20 | 7 | 2 | 2012-12-11T13:09:41Z | 2017-03-29T16:17:26Z |
t | t: translation util for go, using GNU gettext | 11 | 3 | 0 | 2021-06-04T07:22:41Z | 2021-10-29T02:26:36Z |
spreak | Flexible translation and humanization library for Go, based on the concepts behind gettext. | 7 | 0 | 1 | 2022-05-08T20:09:34Z | 2022-06-27T11:44:37Z |
Transliteration
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-unidecode | ASCII transliterations of Unicode text. | 95 | 17 | 2 | 2016-07-08T13:15:10Z | 2022-08-20T07:57:20Z |
gounidecode | Unicode transliterator for #golang | 75 | 21 | 2 | 2012-05-01T11:59:34Z | 2015-09-23T21:17:29Z |
transliterator | Golang text Transliterator (i.e München -> Muenchen) | 24 | 8 | 1 | 2020-04-17T14:19:55Z | 2020-05-08T16:48:36Z |
enca | Minimal cgo bindings for libenca | 11 | 5 | 0 | 2014-12-17T04:55:16Z | 2016-03-15T07:18:17Z |
Networking
Libraries for working with various layers of the network.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
fasthttp | Fast HTTP package for Go. Tuned for high performance. Zero memory allocations in hot paths. Up to 10x faster than net/http | 18281 | 1531 | 48 | 2015-10-18T22:19:57Z | 2022-08-23T14:44:59Z |
kcptun | A Stable & Secure Tunnel based on KCP with N:M multiplexing and FEC. Available for ARM, MIPS, 386 and AMD64。KCPプロトコルに基づく安全なトンネル。KCP 프로토콜을 기반으로 하는 보안 터널입니다。 | 12989 | 2498 | 89 | 2016-02-26T09:54:46Z | 2022-06-29T02:14:21Z |
webrtc | Pure Go implementation of the WebRTC API | 9770 | 1259 | 83 | 2018-05-18T23:10:05Z | 2022-08-24T09:04:38Z |
quic-go | A QUIC implementation in pure go | 7169 | 972 | 123 | 2016-04-06T20:16:27Z | 2022-08-25T14:39:13Z |
gnet | 🚀 gnet is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go./ gnet 是一个高性能、轻量级、非阻塞的事件驱动 Go 网络框架。 | 6849 | 802 | 41 | 2019-02-24T03:48:45Z | 2022-08-09T15:39:50Z |
dns | DNS library in Go | 6471 | 1012 | 9 | 2010-08-03T21:56:23Z | 2022-08-03T12:02:36Z |
gopacket | Provides packet processing capabilities for Go | 5038 | 957 | 283 | 2015-03-16T20:46:00Z | 2022-08-21T10:25:06Z |
httplab | The interactive web server | 3836 | 125 | 12 | 2017-02-08T17:13:19Z | 2019-06-05T15:10:46Z |
kcp-go | A Crypto-Secure, Production-Grade Reliable-UDP Library for golang with FEC | 3413 | 634 | 36 | 2015-06-16T06:15:55Z | 2022-08-01T07:38:06Z |
netpoll | A high-performance non-blocking I/O networking framework, which focused on RPC scenarios, developed by ByteDance. | 2993 | 321 | 32 | 2021-02-25T07:24:02Z | 2022-08-25T08:16:43Z |
gobgp | BGP implemented in the Go Programming Language | 2959 | 588 | 105 | 2014-09-14T01:51:58Z | 2022-08-05T12:49:28Z |
ssh | Easy SSH servers in Golang | 2674 | 339 | 36 | 2016-10-03T21:53:44Z | 2022-05-09T19:28:43Z |
fortio | Fortio load testing library, command line tool, advanced echo server and web UI in go (golang). Allows to specify a set query-per-second load and record latency histograms and other useful stats. | 2645 | 208 | 78 | 2017-10-10T01:01:39Z | 2022-08-24T13:35:27Z |
paho.mqtt.golang | 2040 | 472 | 24 | 2016-02-03T19:03:35Z | 2022-08-10T04:37:31Z | |
water | A simple TUN/TAP library written in native Go. | 1497 | 231 | 23 | 2013-03-25T20:06:52Z | 2022-01-26T02:19:56Z |
gev | 🚀Gev is a lightweight, fast non-blocking TCP network library / websocket server based on Reactor mode. Support custom protocols to quickly and easily build high-performance servers. | 1466 | 183 | 7 | 2019-09-01T12:16:18Z | 2022-04-22T01:58:06Z |
go-getter | Package for downloading things from a string URL using a variety of protocols. | 1386 | 177 | 114 | 2015-10-12T23:17:07Z | 2022-08-03T16:46:26Z |
nff-go | NFF-Go -Network Function Framework for GO (former YANFF) | 1237 | 145 | 66 | 2017-03-29T17:07:29Z | 2021-09-07T16:07:05Z |
sftp | SFTP support for the go.crypto/ssh package | 1202 | 339 | 29 | 2013-11-05T04:36:00Z | 2022-07-16T07:56:14Z |
grab | A download manager package for Go | 1091 | 126 | 27 | 2016-01-05T12:46:35Z | 2022-01-08T02:47:17Z |
ftp | FTP client package for Go | 977 | 321 | 12 | 2011-05-06T18:31:51Z | 2022-08-21T21:25:29Z |
mdns | Simple mDNS client/server library in Golang | 898 | 195 | 33 | 2014-01-29T19:39:18Z | 2022-01-03T18:31:30Z |
gosnmp | An SNMP library written in Go | 885 | 285 | 37 | 2012-08-27T05:59:24Z | 2022-08-10T05:34:17Z |
vssh | Go Library to Execute Commands Over SSH at Scale | 860 | 70 | 2 | 2020-06-09T16:19:22Z | 2020-11-22T02:34:52Z |
nbio | 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. | 758 | 71 | 4 | 2020-01-25T11:46:54Z | 2022-08-23T08:05:48Z |
cidranger | Fast IP to CIDR lookup in Golang | 736 | 86 | 6 | 2017-08-21T05:50:14Z | 2022-01-21T13:06:29Z |
gmqtt | Gmqtt is a flexible, high-performance MQTT broker library that fully implements the MQTT protocol V3.x and V5 in golang | 720 | 149 | 5 | 2018-09-16T11:46:17Z | 2022-08-01T13:26:21Z |
lhttp | go websocket, a better way to buid your IM server | 675 | 144 | 6 | 2015-12-29T01:13:36Z | 2018-04-08T08:06:09Z |
peerdiscovery | Pure-Go library for cross-platform local peer discovery using UDP multicast 👩 🔁 👩 | 556 | 46 | 8 | 2018-04-22T23:59:37Z | 2022-07-07T17:33:26Z |
go-stun | A go implementation of the STUN client (RFC 3489 and RFC 5389) | 517 | 95 | 2 | 2013-08-17T22:16:33Z | 2022-04-19T04:23:30Z |
gotcp | A Go package for quickly building tcp servers | 495 | 159 | 0 | 2014-04-13T14:54:01Z | 2017-04-18T07:26:13Z |
[ARCHIVED] stun | Fast RFC 5389 STUN implementation in go | 487 | 53 | 4 | 2016-04-24T17:46:38Z | 2021-05-17T05:47:09Z |
easytcp | ✨ 🚀 EasyTCP is 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. | 455 | 30 | 1 | 2021-04-26T10:11:59Z | 2022-08-19T01:09:04Z |
gaio | High performance async-io(proactor) networking for Golang。golangのための高性能非同期io(proactor)ネットワーキング | 453 | 59 | 16 | 2019-12-20T05:19:00Z | 2022-03-17T10:05:09Z |
gopcap | A simple wrapper around libpcap for the Go programming language | 449 | 147 | 12 | 2009-11-19T10:13:48Z | 2021-05-17T13:59:53Z |
[ARCHIVED] raw | Package raw enables reading and writing data at the device driver level for a network interface. MIT Licensed. | 423 | 76 | 16 | 2015-07-06T16:11:47Z | 2022-02-21T18:18:33Z |
tcp_server | golang tcp server | 417 | 145 | 4 | 2014-10-13T20:38:42Z | 2021-11-10T09:30:31Z |
winrm | Command-line tool and library for Windows remote command execution in Go | 374 | 100 | 28 | 2013-12-30T18:29:15Z | 2022-06-13T07:22:30Z |
ftpserverlib | golang ftp server library | 324 | 74 | 2 | 2016-09-25T12:05:29Z | 2022-08-24T01:04:17Z |
arp | Package arp implements the ARP protocol, as described in RFC 826. MIT Licensed. | 292 | 51 | 4 | 2015-07-06T18:50:34Z | 2022-08-08T00:31:54Z |
buffstreams | A library to simplify writing applications using TCP sockets to stream protobuff messages | 249 | 35 | 7 | 2015-06-29T19:07:31Z | 2020-08-14T20:02:54Z |
ethernet | Package ethernet implements marshaling and unmarshaling of IEEE 802.3 Ethernet II frames and IEEE 802.1Q VLAN tags. MIT Licensed. | 243 | 38 | 0 | 2015-07-03T00:15:18Z | 2022-02-21T18:58:49Z |
gnxi | gNXI Tools - gRPC Network Management/Operations Interface Tools | 219 | 106 | 15 | 2017-09-26T08:19:41Z | 2022-08-20T17:58:07Z |
dnsmonster | Passive DNS Capture and Monitoring Toolkit | 208 | 30 | 4 | 2020-02-09T01:10:39Z | 2022-08-16T11:08:48Z |
jazigo | Jazigo is a tool written in Go for retrieving configuration for multiple devices, similar to rancid, fetchconfig, oxidized, Sweet. | 182 | 21 | 3 | 2016-06-07T19:53:53Z | 2019-09-17T18:31:17Z |
utp | Use anacrolix/go-libutp instead | 162 | 35 | 4 | 2015-03-20T04:39:22Z | 2021-01-29T09:58:07Z |
canopus | CoAP Client/Server implementing RFC 7252 for the Go Language | 148 | 40 | 43 | 2015-02-24T04:12:20Z | 2018-03-25T17:28:53Z |
sslb | Golang Super Simple Load Balance | 141 | 28 | 10 | 2015-10-18T21:31:09Z | 2019-09-24T22:03:37Z |
xtcp | A TCP Server Framework with graceful shutdown, custom protocol. | 136 | 30 | 0 | 2016-03-31T16:50:14Z | 2020-02-29T18:57:41Z |
iplib | A library for working with IP addresses and networks in Go | 89 | 16 | 0 | 2019-05-06T06:23:41Z | 2021-11-02T05:39:49Z |
ether | A Go package for sending and receiving ethernet frames. Currently supporting Linux, Freebsd, and OS X. | 77 | 7 | 0 | 2014-05-21T03:46:30Z | 2016-04-05T03:04:14Z |
dhcp6 | Package dhcp6 implements a DHCPv6 server, as described in RFC 3315. MIT Licensed. | 75 | 18 | 2 | 2015-05-22T04:13:30Z | 2019-03-11T16:24:02Z |
packet | 📦 Send network packets over a TCP or UDP connection. | 73 | 15 | 1 | 2017-10-29T05:46:44Z | 2019-11-20T22:35:38Z |
gldap | Build LDAP services w/ Go | 72 | 1 | 1 | 2022-01-11T23:57:45Z | 2022-06-01T13:18:36Z |
go-powerdns | Go PowerDNS 4.x API Client | 60 | 17 | 0 | 2018-06-21T21:37:33Z | 2022-08-21T08:58:37Z |
linkio | Simulate network link speed | 52 | 7 | 0 | 2014-12-24T10:50:03Z | 2017-08-07T20:57:56Z |
portproxy | TCP proxy, highjacks HTTP to allow CORS | 50 | 13 | 0 | 2014-12-13T02:57:36Z | 2014-12-13T03:05:07Z |
panoptes-stream | A cloud native distributed streaming network telemetry. | 36 | 7 | 1 | 2020-10-09T04:26:26Z | 2021-03-04T03:28:51Z |
fullproxy | Proxy toolkit including SOCKS5, HTTP, port forward and reverse base proxying | 31 | 5 | 0 | 2020-07-28T18:53:26Z | 2022-08-24T19:33:38Z |
graval | An experimental go FTP server framework | 27 | 8 | 0 | 2014-04-22T19:17:18Z | 2020-10-02T13:42:14Z |
publicip | Go pkg for returning your public facing IP address. | 25 | 8 | 0 | 2016-12-28T19:31:07Z | 2016-12-29T04:30:29Z |
golibwireshark | 25 | 8 | 0 | 2015-11-16T06:48:41Z | 2017-10-24T11:56:01Z | |
gohooks | GoHooks make it easy to send and consume secured web-hooks from a Go application | 18 | 4 | 0 | 2020-10-30T17:20:36Z | 2022-08-11T08:05:35Z |
httpproxy | HTTP proxy handler and dialer | 15 | 5 | 0 | 2018-07-18T09:42:34Z | 2021-11-13T08:25:28Z |
goshark | 14 | 5 | 0 | 2015-11-01T07:23:09Z | 2017-10-24T11:36:13Z | |
tspool | tcp server pool | 13 | 3 | 0 | 2018-10-27T01:05:03Z | 2018-10-29T01:55:10Z |
llb | 12 | 3 | 0 | 2016-02-21T06:30:17Z | 2016-04-04T04:13:06Z |
HTTP Clients
Libraries for making HTTP requests.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
resty | Simple HTTP and REST client library for Go | 6559 | 524 | 81 | 2015-08-28T17:48:47Z | 2022-08-24T08:47:09Z |
req | Simple Go HTTP client with Black Magic | 2606 | 243 | 1 | 2017-02-25T16:32:26Z | 2022-08-24T13:29:03Z |
heimdall | An enhanced HTTP client for Go | 2312 | 195 | 46 | 2018-01-19T09:32:26Z | 2022-08-14T15:13:57Z |
grequests | A Go "clone" of the great and famous Requests library | 1898 | 123 | 31 | 2015-06-11T16:41:48Z | 2020-12-03T02:31:16Z |
sling | A Go HTTP client library for creating and sending API requests | 1471 | 107 | 1 | 2015-04-02T08:42:52Z | 2022-08-11T16:06:28Z |
go-retryablehttp | Retryable HTTP client in Go | 1285 | 186 | 44 | 2015-12-07T16:46:24Z | 2022-08-01T14:40:53Z |
gentleman | Plugin-driven, extensible HTTP client toolkit for Go | 963 | 54 | 20 | 2016-02-21T23:00:24Z | 2021-02-18T19:34:43Z |
pester | Go (golang) http calls with retries and backoff | 596 | 69 | 4 | 2015-05-20T13:50:49Z | 2022-02-09T15:16:28Z |
requests | HTTP requests for Gophers | 403 | 16 | 0 | 2021-05-20T19:20:29Z | 2022-06-03T18:14:53Z |
go-cleanhttp | 256 | 32 | 2 | 2015-10-22T18:07:48Z | 2022-08-19T19:49:08Z | |
request | go request, go http client | 210 | 25 | 0 | 2020-03-25T06:24:18Z | 2021-12-28T03:28:07Z |
go-otelroundtripper | Go http.RoundTripper that emits open telemetry metrics. This helps you easily get metrics for all external APIs you interact with. | 60 | 2 | 0 | 2021-11-20T14:09:18Z | 2022-04-06T16:58:29Z |
go-http-client | An enhanced http client for Golang | 42 | 11 | 0 | 2019-12-14T11:22:19Z | 2021-05-02T18:35:32Z |
rq | A nicer interface for golang stdlib HTTP client | 40 | 5 | 1 | 2017-12-26T10:48:27Z | 2019-08-28T17:45:31Z |
httpretry | Enriches the standard go http client with retry functionality. | 22 | 4 | 0 | 2020-02-05T10:17:42Z | 2020-02-14T08:20:21Z |
go-req | Declarative golang HTTP client | 15 | 2 | 0 | 2021-07-11T10:42:40Z | 2022-07-06T11:07:02Z |
[ARCHIVED] httpc | A customizable and simple HTTP client library. Only depend on the stdlib HTTP client. | 4 | 1 | 0 | 2021-08-11T12:26:27Z | 2021-11-22T04:21:25Z |
fetch | Go Fetch - A Powerful, Lightweight, Easy Http Client, inspired by Web Fetch API | 3 | 1 | 1 | 2022-03-15T17:55:35Z | 2022-08-24T06:03:54Z |
OpenGL
Libraries for using OpenGL in Go.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
glfw | Go bindings for GLFW 3 | 1300 | 158 | 16 | 2013-05-19T06:38:45Z | 2022-08-23T23:39:14Z |
gl | Go bindings for OpenGL (generated via glow) | 918 | 66 | 14 | 2015-02-22T03:29:45Z | 2021-12-10T17:28:15Z |
mathgl | A pure Go 3D math library. | 453 | 58 | 9 | 2013-02-13T14:18:55Z | 2022-05-15T15:41:25Z |
gl | Go cross-platform OpenGL bindings. | 158 | 21 | 8 | 2015-05-18T08:10:15Z | 2021-01-04T18:53:21Z |
glfw | Go cross-platform glfw library for creating an OpenGL context and receiving events. | 76 | 21 | 9 | 2014-12-27T22:40:24Z | 2022-01-19T05:09:35Z |
go-glmatrix | go-glmatrix is a golang version of glMatrix, which is "designed to perform vector and matrix operations stupidly fast". | 4 | 3 | 0 | 2020-07-02T13:40:40Z | 2021-02-05T02:33:06Z |
ORM
Libraries that implement Object-Relational Mapping or datamapping techniques.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gorm | The fantastic ORM library for Golang, aims to be developer friendly | 29386 | 3283 | 166 | 2013-10-25T08:31:38Z | 2022-08-25T14:59:54Z |
ent | An entity framework for Go | 11453 | 652 | 262 | 2019-06-12T22:53:55Z | 2022-08-24T14:58:45Z |
[ARCHIVED] xorm | Simple and Powerful ORM for Go, support mysql,postgres,tidb,sqlite3,mssql,oracle, Moved to https://gitea.com/xorm/xorm | 6545 | 783 | 308 | 2013-05-09T02:35:04Z | 2020-04-03T01:12:12Z |
sqlboiler | Generate a Go ORM tailored to your database schema. | 5131 | 455 | 72 | 2016-02-21T06:18:25Z | 2022-08-25T08:48:43Z |
gorp | Go Relational Persistence - an ORM-ish library for Go | 3580 | 378 | 137 | 2012-01-04T19:50:09Z | 2021-03-04T16:05:59Z |
db | Data access layer for PostgreSQL, CockroachDB, MySQL, SQLite and MongoDB with ORM-like features. | 3167 | 221 | 145 | 2013-10-23T02:04:36Z | 2022-08-15T03:36:51Z |
gormt | database to golang struct | 1979 | 320 | 50 | 2019-05-05T13:10:26Z | 2022-07-06T10:42:23Z |
bun | SQL-first Golang ORM | 1341 | 96 | 54 | 2021-05-03T11:40:52Z | 2022-08-20T06:09:56Z |
reform | A better ORM for Go, based on non-empty interfaces and code generation. | 1312 | 67 | 79 | 2016-02-25T09:41:09Z | 2022-08-22T13:02:27Z |
prisma-client-go | Prisma Client Go is an auto-generated and fully type-safe database client | 1290 | 71 | 92 | 2019-09-24T12:17:03Z | 2022-08-04T23:44:47Z |
pop | A Tasty Treat For All Your Database Needs | 1223 | 225 | 124 | 2018-02-07T21:13:46Z | 2022-08-23T22:32:47Z |
go-sqlbuilder | A flexible and powerful SQL string builder library plus a zero-config ORM. | 824 | 82 | 3 | 2017-12-27T16:37:48Z | 2022-08-24T04:33:39Z |
go-queryset | 100% type-safe ORM for Go (Golang) with code generation and MySQL, PostgreSQL, Sqlite3, SQL Server support. GORM under the hood. | 673 | 68 | 18 | 2017-09-03T17:29:30Z | 2021-07-18T08:49:34Z |
rel | 💎 Modern ORM for Golang - Testable, Extendable and Crafted Into a Clean and Elegant API | 557 | 51 | 18 | 2019-10-06T07:08:01Z | 2022-08-23T23:21:29Z |
zoom | A blazing-fast datastore and querying engine for Go built on Redis. | 291 | 25 | 2 | 2013-07-17T00:32:34Z | 2020-05-06T18:52:16Z |
gosql | golang orm and sql builder | 164 | 18 | 5 | 2020-04-27T09:16:29Z | 2022-06-17T09:34:11Z |
grimoire | Database access layer for golang | 157 | 17 | 0 | 2018-03-05T16:52:20Z | 2021-10-25T23:52:11Z |
go-store | A simple and fast Redis backed key-value store library for Go | 108 | 9 | 1 | 2015-03-22T12:07:29Z | 2017-02-23T15:11:42Z |
orm | A lightweight yet powerful, fast, customizable, type-safe object-relational mapper for the Go programming language. | 108 | 6 | 3 | 2021-08-21T05:50:38Z | 2022-06-01T23:10:22Z |
go-firestorm | Simple Go ORM for Google/Firebase Cloud Firestore | 35 | 7 | 0 | 2018-12-04T14:53:53Z | 2021-12-13T23:52:18Z |
cacheme-go | 🚀 Schema based, typed Redis caching/memoize framework for Go | 21 | 2 | 0 | 2021-10-03T08:44:28Z | 2021-12-18T13:40:27Z |
marlow | persistence layer code generation for golang | 11 | 3 | 0 | 2020-08-11T13:34:00Z | 2020-08-18T14:06:35Z |
lore | Light Object-Relational Environment (LORE) provides a simple and lightweight pseudo-ORM/pseudo-struct-mapping environment for Go | 10 | 3 | 0 | 2017-04-29T03:57:15Z | 2017-10-21T18:26:41Z |
Package Management
Official tooling for dependency and package management
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
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. | - | - | - | - | - |
Performance
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
jaeger | CNCF Jaeger, a Distributed Tracing Platform | 16290 | 1959 | 333 | 2016-04-15T18:49:02Z | 2022-08-25T15:36:00Z |
pixie | Instant Kubernetes-Native Application Observability | 3730 | 261 | 149 | 2020-02-27T00:22:45Z | 2022-08-25T18:52:28Z |
statsviz | 🚀 Instant live visualization of your Go application runtime statistics (GC, MemStats, etc.) in the browser | 1922 | 67 | 8 | 2020-08-14T00:00:41Z | 2022-08-24T20:42:34Z |
profile | Simple profiling for Go | 1760 | 119 | 9 | 2014-10-22T01:35:18Z | 2021-11-02T20:31:47Z |
tracer | 🧶 Dead simple, lightweight tracing. | 65 | 3 | 11 | 2019-06-22T13:23:27Z | 2021-02-27T09:49:34Z |
Query Language
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
graphql | An implementation of GraphQL for Go / Golang | 8732 | 778 | 193 | 2015-07-19T12:25:43Z | 2022-07-29T22:13:27Z |
gqlgen | go generate based graphql server library | 8008 | 909 | 117 | 2018-02-11T04:54:11Z | 2022-08-25T17:53:09Z |
graphql-go | GraphQL server with a focus on ease of use | 4218 | 473 | 86 | 2016-10-18T13:57:24Z | 2022-08-09T15:40:02Z |
dasel | Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package. | 3576 | 82 | 20 | 2020-09-22T10:33:56Z | 2022-08-25T09:35:01Z |
gojsonq | A simple Go package to Query over JSON/YAML/XML/CSV Data | 1925 | 126 | 17 | 2018-05-19T16:15:18Z | 2022-08-15T03:25:59Z |
rql | Resource Query Language for REST | 261 | 34 | 15 | 2018-06-05T18:37:29Z | 2022-05-21T00:10:40Z |
jsonql | JSON query expression library in Golang. | 254 | 36 | 5 | 2015-12-29T11:24:04Z | 2020-11-20T03:19:00Z |
jsonslice | json slicer | 69 | 7 | 3 | 2018-05-02T00:33:15Z | 2022-01-02T15:19:50Z |
[ARCHIVED] graphql | graphql parser + utilities | 55 | 7 | 3 | 2015-04-18T21:05:52Z | 2017-06-02T05:21:03Z |
rest-query-parser | Query Parser for REST | 43 | 11 | 2 | 2020-02-10T17:58:42Z | 2022-06-05T20:23:06Z |
api-fu | A collection of Go packages for creating robust GraphQL APIs | 43 | 3 | 2 | 2019-07-30T05:18:43Z | 2022-04-20T17:42:31Z |
goven | Goven (go-oven) is a go library that allows you to have a drop-in query language for your database schema. | 36 | 5 | 6 | 2021-08-11T09:48:16Z | 2022-04-14T09:56:47Z |
straf | Convert Golang Struct To GraphQL Object On The Fly | 33 | 5 | 0 | 2019-08-16T13:31:39Z | 2020-05-16T13:22:22Z |
jsonpath | A query library for retrieving part of JSON based on JSONPath syntax. | 10 | 2 | 1 | 2020-11-29T05:37:26Z | 2022-03-24T12:43:19Z |
gws | A WebSocket client and server for GraphQL | 4 | 2 | 2 | 2020-06-08T19:51:36Z | 2020-09-04T06:02:11Z |
Resource Embedding
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
statik | Embed files into a Go executable | 3470 | 221 | 35 | 2014-02-04T14:54:51Z | 2022-05-02T17:41:28Z |
[ARCHIVED] packr | The simple and easy way to embed static files into Go binaries. | 3415 | 195 | 67 | 2017-03-15T22:24:53Z | 2021-12-04T19:53:01Z |
go.rice | go.rice is a Go package that makes working with resources such as html,js,css,images,templates, etc very easy. | 2297 | 153 | 39 | 2013-10-23T21:29:34Z | 2022-06-23T11:46:20Z |
vfsgen | Takes an input http.FileSystem (likely at go generate time) and generates Go code that statically implements it. | 947 | 83 | 33 | 2015-05-18T13:03:02Z | 2022-01-05T14:21:22Z |
esc | A simple file embedder for Go | 623 | 70 | 11 | 2014-01-26T05:08:04Z | 2019-11-14T16:22:26Z |
fileb0x | a better customizable tool to embed files in go; also update embedded files remotely without restarting the server | 613 | 52 | 11 | 2016-01-23T20:19:33Z | 2022-05-16T17:03:51Z |
go-resources | Unfancy resources embedding for Go with out of box http.FileSystem support. | 175 | 17 | 3 | 2015-02-21T15:40:17Z | 2021-05-30T03:53:52Z |
statics | 📁 Embeds static resources into go files for single binary compilation + works with http.FileSystem + symlinks | 64 | 6 | 0 | 2015-10-07T11:49:52Z | 2016-10-05T01:27:05Z |
templify | A tool to be used with 'go generate' to embed external template files into Go code. | 27 | 6 | 1 | 2016-05-22T16:42:47Z | 2021-08-16T20:22:50Z |
rebed | Recreates directory and files from embedded filesystem using Go 1.16 embed.FS type. | 22 | 3 | 0 | 2021-02-17T18:19:49Z | 2022-02-18T13:20:07Z |
debme | embed.FS wrapper providing additional functionality | 21 | 5 | 0 | 2021-04-16T00:25:13Z | 2021-06-06T02:03:03Z |
mule | mule is a tool to be used with 'go generate' to embed external resources files into Go code. | 11 | 3 | 1 | 2020-01-17T10:56:00Z | 2021-08-16T20:23:29Z |
Science and Data Analysis
Libraries for scientific computing and data analyzing.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gonum | Gonum is a set of numeric libraries for the Go programming language. It contains libraries for matrices, statistics, optimization, and more | 6010 | 471 | 241 | 2017-03-25T14:54:38Z | 2022-08-13T09:34:32Z |
stats | A well tested and comprehensive Golang statistics library package with no dependencies. | 2492 | 158 | 16 | 2014-12-16T03:25:19Z | 2022-04-18T14:26:56Z |
plot | A repository for plotting and visualizing data | 2251 | 189 | 89 | 2013-07-23T07:01:13Z | 2022-08-20T11:59:53Z |
gosl | Linear algebra, eigenvalues, FFT, Bessel, elliptic, orthogonal polys, geometry, NURBS, numerical quadrature, 3D transfinite interpolation, random numbers, Mersenne twister, probability distributions, optimisation, differential equations. | 1685 | 147 | 0 | 2015-02-09T23:00:38Z | 2022-06-12T07:35:44Z |
streamtools | tools for working with streams of data | 1315 | 111 | 47 | 2013-07-05T18:58:45Z | 2015-07-17T13:38:10Z |
dataframe-go | DataFrames for Go: For statistics, machine-learning, and data manipulation/exploration | 873 | 76 | 12 | 2018-10-01T12:19:31Z | 2022-04-02T10:46:59Z |
go-dsp | Digital Signal Processing for Go | 787 | 82 | 7 | 2011-11-02T06:28:41Z | 2022-01-26T11:38:17Z |
chart | Provide basic charts in go | 734 | 103 | 6 | 2011-06-27T12:19:42Z | 2021-06-03T05:17:13Z |
goraph | Package goraph implements graph data structure and algorithms. | 693 | 78 | 6 | 2014-02-27T03:15:55Z | 2022-04-10T19:09:06Z |
graph | Graph algorithms and data structures | 572 | 57 | 4 | 2017-04-27T18:43:54Z | 2021-09-23T06:27:31Z |
orb | Types and utilities for working with 2d geometry in Golang | 565 | 73 | 8 | 2016-03-28T01:19:01Z | 2022-05-16T17:39:19Z |
ewma | Exponentially Weighted Moving Average algorithms for Go. | 389 | 34 | 4 | 2013-07-05T21:33:25Z | 2021-08-14T11:56:33Z |
calendarheatmap | 📅 Calendar heatmap inspired by GitHub contribution activity | 355 | 16 | 13 | 2020-07-01T18:30:48Z | 2022-07-10T04:33:30Z |
gohistogram | Streaming approximate histograms in Go | 166 | 30 | 2 | 2013-07-02T12:53:22Z | 2020-12-15T17:33:31Z |
TextRank | 😉 🌀 🍓 TextRank implementation in Golang with extendable features (summarization, phrase extraction) and multithreading (goroutine). | 163 | 20 | 5 | 2018-01-09T19:36:17Z | 2021-07-08T17:29:28Z |
sparse | Sparse matrix formats for linear algebra supporting scientific and machine learning applications | 132 | 22 | 5 | 2017-05-16T13:54:36Z | 2021-07-29T09:01:28Z |
go-estimate | State estimation and filtering algorithms in Go | 98 | 8 | 2 | 2018-11-04T22:32:52Z | 2022-05-28T17:42:08Z |
pagerank | Weighted PageRank implementation in Go | 75 | 21 | 3 | 2015-08-06T01:33:34Z | 2021-06-19T22:18:08Z |
jsonl-graph | 🏝 JSONL Graph Tools | 58 | 4 | 4 | 2021-06-26T06:37:03Z | 2022-01-06T11:32:33Z |
geom | 2d geometry for golang | 51 | 18 | 1 | 2011-06-07T17:49:11Z | 2018-01-03T14:24:18Z |
evaler | Implements a simple floating point arithmetic expression evaluator in Go (golang). | 49 | 14 | 5 | 2012-09-04T23:37:58Z | 2018-07-27T12:02:52Z |
triangolatte | 2D triangulation library. Allows translating lines and polygons (both based on points) to the language of GPUs. | 29 | 4 | 4 | 2018-07-18T21:17:09Z | 2021-08-04T11:33:07Z |
decimal | An arbitrary-precision decimal floating-point arithmetic package for Go | 28 | 3 | 0 | 2020-05-27T15:23:59Z | 2022-08-12T00:13:53Z |
goent | GO Implementation of Entropy Measures | 27 | 4 | 0 | 2017-08-08T05:37:12Z | 2019-04-03T09:41:55Z |
piecewiselinear | tiny linear interpolation library for go (factored out from https://github.com/sgreben/yeetgif) | 22 | 3 | 0 | 2018-10-21T13:19:44Z | 2020-12-01T19:30:38Z |
GoStats | GoStats is a go library for math statistics mostly used in ML domains, it covers most of the statistical measures functions. | 20 | 2 | 0 | 2018-07-22T20:55:16Z | 2019-01-14T16:50:38Z |
godesim | ODE system solver made simple. For IVPs (initial value problems). | 19 | 1 | 1 | 2020-12-16T01:02:26Z | 2022-06-04T04:01:34Z |
PiHex | PiHex Library, written in Go, generates a hexadecimal number sequence in the number Pi in the range from 0 to 10,000,000. | 17 | 4 | 1 | 2016-07-22T11:21:37Z | 2022-06-27T18:21:50Z |
ode | An ordinary differential equation solving library in golang. | 17 | 3 | 1 | 2016-11-11T22:40:21Z | 2017-03-18T01:10:01Z |
assocentity | Package assocentity returns the average distance from words to a given entity | 9 | 3 | 6 | 2018-12-21T07:17:09Z | 2020-10-27T12:49:40Z |
rootfinding | root-finding library | 7 | 2 | 0 | 2018-10-30T22:31:48Z | 2020-03-22T09:14:10Z |
bradleyterry | Package to do Bradley-Terry Model pairwise compairsons | 6 | 2 | 0 | 2019-04-30T00:28:13Z | 2019-05-02T18:10:35Z |
go-gt | Automatically exported from code.google.com/p/go-gt | 6 | 2 | 2 | 2015-09-14T12:05:37Z | 2015-09-14T12:08:59Z |
Security
Libraries that are used to help make your application more secure.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
age | A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability. | 11142 | 353 | 17 | 2019-05-18T20:44:54Z | 2022-08-01T23:22:09Z |
lego | Let's Encrypt/ACME client and library written in Go | 5488 | 736 | 158 | 2015-06-08T00:36:41Z | 2022-08-25T14:22:29Z |
certmagic | Automatic HTTPS for any Go program: fully-managed TLS certificate issuance and renewal | 4174 | 222 | 12 | 2018-12-10T03:12:30Z | 2022-08-21T11:32:50Z |
cameradar | Cameradar hacks its way into RTSP videosurveillance cameras | 2998 | 432 | 21 | 2016-05-20T11:35:41Z | 2022-05-16T13:32:48Z |
crypto | [mirror] Go supplementary cryptography libraries | 2499 | 1352 | 62 | 2014-12-04T04:02:55Z | 2022-08-24T17:17:17Z |
memguard | Secure software enclave for storage of sensitive information in memory. | 2202 | 102 | 1 | 2017-04-22T07:40:40Z | 2022-06-15T17:21:36Z |
secure | HTTP middleware for Go that facilitates some quick security wins. | 1995 | 125 | 4 | 2014-05-20T19:46:28Z | 2022-08-24T09:22:17Z |
acmetool | 🔒 acmetool, an automatic certificate acquisition tool for ACME (Let's Encrypt) | 1930 | 130 | 71 | 2015-11-15T01:56:02Z | 2022-07-31T15:44:31Z |
themis | Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms. | 1577 | 131 | 19 | 2015-05-06T13:25:25Z | 2022-08-22T21:44:28Z |
acra | Database security suite. Database proxy with field-level encryption, search through encrypted data, SQL injections prevention, intrusion detection, honeypots. Supports client-side and proxy-side ("transparent") encryption. SQL, NoSQL. | 1037 | 109 | 3 | 2016-11-14T16:23:25Z | 2022-08-25T16:14:03Z |
coraza | OWASP Coraza WAF is a golang modsecurity compatible web application firewall library | 639 | 88 | 20 | 2020-05-27T17:06:51Z | 2022-08-25T11:44:43Z |
nacl | Pure Go implementation of the NaCL set of API's | 527 | 31 | 4 | 2017-07-20T19:07:19Z | 2022-08-11T10:28:40Z |
ssh-vault | 🌰 encrypt/decrypt using ssh keys | 354 | 24 | 10 | 2016-09-29T14:46:30Z | 2022-08-23T18:11:59Z |
go-password-validator | Validate the Strength of a Password in Go | 350 | 31 | 1 | 2020-10-14T15:52:14Z | 2022-02-24T10:28:43Z |
optimus-go | ID hashing and Obfuscation using Knuth's Algorithm | 319 | 21 | 1 | 2015-05-05T10:12:38Z | 2020-05-04T00:14:25Z |
firewalld-rest | A rest application to update firewalld rules on a linux server | 319 | 15 | 2 | 2020-06-12T20:16:33Z | 2020-09-04T18:10:18Z |
badactor | BadActor.org An in-memory application driven jailer written in Go | 310 | 18 | 1 | 2014-12-12T20:05:20Z | 2020-05-28T22:21:02Z |
dongle | A simple, semantic and developer-friendly golang package for encoding&decoding and encryption&decryption | 278 | 15 | 0 | 2021-08-11T07:11:54Z | 2022-06-09T12:14:47Z |
go-yara | Go bindings for YARA | 271 | 95 | 5 | 2015-01-25T01:01:11Z | 2022-08-03T11:35:08Z |
passlib | 🔑 Idiotproof golang password validation library inspired by Python's passlib | 270 | 29 | 1 | 2014-12-21T17:45:52Z | 2021-03-23T06:03:00Z |
simple-scrypt | A convenience library for generating, comparing and inspecting password hashes using the scrypt KDF in Go 🔑 | 180 | 28 | 4 | 2015-04-14T06:52:21Z | 2021-04-12T20:33:15Z |
argon2pw | Argon2 password hashing package for go with constant time hash comparison | 88 | 10 | 1 | 2018-03-13T13:56:36Z | 2021-09-10T18:37:55Z |
goSecretBoxPassword | A probably paranoid Golang utility library for securely hashing and encrypting passwords based on the Dropbox method. This implementation uses Blake2b, Scrypt and XSalsa20-Poly1305 (via NaCl SecretBox) to create secure password hashes that are also encrypted using a master passphrase. | 51 | 9 | 0 | 2017-10-19T19:34:45Z | 2020-12-11T04:22:56Z |
go-generate-password | Password generator written in Go | 44 | 7 | 0 | 2019-11-14T17:57:19Z | 2022-04-17T11:17:05Z |
go-htpasswd | Apache htpasswd Parser for Go. | 26 | 10 | 0 | 2015-06-18T06:50:27Z | 2021-10-20T22:22:00Z |
secureio | An easy-to-use XChaCha20-encryption wrapper for io.ReadWriteCloser (even lossy UDP) using ECDH key exchange algorithm, ED25519 signatures and Blake3+Poly1305 checksums/message-authentication for Go (golang). Also a multiplexer. | 25 | 4 | 1 | 2018-12-25T14:20:59Z | 2020-06-28T16:32:59Z |
certificates | An opinionated helper for generating tls certificates | 23 | 7 | 0 | 2019-03-04T07:20:36Z | 2022-04-29T07:25:05Z |
argon2-hashing | A light package for generating and comparing password hashing with argon2 in Go | 17 | 5 | 0 | 2019-01-02T20:41:02Z | 2020-04-05T22:12:45Z |
goArgonPass | goArgonPass is a Argon2 Password utility package for Go using the crypto library package Argon2 designed to be compatible with Passlib for Python and Argon2 PHP. Argon2 was the winner of the most recent Password Hashing Competition. This is designed for use anywhere password hashing and verification might be needed and is intended to replace implementations using bcrypt or Scrypt. | 15 | 7 | 1 | 2018-05-30T01:32:10Z | 2020-12-11T04:07:56Z |
sslmgr | A layer of abstraction the around acme/autocert certificate manager (Golang) | 14 | 4 | 0 | 2019-04-02T17:35:38Z | 2019-07-27T18:49:03Z |
secret | Prevent your secrets from leaking into logs, std* etc. | 13 | 2 | 5 | 2022-01-10T12:54:39Z | 2022-08-13T19:51:02Z |
Interpol | Rule-based data generator for fuzzing and penetration testing. | - | - | - | - | - |
Serialization
Libraries and tools for binary serialization.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go | A high-performance 100% compatible drop-in replacement of "encoding/json" | 11232 | 906 | 204 | 2016-11-30T00:30:24Z | 2022-08-12T03:29:09Z |
protobuf | Go support for Google's protocol buffers | 8651 | 1558 | 84 | 2014-11-23T23:07:23Z | 2022-07-05T00:03:05Z |
mapstructure | Go library for decoding generic map values into native Go structures and vice versa. | 6054 | 592 | 43 | 2013-05-20T05:24:34Z | 2022-08-10T10:59:34Z |
protobuf | [Deprecated] Protocol Buffers for Go with Gadgets | 5411 | 724 | 227 | 2014-12-03T11:27:10Z | 2022-07-03T18:18:09Z |
go | idiomatic codec and rpc lib for msgpack, cbor, json, etc. msgpack.org[Go] | 1671 | 283 | 14 | 2013-05-30T02:13:13Z | 2022-08-25T18:54:56Z |
csvutil | csvutil provides fast and idiomatic mapping between CSV and Go (golang) values. | 743 | 52 | 0 | 2017-10-30T04:09:48Z | 2022-06-29T22:08:32Z |
colfer | binary serialization format | 674 | 48 | 12 | 2015-09-05T16:42:41Z | 2022-03-29T22:35:10Z |
cbor | CBOR codec (RFC 8949) with CBOR tags, Go struct tags (toarray, keyasint, omitempty), float64/32/16, big.Int, and fuzz tested billions of execs. | 475 | 43 | 22 | 2019-05-15T21:22:15Z | 2022-08-06T00:31:42Z |
go-capnproto | Cap'n Proto library and parser for go. This is go-capnproto-1.0, and does not have rpc. See https://github.com/zombiezen/go-capnproto2 for 2.0 which has rpc and capabilities. | 282 | 20 | 1 | 2013-11-07T20:28:12Z | 2020-01-29T18:25:38Z |
php_session_decoder | PHP session encoder/decoder written in Go | 154 | 45 | 4 | 2012-12-23T14:04:25Z | 2018-11-02T07:23:13Z |
structomap | Easily and dynamically generate maps from Go static structures | 134 | 11 | 0 | 2015-05-13T08:54:11Z | 2019-05-24T14:07:40Z |
bambam | auto-generate capnproto schema from your golang source files. Depends on go-capnproto-1.0 at https://github.com/glycerine/go-capnproto | 64 | 12 | 3 | 2014-09-17T14:39:12Z | 2016-10-07T18:28:00Z |
binstruct | Golang binary decoder for mapping data into the structure | 58 | 16 | 0 | 2018-10-23T15:42:22Z | 2022-04-24T18:22:45Z |
[ARCHIVED] asn1 | Asn.1 BER and DER encoding library for golang. | 51 | 27 | 6 | 2016-02-29T13:00:25Z | 2019-03-12T17:35:41Z |
bel | Generate TypeScript interfaces from Go structs/interfaces - useful for JSON RPC | 26 | 7 | 2 | 2019-02-20T20:48:24Z | 2020-08-05T08:59:23Z |
fwencoder | Fixed width file parser (encoder/decoder) in GO (golang) | 20 | 7 | 0 | 2017-12-25T12:55:29Z | 2022-08-08T10:33:46Z |
pletter | A standard way to wrap a proto message | 18 | 3 | 7 | 2019-07-09T14:02:08Z | 2022-08-01T08:14:50Z |
elastic | Converts go types no matter what | 16 | 4 | 1 | 2020-02-25T19:55:00Z | 2021-05-21T12:32:58Z |
fixedwidth | A Go package for encode/decode fixed-width data | 6 | 2 | 0 | 2019-08-11T03:42:24Z | 2019-12-20T03:18:01Z |
unitpacking | A library for storing unit vectors in a representation that lends itself to saving space on disk. | 4 | 1 | 0 | 2021-01-17T22:31:41Z | 2021-04-17T17:32:33Z |
go-lctree | go-lctree provides a CLI and Go primitives to serialize and deserialize LeetCode binary trees (e.g. "[5,4,7,3,null,2,null,-1,null,9]"). | 3 | 2 | 0 | 2020-05-04T05:39:46Z | 2020-06-03T21:19:42Z |
Server Applications
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
caddy | Fast, multi-platform web server with automatic HTTPS | 42349 | 3343 | 117 | 2015-01-13T19:45:03Z | 2022-08-25T19:29:01Z |
etcd | Distributed reliable key-value store for the most critical data of a distributed system | 40955 | 8802 | 204 | 2013-07-06T21:57:21Z | 2022-08-25T19:19:25Z |
minio | Multi-Cloud ☁ Object Storage | 34857 | 4136 | 24 | 2015-01-14T19:23:58Z | 2022-08-25T20:21:09Z |
consul | Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure. | 25265 | 4131 | 1149 | 2013-11-04T22:15:27Z | 2022-08-25T20:57:07Z |
roadrunner | 🤯 High-performance PHP application server, process manager written in Go and powered with plugins | 6680 | 369 | 48 | 2017-12-26T16:13:10Z | 2022-08-25T13:25:49Z |
sftpgo | Fully featured and highly configurable SFTP server with optional HTTP/S, FTP/S and WebDAV support - S3, Google Cloud Storage, Azure Blob | 4655 | 412 | 13 | 2019-07-20T10:18:31Z | 2022-08-23T09:37:05Z |
easegress | A Cloud Native traffic orchestration system | 4652 | 404 | 58 | 2021-05-28T03:02:42Z | 2022-08-23T10:09:25Z |
devd | A local webserver for developers | 3270 | 146 | 24 | 2015-09-27T22:43:00Z | 2022-07-13T09:04:10Z |
algernon | 🎩 Small self-contained pure-Go web server with Lua, Markdown, HTTP/2, QUIC, Redis and PostgreSQL support | 2093 | 111 | 16 | 2015-03-10T11:25:30Z | 2022-08-23T07:18:05Z |
fider | Open platform to collect and prioritize feedback | 2017 | 561 | 29 | 2017-01-17T22:55:19Z | 2022-07-21T03:48:59Z |
flagr | Flagr is a feature flagging, A/B testing and dynamic configuration microservice | 1967 | 157 | 80 | 2017-10-03T19:07:32Z | 2022-08-25T19:22:13Z |
flipt | An open source, self-hosted feature flag solution | 1883 | 98 | 21 | 2016-11-05T00:09:07Z | 2022-08-22T14:28:06Z |
trickster | Open Source HTTP Reverse Proxy Cache and Time Series Dashboard Accelerator | 1731 | 158 | 35 | 2018-03-29T20:31:44Z | 2022-08-23T19:28:37Z |
discovery | A registry for resilient mid-tier load balancing and failover. | 1682 | 389 | 23 | 2018-04-20T12:57:50Z | 2021-11-16T10:34:44Z |
wish | Make SSH apps, just like that! 💫 | 1538 | 29 | 4 | 2019-12-19T00:11:55Z | 2022-08-22T13:33:11Z |
jackal | 💬 Instant messaging server for the Extensible Messaging and Presence Protocol (XMPP). | 1304 | 121 | 14 | 2017-11-13T18:17:48Z | 2022-08-25T08:21:51Z |
go-feature-flag | A simple and complete feature flag solution, without any complex backend system to install, all you need is a file as your backend. 🎛️ | 497 | 30 | 21 | 2020-12-11T13:19:17Z | 2022-08-25T10:56:14Z |
euterpe | Self-hosted music streaming server 🎶 with RESTful API and Web interface. Think of it as your very own Spotify! ☁️🎧 | 420 | 25 | 15 | 2014-01-01T12:51:54Z | 2022-07-16T05:59:43Z |
dummy | Run mock server based off an API contract with one command | 158 | 9 | 4 | 2021-11-12T06:54:04Z | 2022-08-25T14:22:38Z |
dudeldu | A simple SHOUTcast server. | 136 | 14 | 0 | 2016-09-07T19:11:04Z | 2019-09-22T09:17:43Z |
lets-proxy2 | Reverse proxy with automatically obtains TLS certificates from Let's Encrypt | 66 | 12 | 38 | 2019-04-12T05:39:43Z | 2022-06-15T21:57:06Z |
go-proxy-cache | Simple Reverse Proxy with Caching, written in Go, using Redis. | 63 | 9 | 21 | 2020-11-12T15:10:40Z | 2022-08-10T15:08:00Z |
cortex-tenant | Prometheus remote write proxy that adds Cortex tenant ID based on metric labels | 52 | 25 | 3 | 2020-10-06T16:52:25Z | 2022-06-09T08:49:48Z |
psql-streamer | Stream database events from PostgreSQL to Kafka | 41 | 10 | 2 | 2019-04-28T21:55:31Z | 2020-03-10T09:59:38Z |
nginx-prometheus | Turn Nginx logs into Prometheus metrics | 32 | 5 | 0 | 2018-10-23T09:10:27Z | 2020-09-16T09:07:15Z |
simple-jwt-provider | 28 | 5 | 3 | 2019-12-18T12:48:14Z | 2021-12-15T11:56:13Z | |
protoxy | A proxy server than converts JSON request bodies to protocol buffers | 24 | 3 | 0 | 2020-09-03T23:24:34Z | 2020-11-08T21:25:43Z |
moxy | Mocker + Proxy Application | 7 | 1 | 0 | 2021-07-17T05:21:41Z | 2022-05-17T14:36:53Z |
riemann-relay | Service for relaying Riemann events to Riemann/Carbon destinations | 1 | 2 | 0 | 2019-04-23T14:17:12Z | 2019-10-29T15:00:14Z |
nsq | A realtime distributed messaging platform. | - | - | - | - | - |
Stream Processing
Libraries and tools for stream processing and reactive programming.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-streams | A lightweight stream processing library for Go | 1017 | 81 | 2 | 2019-04-30T17:28:15Z | 2022-06-01T08:26:53Z |
machine | Machine is a workflow/pipeline library for processing data | 113 | 10 | 3 | 2020-10-13T04:24:19Z | 2022-08-02T20:19:44Z |
stream | Go Stream, like Java 8 Stream. | 65 | 9 | 1 | 2020-11-12T03:52:50Z | 2020-12-08T03:14:39Z |
goio | An implementation of IO, Stream, Fiber for golang inspired by cats and fs2 | 42 | 1 | 8 | 2022-05-03T18:18:01Z | 2022-08-22T18:26:06Z |
Template Engines
Libraries and tools for templating and lexing.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
sprig | Useful template functions for Go templates. | 3139 | 332 | 96 | 2013-11-22T01:20:40Z | 2022-08-17T08:46:20Z |
quicktemplate | Fast, powerful, yet easy to use template engine for Go. Optimized for speed, zero memory allocations in hot paths. Up to 20x faster than html/template | 2548 | 132 | 31 | 2016-03-06T21:42:01Z | 2022-03-21T19:22:48Z |
pongo2 | Django-syntax like template-engine for Go | 2322 | 221 | 50 | 2013-08-23T01:00:08Z | 2022-08-22T17:48:16Z |
jet | Jet template engine | 949 | 88 | 19 | 2016-03-31T16:53:36Z | 2021-10-27T04:41:38Z |
gorazor | Razor view engine for go | 800 | 90 | 2 | 2014-05-01T05:30:31Z | 2020-11-24T14:24:29Z |
maroto | A maroto way to create PDFs. Maroto is inspired in Bootstrap and uses gofpdf. Fast and simple. | 732 | 109 | 28 | 2019-05-20T23:27:47Z | 2022-08-23T09:16:34Z |
fasttemplate | Simple and fast template engine for Go | 629 | 70 | 9 | 2015-08-19T12:44:22Z | 2021-01-11T18:21:27Z |
ego | An ERB-style templating language for Go. | 531 | 39 | 11 | 2014-02-23T18:14:41Z | 2021-11-22T14:54:10Z |
raymond | Handlebars for golang | 489 | 74 | 19 | 2015-04-22T13:07:59Z | 2021-11-05T10:39:38Z |
goview | Goview is a lightweight, minimalist and idiomatic template library based on golang html/template for building Go web application. | 295 | 31 | 14 | 2019-04-14T11:22:41Z | 2022-01-06T02:36:17Z |
liquid | A Liquid template engine in Go | 167 | 40 | 25 | 2017-06-26T14:39:52Z | 2022-07-28T12:39:51Z |
soy | Go implementation for Soy templates (Google Closure templates) | 166 | 41 | 6 | 2013-12-15T01:14:48Z | 2022-04-06T21:12:18Z |
extemplate | Wrapper package for Go's template/html to allow for easy file-based template inheritance. | 50 | 14 | 1 | 2018-08-10T20:34:19Z | 2021-06-15T11:58:56Z |
gospin | Article spinning and spintax/spinning syntax engine written in Go, useful for A/B, testing pieces of text/articles and creating more natural conversations | 39 | 8 | 3 | 2019-02-22T17:04:51Z | 2021-05-12T09:29:11Z |
tbd | "to be defined" - a really simple way to create text templates with placeholders | 21 | 1 | 0 | 2021-05-21T13:11:33Z | 2021-08-29T07:51:06Z |
got | GoT is a template engine that turns templates into Go code to compile into your app. | 2 | 1 | 0 | 2018-12-28T11:19:31Z | 2022-03-09T16:00:43Z |
Testing
Libraries for testing codebases and generating test data.
Testing Frameworks
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
testify | A toolkit with common assertions and mocks that plays nicely with the standard library | 17428 | 1305 | 360 | 2012-10-16T16:43:17Z | 2022-08-24T11:25:26Z |
goconvey | Go testing in the browser. Integrates with go test . Write behavioral tests in Go. |
7399 | 526 | 150 | 2013-08-21T04:52:28Z | 2022-06-03T05:06:37Z |
go-cmp | Package for comparing Go values in tests | 3075 | 184 | 19 | 2017-07-07T19:28:22Z | 2022-08-14T07:22:46Z |
httpexpect | End-to-end HTTP and REST API testing for Go. | 1963 | 165 | 22 | 2016-04-29T17:05:20Z | 2022-07-16T11:20:02Z |
godog | Cucumber for golang | 1750 | 187 | 46 | 2015-06-10T13:16:31Z | 2022-08-17T14:37:29Z |
is | Professional lightweight testing mini-framework for Go. | 1473 | 50 | 9 | 2016-12-06T13:24:01Z | 2022-05-16T09:57:40Z |
gnomock | Test your code without writing mocks with ephemeral Docker containers 📦 Setup popular services with just a couple lines of code ⏱️ No bash, no yaml, only code 💻 | 926 | 37 | 16 | 2020-01-31T14:50:52Z | 2022-08-25T09:08:44Z |
go-vcr | Record and replay your HTTP interactions for fast, deterministic and accurate tests | 916 | 61 | 0 | 2015-12-14T12:52:17Z | 2022-08-23T15:57:06Z |
goblin | Minimal and Beautiful Go testing framework | 862 | 74 | 20 | 2013-09-19T02:34:24Z | 2021-10-03T14:34:22Z |
testfixtures | Ruby on Rails like test fixtures for Go. Write tests against a real database | 832 | 64 | 17 | 2016-04-05T11:33:28Z | 2022-08-20T11:03:13Z |
baloo | Expressive end-to-end HTTP API testing made easy in Go | 732 | 30 | 8 | 2016-05-29T21:40:58Z | 2022-08-10T03:18:54Z |
goc | A Comprehensive Coverage Testing System for The Go Programming Language | 557 | 81 | 38 | 2020-05-07T03:46:25Z | 2022-08-07T03:31:16Z |
go-mutesting | Mutation testing for Go source code | 548 | 46 | 41 | 2014-12-26T22:23:44Z | 2022-08-18T21:57:41Z |
gofight | Testing API Handler written in Golang. | 424 | 41 | 6 | 2016-03-29T00:13:21Z | 2021-06-27T15:34:44Z |
embedded-postgres | Run a real Postgres database locally on Linux, OSX or Windows as part of another Go application or test | 420 | 42 | 2 | 2019-11-16T23:49:40Z | 2022-08-09T00:27:04Z |
testza | Full-featured test framework for Go! Assertions, fuzzing, input testing, output capturing, and much more! 🍕 | 393 | 17 | 11 | 2021-07-05T16:21:38Z | 2022-08-25T21:01:49Z |
gotest.tools | A collection of packages to augment the go testing package and support common patterns. | 345 | 39 | 22 | 2017-08-08T21:28:54Z | 2022-08-08T04:20:35Z |
go-testdeep | Extremely flexible golang deep comparison, extends the go testing package, tests HTTP APIs and provides tests suite | 314 | 13 | 4 | 2018-05-26T15:03:28Z | 2022-08-25T20:19:43Z |
frisby | API testing framework inspired by frisby-js | 271 | 28 | 12 | 2015-09-15T14:35:58Z | 2020-03-03T23:49:00Z |
got | An enjoyable golang test framework. | 233 | 17 | 4 | 2020-09-29T08:24:35Z | 2022-08-25T12:10:18Z |
go-carpet | go-carpet - show test coverage in terminal for Go source files | 227 | 9 | 2 | 2016-02-28T12:02:51Z | 2022-08-07T14:20:49Z |
cupaloy | Simple Go snapshot testing | 222 | 27 | 12 | 2017-08-07T18:30:05Z | 2022-08-04T19:29:15Z |
endly | End to end functional test and automation framework | 216 | 29 | 1 | 2017-08-28T20:24:43Z | 2022-08-18T21:49:30Z |
commander | Test your command line interfaces on windows, linux and osx and nodes viá ssh and docker | 202 | 15 | 25 | 2019-02-22T16:35:16Z | 2022-07-03T02:45:31Z |
charlatan | Go Interface Mocking Tool | 195 | 9 | 2 | 2017-10-06T21:55:14Z | 2019-09-05T21:25:40Z |
dbcleaner | Clean database for testing, inspired by database_cleaner for Ruby | 139 | 12 | 0 | 2017-01-17T18:18:40Z | 2021-11-10T01:57:55Z |
go-hit | http integration test framework | 122 | 7 | 14 | 2019-06-04T16:28:23Z | 2022-08-08T04:12:08Z |
gospec | Testing framework for Go. Allows writing self-documenting tests/specifications, and executes them concurrently and safely isolated. [UNMAINTAINED] | 112 | 17 | 3 | 2009-11-24T13:59:26Z | 2014-07-31T18:59:25Z |
testcase | testcase is an opinionated testing framework to support test driven design. | 96 | 7 | 0 | 2019-04-22T21:20:51Z | 2022-08-21T16:34:55Z |
wstest | go websocket client for unit testing of a websocket handler | 92 | 15 | 1 | 2017-03-31T21:06:18Z | 2020-12-30T21:32:28Z |
jsonassert | A Go test assertion library for verifying that two representations of JSON are semantically equal | 88 | 17 | 3 | 2018-10-26T20:31:01Z | 2022-08-21T06:37:52Z |
gocrest | GoCrest - Hamcrest-like matchers for Go | 83 | 6 | 3 | 2017-12-23T23:27:00Z | 2020-12-21T16:05:30Z |
restit | A Go library help testing your RESTful API application | 55 | 6 | 4 | 2014-06-25T10:25:46Z | 2019-10-18T03:18:17Z |
gospecify | A BDD library for Go | 52 | 7 | 1 | 2009-11-20T06:34:29Z | 2011-10-18T02:38:16Z |
covergates | The portal gates to coverage reports | 50 | 10 | 11 | 2020-05-29T04:02:01Z | 2022-05-16T22:01:10Z |
gherkingen | Behaviour Driven Development tests generator for Golang | 49 | 1 | 2 | 2022-01-15T16:10:11Z | 2022-07-24T02:35:07Z |
gomatch | Library created for testing JSON against patterns. | 42 | 4 | 0 | 2019-01-27T20:19:06Z | 2021-01-15T13:14:48Z |
assert | ❗Basic Assertion Library used along side native go testing, with building blocks for custom assertions | 41 | 14 | 3 | 2015-07-20T17:53:45Z | 2022-08-09T08:56:13Z |
dsunit | Datastore Testibility | 41 | 9 | 0 | 2016-06-13T20:20:52Z | 2022-06-05T18:12:51Z |
hamcrest | Hamcrest matchers for the Go programming language | 27 | 5 | 2 | 2010-12-22T04:49:44Z | 2021-01-07T21:29:48Z |
go-snaps | Jest-like snapshot testing in Golang 📸 | 22 | 0 | 4 | 2021-11-27T11:15:22Z | 2022-08-25T20:46:33Z |
schema | Quick and easy expression matching for JSON schemas used in requests and responses | 17 | 1 | 0 | 2015-08-13T13:36:54Z | 2019-10-13T10:57:48Z |
flute | Golang HTTP client testing framework | 17 | 1 | 4 | 2019-07-06T04:32:03Z | 2022-06-23T20:33:27Z |
be | Generic testing helper for Go | 17 | 0 | 1 | 2022-04-03T11:27:49Z | 2022-06-01T19:51:14Z |
gogiven | gogiven - BDD testing framework for go that generates readable output directly from source code | 13 | 3 | 4 | 2017-12-31T22:33:37Z | 2021-07-28T06:23:41Z |
testsql | Generate test data from SQL files before testing and clear it after finished. | 13 | 2 | 3 | 2018-09-22T12:03:50Z | 2019-09-26T07:23:40Z |
gosuite | Test suites support for standard Go1.7 "testing" by leveraging Subtests feature | 11 | 4 | 1 | 2016-10-15T19:28:14Z | 2016-10-18T16:53:21Z |
biff | Bifurcation Framework for testing and use cases | 10 | 2 | 0 | 2018-03-28T18:35:53Z | 2021-07-18T09:38:46Z |
badio | Extensions to Go's testing/iotest package | 9 | 2 | 0 | 2016-02-11T10:29:25Z | 2016-02-13T15:00:58Z |
test | test utilities for golang | 7 | 1 | 0 | 2019-03-23T21:47:36Z | 2019-09-23T01:09:27Z |
fixenv | 6 | 0 | 0 | 2021-08-27T22:33:04Z | 2022-06-12T21:35:45Z | |
stop-and-go | Testing helper for concurrency | 5 | 4 | 0 | 2020-11-06T09:04:58Z | 2022-06-29T16:23:11Z |
trial | A simple assertion library for go | 5 | 1 | 0 | 2015-06-18T09:01:30Z | 2019-10-13T10:54:15Z |
tt | Simple and colorful test tools | 4 | 1 | 0 | 2018-04-03T11:47:21Z | 2022-04-23T20:51:32Z |
go-testpredicate | Unit-testing predicates for Go. | 4 | 0 | 0 | 2018-11-23T21:39:11Z | 2021-11-20T03:04:15Z |
go-mysql-test-container | Golang MySQL testcontainer package | 1 | 0 | 0 | 2021-11-04T02:04:49Z | 2022-06-08T15:28:41Z |
gocheck | More advanced testing framework alternative to gotest. | - | - | - | - | - |
gomega | Rspec like matcher/assertion library. | - | - | - | - | - |
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. | - | - | - | - | - |
omg.testingtools | This tool can be useful for writing a tests. If you want change private field in struct from imported libraries than it can help you. | 0 | 0 | 0 | 2021-10-13T13:49:30Z | 2021-10-14T23:05:20Z |
ginkgo | BDD Testing Framework for Go. | - | - | - | - | - |
Mock
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
mock | GoMock is a mocking framework for the Go programming language. | 7846 | 554 | 61 | 2015-06-12T17:15:11Z | 2022-08-23T07:18:28Z |
go-sqlmock | Sql mock driver for golang to test database interactions | 4647 | 354 | 63 | 2014-02-07T07:59:29Z | 2022-08-19T15:24:26Z |
mockery | A mock code autogenerator for Golang | 3816 | 300 | 76 | 2014-09-02T16:49:01Z | 2022-08-17T19:17:19Z |
hoverfly | Lightweight service virtualization/API simulation tool for developers and testers | 1905 | 187 | 35 | 2015-11-30T16:36:31Z | 2022-08-22T21:16:48Z |
gock | HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽ | 1680 | 87 | 34 | 2016-03-02T16:20:26Z | 2022-03-30T11:00:08Z |
httpmock | HTTP mocking for Golang | 1470 | 90 | 3 | 2014-02-24T16:47:59Z | 2022-05-06T14:54:46Z |
counterfeiter | A tool for generating self-contained, type-safe test doubles in go | 714 | 77 | 18 | 2014-05-21T00:12:54Z | 2022-07-28T17:06:12Z |
go-txdb | Immutable transaction isolated sql driver for golang | 473 | 35 | 6 | 2015-07-08T07:34:53Z | 2022-08-13T20:30:02Z |
minimock | Powerful mock generation tool for Go programming language | 460 | 27 | 12 | 2016-08-03T16:01:35Z | 2021-09-22T20:55:37Z |
govcr | HTTP mock for Golang: record and replay HTTP/HTTPS interactions for offline testing | 124 | 14 | 1 | 2016-07-10T17:47:41Z | 2022-08-25T20:22:23Z |
timex | A test-friendly replacement for golang's time package | 63 | 5 | 1 | 2020-01-02T18:06:48Z | 2020-08-03T08:54:37Z |
go-localstack | Go Wrapper for using localstack | 53 | 14 | 2 | 2020-03-18T07:13:02Z | 2022-08-25T00:31:04Z |
mockhttp | Mock object for Go http.ResponseWriter | 21 | 6 | 0 | 2011-06-11T16:03:01Z | 2014-10-29T22:14:22Z |
mockit | Library that make mocking of Go functions/methods easy | 9 | 3 | 2 | 2020-01-01T08:46:09Z | 2022-08-24T12:34:40Z |
genmock | Go mocking system with code generator for building calls of the interface methods. | - | - | - | - | - |
Fuzzing and delta-debugging/reducing/shrinking.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-fuzz | Randomized testing for Go | 4448 | 276 | 59 | 2015-04-15T13:07:50Z | 2022-07-26T12:23:15Z |
gofuzz | Fuzz testing for go. | 1306 | 117 | 12 | 2014-07-31T16:21:29Z | 2022-05-03T16:08:20Z |
tavor | A generic fuzzing and delta-debugging framework | 235 | 10 | 53 | 2014-05-18T14:59:14Z | 2018-10-31T19:43:32Z |
Selenium and browser control tools.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
chromedp | A faster, simpler way to drive browsers supporting the Chrome DevTools Protocol. | 8042 | 657 | 42 | 2017-01-24T14:54:30Z | 2022-08-14T05:43:12Z |
rod | A Devtools driver for web automation and scraping | 2691 | 198 | 75 | 2020-01-21T20:09:45Z | 2022-08-25T17:30:04Z |
selenoid | Selenium Hub successor running browsers within containers. Scalable, immutable, self hosted Selenium-Grid on any platform with single binary. | 2212 | 298 | 216 | 2016-08-22T09:11:16Z | 2022-07-12T20:37:45Z |
playwright-go | Playwright for Go a browser automation library to control Chromium, Firefox and WebKit with a single API. | 900 | 80 | 17 | 2020-08-16T12:46:14Z | 2022-06-24T08:47:39Z |
cdp | Package cdp provides type-safe bindings for the Chrome DevTools Protocol (CDP), written in the Go programming language. | 625 | 41 | 12 | 2017-03-12T10:25:41Z | 2022-06-07T07:55:18Z |
ggr | A lightweight load balancer used to create big Selenium clusters | 288 | 64 | 13 | 2016-06-16T15:33:24Z | 2022-05-30T07:58:50Z |
Fail injection
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
failpoint | An implementation of failpoints for Golang. | 729 | 61 | 6 | 2019-04-02T07:48:18Z | 2022-08-01T06:25:34Z |
Formatters
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-humanize | Go Humans! (formatters for units to human friendly sizes) | 3283 | 214 | 37 | 2012-01-13T03:48:55Z | 2022-03-20T11:49:52Z |
gommon | Common packages for Go | 459 | 99 | 15 | 2015-03-12T22:35:57Z | 2022-08-02T05:45:20Z |
gotabulate | Gotabulate - Easily pretty-print your tabular data with Go | 286 | 29 | 5 | 2014-08-21T07:44:28Z | 2021-02-09T14:02:15Z |
align | A general purpose application and library for aligning text. | 76 | 8 | 0 | 2017-04-29T23:22:22Z | 2021-09-12T16:21:36Z |
go-fixedwidth | Encoding and decoding for fixed-width formatted data | 64 | 26 | 4 | 2017-11-15T21:05:44Z | 2022-07-29T18:07:42Z |
address | Address handling for Go. | 54 | 2 | 0 | 2020-10-07T18:15:27Z | 2022-07-14T12:27:37Z |
textwrap | Port of Python's "textwrap" module to Go | 2 | 3 | 1 | 2019-07-26T17:57:55Z | 2019-08-03T19:01:29Z |
Markup Languages
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
blackfriday | Blackfriday: a markdown processor for Go | 4986 | 592 | 205 | 2011-05-27T22:28:58Z | 2022-08-11T08:57:39Z |
toml | TOML parser for Golang with reflection. | 3958 | 502 | 14 | 2013-02-26T05:05:48Z | 2022-08-21T21:54:14Z |
goldmark | 🏆 A markdown parser written in Go. Easy to extend, standard(CommonMark) compliant, well structured. | 2302 | 154 | 3 | 2019-04-26T11:24:21Z | 2022-08-06T10:59:47Z |
go-toml | Go library for the TOML file format | 1288 | 179 | 6 | 2013-02-24T17:45:51Z | 2022-08-23T01:06:01Z |
mxj | Decode / encode XML to/from map[string]interface{} (or JSON); extract values with dot-notation paths and wildcards. Replaces x2j and j2x packages. | 525 | 94 | 2 | 2014-02-03T13:39:16Z | 2022-08-02T16:01:39Z |
htmlquery | htmlquery is golang XPath package for HTML query. | 508 | 60 | 8 | 2017-12-05T01:08:41Z | 2022-05-25T13:05:13Z |
html-to-markdown | ⚙️ Convert HTML to Markdown. Even works with entire websites and can be extended through rules. | 382 | 55 | 8 | 2018-05-15T13:26:26Z | 2022-08-15T12:25:18Z |
goq | A declarative struct-tag-based HTML unmarshaling or scraping package for Go built on top of the goquery library | 217 | 17 | 2 | 2017-02-20T02:54:40Z | 2021-09-02T04:20:26Z |
github_flavored_markdown | GitHub Flavored Markdown renderer with fenced code block highlighting, clickable header anchor links. | 146 | 38 | 13 | 2015-05-16T04:09:07Z | 2021-02-28T21:35:44Z |
bafi | Universal JSON, BSON, YAML, CSV, XML converter with templates | 60 | 4 | 0 | 2021-07-13T10:48:40Z | 2022-05-23T07:24:31Z |
go-output-format | Output go objects in standard formats, such as YAML, JSON, etc | 7 | 2 | 0 | 2021-04-08T20:48:17Z | 2021-10-18T23:14:38Z |
bbConvert | Converter from BBCode to HTML | 6 | 3 | 0 | 2016-04-15T14:35:38Z | 2016-09-14T13:04:30Z |
Parsers/Encoders/Decoders
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
sh | A shell parser, formatter, and interpreter with bash support; includes shfmt | 5007 | 267 | 76 | 2016-01-16T08:39:09Z | 2022-08-03T18:25:14Z |
gofeed | Parse RSS, Atom and JSON feeds in Go | 1939 | 166 | 43 | 2016-01-23T02:44:34Z | 2022-06-19T19:03:57Z |
when | A natural language date/time parser with pluggable rules | 1165 | 69 | 14 | 2016-12-27T13:11:46Z | 2021-12-12T23:15:25Z |
commonregex | 🍫 A collection of common regular expressions for Go | 824 | 64 | 3 | 2017-03-23T14:33:18Z | 2019-11-12T07:22:40Z |
gographviz | Parses the Graphviz DOT language in golang | 492 | 70 | 8 | 2015-03-14T18:27:00Z | 2022-06-01T18:49:53Z |
omniparser | omniparser: a native Golang ETL streaming parser and transform library for CSV, JSON, XML, EDI, text, etc. | 487 | 31 | 1 | 2020-08-16T22:22:21Z | 2022-08-25T06:53:47Z |
go-nmea | A NMEA parser library in pure Go | 182 | 63 | 7 | 2015-07-22T08:55:54Z | 2022-04-08T18:46:54Z |
[ARCHIVED] sdp | RFC 4566 SDP implementation in go | 114 | 33 | 5 | 2016-05-13T14:35:11Z | 2020-05-03T07:27:16Z |
editorconfig-core-go | EditorConfig Core written in Go | 102 | 30 | 6 | 2016-07-05T03:50:41Z | 2022-08-15T08:45:51Z |
go-vcard | A Go library to parse and format vCard | 74 | 28 | 2 | 2017-03-21T08:30:36Z | 2022-05-07T12:26:42Z |
did | A golang package to work with Decentralized Identifiers (DIDs) | 64 | 18 | 4 | 2018-11-02T17:49:14Z | 2021-01-03T17:25:37Z |
allot | Parse placeholder and wildcard text commands | 55 | 9 | 3 | 2016-10-16T15:49:08Z | 2022-01-31T09:04:19Z |
parth | Path parsing for segment unmarshaling and slicing. | 41 | 6 | 0 | 2015-04-06T22:53:59Z | 2019-02-01T00:16:42Z |
gonameparts | Takes a full name and splits it into individual name parts | 37 | 4 | 2 | 2015-05-17T05:20:17Z | 2019-08-09T10:09:36Z |
normalize | 30 | 2 | 0 | 2021-03-22T09:25:14Z | 2021-04-01T08:47:45Z | |
xj2go | Convert xml and json to go struct | 26 | 9 | 0 | 2017-09-19T13:20:57Z | 2021-10-12T17:03:04Z |
codetree | 🌲 Parses indented code and returns a tree structure. | 21 | 5 | 0 | 2016-11-26T02:50:38Z | 2019-10-26T04:19:45Z |
tokenizer | Tokenizer (lexer) for golang | 17 | 0 | 1 | 2021-10-19T08:58:18Z | 2022-06-01T15:06:10Z |
parseargs-go | A string argument parser that understands quotes and backslashes | 9 | 5 | 1 | 2016-02-24T00:53:38Z | 2017-01-24T21:54:06Z |
go-fasttld | go-fasttld is a high performance top level domains (TLD) extraction module. | 9 | 1 | 2 | 2022-04-11T06:17:49Z | 2022-08-23T20:18:46Z |
encoding | Go package provides a generic interface to encoders and decoders | 7 | 2 | 1 | 2018-04-06T20:48:00Z | 2019-11-12T13:29:42Z |
ltsv | High performance LTSV (Labeled Tab Separeted Value) reader for Go. | 7 | 1 | 0 | 2019-05-12T06:11:04Z | 2019-06-23T05:47:44Z |
doi | Parse and check doi objects in go. | 6 | 2 | 0 | 2017-08-02T05:58:01Z | 2017-08-21T05:50:49Z |
Regular Expressions
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
regroup | Match regex group into go struct using struct tags and automatic parsing | 116 | 10 | 0 | 2020-09-08T19:04:42Z | 2021-07-30T15:53:28Z |
rex | Flexible regular expressions constructor for Golang. | 114 | 1 | 5 | 2022-06-13T17:30:44Z | 2022-07-01T08:26:07Z |
goregen | randexp for Go. | 74 | 13 | 5 | 2014-12-27T00:19:39Z | 2022-05-18T14:26:22Z |
genex | Genex package for Go | 67 | 7 | 0 | 2015-03-09T19:24:16Z | 2020-01-05T18:10:35Z |
go-wildcard | Fast and light wildcard pattern matching. Fork from Minio project. | 16 | 7 | 1 | 2021-03-28T16:31:41Z | 2022-07-27T17:17:30Z |
Sanitation
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
bluemonday | bluemonday: a fast golang HTML sanitizer (inspired by the OWASP Java HTML Sanitizer) to scrub user generated content of XSS | 2412 | 156 | 15 | 2013-11-20T22:15:49Z | 2022-08-04T19:27:21Z |
gofuckyourself | A sanitization-based swear filter for Go. | 48 | 7 | 3 | 2018-09-09T00:07:26Z | 2021-06-23T18:34:01Z |
Scrapers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
colly | Elegant Scraper and Crawler Framework for Golang | 17260 | 1442 | 149 | 2017-09-29T14:08:49Z | 2022-08-18T21:24:23Z |
goquery | A little like that j-thing, only in Go. | 11781 | 858 | 4 | 2012-08-29T02:14:59Z | 2022-06-19T21:19:17Z |
xurls | Extract urls from text | 946 | 107 | 2 | 2015-01-12T01:28:46Z | 2022-08-03T11:54:32Z |
dataflowkit | Extract structured data from web sites. Web sites scraping. | 538 | 69 | 0 | 2017-02-09T15:08:15Z | 2022-06-08T06:23:38Z |
gospider | ⚡ Light weight Golang spider framework 轻量的 Golang 爬虫框架 | 171 | 12 | 0 | 2020-06-17T06:01:39Z | 2021-03-16T07:18:08Z |
pagser | Pagser is a simple, extensible, configurable parse and deserialize html page to struct based on goquery and struct tags for golang crawler | 70 | 5 | 3 | 2020-04-19T09:22:00Z | 2022-01-06T02:36:35Z |
tagify | Tagify produces a set of tags from a given source. Source can be either an HTML page, a Markdown document or a plain text. Supports English, Russian, Chinese, Hindi, Spanish, Arabic, Japanese, German, Hebrew, French and Korean languages. | 23 | 3 | 2 | 2018-03-20T10:30:11Z | 2022-08-25T03:39:41Z |
RSS
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
podcast | iTunes and RSS 2.0 Podcast Generator in Golang | 110 | 30 | 5 | 2017-02-02T12:45:04Z | 2020-11-04T21:44:28Z |
syndfeed | A syndication feed parser for Atom 1.0 and RSS 2.0 in Go | 8 | 4 | 0 | 2017-04-07T09:30:55Z | 2018-03-13T02:31:36Z |
Utility/Miscellaneous
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-runewidth | wcwidth for golang | 477 | 76 | 11 | 2013-06-21T04:56:50Z | 2022-07-28T09:42:15Z |
radix | A fast string sorting algorithm (MSD radix sort) | 178 | 11 | 0 | 2017-06-09T14:38:58Z | 2018-03-08T12:29:25Z |
[ARCHIVED] go-zero-width | Zero-width character detection and removal for Go | 103 | 9 | 0 | 2018-06-18T13:55:09Z | 2020-08-06T14:29:12Z |
petrovich | Golang port of Petrovich - an inflector for Russian anthroponyms. | 39 | 5 | 0 | 2016-12-26T22:50:38Z | 2021-02-22T18:27:56Z |
kace | Common case conversions covering common initialisms. | 18 | 3 | 1 | 2015-06-04T20:36:49Z | 2018-08-26T21:35:11Z |
TySug | A project around helping to prevent typing typos. TySug (Typo Suggestions) suggests alternative words with respect to keyboard layouts | 12 | 3 | 2 | 2018-06-05T19:46:29Z | 2022-07-19T15:08:19Z |
Third-party APIs
Libraries for accessing third party APIs.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-github | Go library for accessing the GitHub v3 API | 8756 | 1797 | 49 | 2013-05-24T16:42:58Z | 2022-08-25T20:35:15Z |
aws-sdk-go | AWS SDK for the Go programming language. | 7834 | 1923 | 70 | 2014-12-05T05:29:41Z | 2022-08-25T19:24:10Z |
slack | Slack API in Go - community-maintained fork created by the original author, @nlopes | 4023 | 997 | 92 | 2015-01-24T14:19:00Z | 2022-08-24T16:38:42Z |
discordgo | (Golang) Go bindings for Discord | 3296 | 616 | 87 | 2015-11-01T20:51:01Z | 2022-08-18T12:51:53Z |
google-api-go-client | Auto-generated Google APIs for Go. | 3138 | 976 | 23 | 2014-11-24T21:45:36Z | 2022-08-25T21:04:59Z |
google-cloud-go | Google Cloud Client Libraries for Go. | 3016 | 1068 | 233 | 2014-05-09T11:11:58Z | 2022-08-25T21:08:19Z |
minio-go | MinIO Go client SDK for S3 compatible object storage | 1674 | 513 | 5 | 2015-05-02T02:36:46Z | 2022-08-04T07:51:32Z |
stripe-go | Go library for the Stripe API. | 1624 | 417 | 7 | 2014-06-05T23:38:14Z | 2022-08-25T19:35:03Z |
go-twitter | Go Twitter REST and Streaming API v1.1 | 1521 | 301 | 16 | 2015-04-11T23:26:07Z | 2022-08-22T08:13:05Z |
go-jira | Go client library for Atlassian Jira | 1166 | 395 | 89 | 2015-08-20T15:02:46Z | 2022-08-25T12:23:19Z |
anaconda | A Go client library for the Twitter 1.1 API | 1121 | 253 | 73 | 2013-03-04T22:46:07Z | 2022-05-05T13:13:21Z |
A Facebook Graph API SDK For Go. | 1078 | 442 | 1 | 2012-07-28T19:05:56Z | 2022-05-05T10:06:34Z | |
githubv4 | Package githubv4 is a client library for accessing GitHub GraphQL API v4 (https://docs.github.com/en/graphql). | 909 | 76 | 36 | 2017-05-27T05:05:31Z | 2022-06-04T18:16:28Z |
webhooks | 🎣 Webhook receiver for GitHub, Bitbucket, GitLab, Gogs | 770 | 193 | 35 | 2015-10-25T17:38:13Z | 2022-08-07T15:18:16Z |
paypal | Golang client for PayPal REST API | 517 | 229 | 4 | 2015-10-14T04:57:49Z | 2022-07-22T08:48:53Z |
geo-golang | Go library to access geocoding and reverse geocoding APIs | 440 | 56 | 9 | 2014-12-04T08:18:31Z | 2022-02-15T10:33:17Z |
twitter-scraper | Scrape the Twitter Frontend API without authentication with Golang. | 247 | 57 | 4 | 2018-11-29T15:31:50Z | 2022-06-16T08:22:32Z |
ethrpc | Golang client for ethereum json rpc api | 239 | 98 | 10 | 2017-01-24T09:47:00Z | 2022-08-11T08:51:26Z |
lark | Feishu/Lark Open API Go SDK, Support ALL Open API and Event Callback. | 220 | 36 | 4 | 2021-04-21T16:11:25Z | 2022-08-23T14:36:35Z |
trello | Trello API wrapper for Go | 201 | 68 | 8 | 2016-09-24T04:36:10Z | 2022-06-20T02:47:15Z |
go-marathon | A GO API library for working with Marathon | 195 | 132 | 27 | 2015-02-11T13:25:26Z | 2020-10-01T16:32:07Z |
medium-sdk-go | A Golang SDK for Medium's OAuth2 API | 132 | 22 | 6 | 2015-09-26T23:45:46Z | 2018-10-26T20:37:15Z |
gostorm | 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. | 128 | 21 | 5 | 2013-07-22T12:43:41Z | 2017-10-09T12:00:28Z |
wit-go | Go client for wit.ai HTTP API | 126 | 29 | 0 | 2018-08-20T07:18:40Z | 2022-05-16T15:36:46Z |
pushover | Go wrapper for the Pushover API | 125 | 9 | 1 | 2015-02-19T15:30:05Z | 2021-10-21T12:21:35Z |
go-trending | Go library for accessing trending repositories and developers at Github. | 121 | 17 | 1 | 2015-07-04T08:06:48Z | 2022-08-22T18:38:47Z |
hipchat | A golang package to communicate with HipChat over XMPP | 110 | 37 | 3 | 2013-04-28T02:16:21Z | 2017-06-12T14:49:06Z |
lark | An easy-to-use SDK for Feishu and Lark Open Platform (Messaging API only) | 109 | 15 | 2 | 2021-04-20T12:09:03Z | 2022-08-15T12:20:20Z |
hipchat | This project implements a Go client library for the Hipchat API. | 104 | 22 | 0 | 2012-10-20T18:34:06Z | 2016-03-24T19:12:10Z |
cachet | Go(lang) client library for Cachet (open source status page system). | 90 | 12 | 1 | 2015-10-31T12:30:07Z | 2021-06-22T17:03:41Z |
simples3 | Simple no frills AWS S3 Golang Library using REST with V4 Signing (without AWS Go SDK) | 89 | 19 | 2 | 2018-12-06T10:24:21Z | 2022-07-11T05:35:26Z |
gosip | ⚡️ SharePoint API client for Go (Golang) | 79 | 26 | 11 | 2019-01-26T08:48:48Z | 2022-07-24T18:58:26Z |
igdb | Go client for the Internet Game Database API | 75 | 14 | 3 | 2017-08-24T08:31:53Z | 2021-03-15T21:23:29Z |
gogtrends | Unofficial Google Trends API for Go | 66 | 20 | 0 | 2018-12-27T13:50:34Z | 2022-06-14T20:16:11Z |
go-unsplash | Go Client for the Unsplash API | 66 | 13 | 8 | 2017-01-19T07:04:04Z | 2022-07-07T05:30:53Z |
go-circleci | Go library for interacting with CircleCI | 64 | 50 | 5 | 2015-08-14T21:19:36Z | 2019-11-21T00:02:51Z |
clarifai-go | DEPRECATED: please use https://github.com/Clarifai/clarifai-go-grpc | 56 | 14 | 8 | 2015-09-28T23:33:59Z | 2017-08-28T17:25:50Z |
golang-tmdb | This is a Golang wrapper for working with TMDb API. It aims to support version 3. | 54 | 14 | 0 | 2019-01-11T22:59:33Z | 2022-05-30T22:34:20Z |
megos | Go(lang) client library for accessing information of an Apache Mesos cluster. | 54 | 11 | 0 | 2015-10-02T14:29:20Z | 2021-06-22T17:06:10Z |
go-amazon-product-advertising-api | Go Client Library for Amazon Product Advertising API | 53 | 15 | 3 | 2016-11-15T15:37:32Z | 2018-04-05T22:06:29Z |
ynab.go | Go client for the YNAB API. Unofficial. It covers 100% of the resources made available by the YNAB API. | 52 | 16 | 5 | 2018-07-13T11:10:54Z | 2021-09-15T04:45:36Z |
go-atlassian | ✨ Golang Client Library for Atlassian Cloud. | 52 | 6 | 1 | 2021-01-02T02:06:32Z | 2022-08-25T18:34:07Z |
go-postman-collection | Go module to work with Postman Collections | 50 | 14 | 2 | 2019-11-16T12:13:32Z | 2022-07-20T14:59:41Z |
gads | Google Adwords API for Go | 49 | 58 | 8 | 2014-01-20T02:22:15Z | 2021-12-13T21:56:08Z |
uptimerobot | Client library for UptimeRobot v2 API | 49 | 12 | 13 | 2018-05-29T10:27:19Z | 2022-07-13T14:45:53Z |
mixpanel | Golang Mixpanel Client | 48 | 30 | 2 | 2014-05-20T03:50:34Z | 2022-08-24T23:12:39Z |
fcm | Firebase Cloud Messaging for application servers implemented using the Go programming language. | 47 | 15 | 2 | 2017-01-06T08:30:57Z | 2020-03-06T05:17:46Z |
gomusicbrainz | a Go (Golang) MusicBrainz WS2 client library - work in progress | 46 | 18 | 5 | 2014-09-10T16:42:33Z | 2021-02-09T23:41:40Z |
go-xkcd | xkcd.com API client in Go | 45 | 5 | 1 | 2016-02-26T05:14:31Z | 2021-10-27T13:26:22Z |
airtable | Simple golang airtable API wrapper | 43 | 12 | 1 | 2020-04-12T10:05:07Z | 2022-03-25T09:56:24Z |
go-spotify | Go library for the Spotify Web API | 43 | 7 | 0 | 2014-10-30T02:52:04Z | 2020-12-03T22:51:03Z |
google-play-scraper | Golang scraper to get data from Google Play Store | 38 | 13 | 1 | 2019-09-20T14:03:01Z | 2022-08-23T09:48:37Z |
golyrics | A simple Go package to fetch lyrics from Wikia | 38 | 2 | 0 | 2016-11-18T04:40:37Z | 2018-06-30T08:33:13Z |
patreon-go | Patreon Go API client | 32 | 17 | 1 | 2017-08-06T21:15:14Z | 2019-09-17T02:27:28Z |
[ARCHIVED] translate | Go online translation package | 31 | 6 | 0 | 2015-07-13T15:42:13Z | 2016-02-28T15:13:19Z |
go-myanimelist | Go library for accessing the MyAnimeList API: https://myanimelist.net/apiconfig/references/api/v2 | 31 | 2 | 2 | 2015-05-03T10:07:05Z | 2022-05-31T16:42:37Z |
[ARCHIVED] gami | GO - Asterisk AMI Interface | 30 | 29 | 1 | 2014-05-14T16:11:37Z | 2018-06-26T10:42:14Z |
gcm | Google Cloud Messaging for application servers implemented using the Go programming language. | 30 | 4 | 0 | 2015-11-09T16:16:25Z | 2015-12-04T14:37:11Z |
lastpass-go | Golang client for LastPass | 29 | 6 | 2 | 2019-07-11T14:26:39Z | 2022-07-20T17:19:36Z |
go-steam | Go library for querying Source servers | 27 | 6 | 2 | 2014-11-23T16:34:56Z | 2021-09-07T16:30:55Z |
go-imgur | Go library to use the imgur.com API | 23 | 7 | 1 | 2016-03-30T22:05:35Z | 2022-07-17T12:16:14Z |
go-shopify | Simple Shopify API for the Go Programming Language | 23 | 6 | 2 | 2014-10-28T02:53:25Z | 2020-12-03T22:50:32Z |
go-twitch | A golang client for the Twitch v3 API - public APIs only (for now) | 21 | 3 | 3 | 2016-06-28T20:54:34Z | 2017-08-23T16:28:21Z |
codeship-go | Go library for accessing the Codeship API v2 | 18 | 9 | 2 | 2017-09-08T16:49:59Z | 2020-11-03T16:20:17Z |
jokeapi | Official golang wrapper for Sv443's jokeapi. | 18 | 2 | 0 | 2020-11-22T10:43:16Z | 2022-04-28T14:33:11Z |
brewerydb | Go library for http://www.brewerydb.com/ API | 18 | 1 | 5 | 2015-04-15T02:59:41Z | 2015-06-18T19:34:13Z |
textbelt | golang library for textbelt.com | 17 | 1 | 0 | 2015-09-01T22:46:42Z | 2015-09-04T14:12:39Z |
go-hacknews | 📟 Tiny utility Go client for HackerNews API. | 16 | 1 | 0 | 2017-08-10T20:44:02Z | 2017-08-15T07:51:32Z |
coinpaprika-api-go-client | Go client library for interacting with Coinpaprika's API | 15 | 7 | 1 | 2018-09-25T07:34:50Z | 2020-09-16T05:09:30Z |
device-check-go | 📱 iOS DeviceCheck SDK for Go - query and modify the per-device bits | 15 | 5 | 3 | 2019-04-11T13:09:11Z | 2022-05-13T15:40:58Z |
go-aws-news | Go app + library to fetch what's new from AWS | 14 | 3 | 0 | 2020-01-08T00:59:39Z | 2022-07-10T16:01:57Z |
gopaapi5 | Go Client Library for Amazon's Product Advertising API 5.0 | 12 | 6 | 0 | 2020-02-15T06:21:31Z | 2020-04-03T18:38:34Z |
go-google-analytics | Simple Reporting for Google Analytics | 12 | 3 | 0 | 2015-06-01T13:50:00Z | 2015-06-09T11:38:07Z |
go-openproject | Go client library for OpenProject | 11 | 4 | 5 | 2021-02-13T23:23:13Z | 2021-04-09T08:39:38Z |
go-here | Go client library around the HERE location based APIs. | 10 | 5 | 0 | 2019-07-07T12:14:34Z | 2020-06-23T13:20:37Z |
go-sophos | Sophos UTM 9 REST API Client in Golang | 10 | 4 | 1 | 2018-09-05T04:37:25Z | 2022-05-06T02:42:29Z |
smitego | SmiteGo is an API wrapper for the Smite game from HiRez. It is written in Go! | 10 | 1 | 0 | 2013-12-11T02:38:19Z | 2014-07-18T15:51:45Z |
gomalshare | Go library MalShare API | 9 | 3 | 0 | 2019-03-01T09:33:41Z | 2019-04-29T08:00:01Z |
bqwriter | Stream data into Google BigQuery concurrently using InsertAll() or BQ Storage. | 9 | 2 | 0 | 2021-10-12T13:58:18Z | 2022-08-16T09:38:26Z |
[ARCHIVED] rrdaclient | Go bindings for RRDA https://github.com/fcambus/rrda | 8 | 0 | 0 | 2014-09-15T21:06:16Z | 2014-09-19T16:36:10Z |
gumblr | A Go Wrapper for the Tumblr v2 API | 7 | 6 | 0 | 2015-07-09T23:13:51Z | 2016-10-30T23:45:20Z |
go-google-email-audit-api | Go Client Library for G Suite Email Audit API | 7 | 5 | 0 | 2016-10-24T02:34:29Z | 2016-10-26T12:55:17Z |
rawg-sdk-go | This is RAWG SDK GO. This library contains methods for interacting with RAWG API. | 7 | 2 | 0 | 2020-10-16T15:31:37Z | 2022-05-28T10:05:10Z |
libgoffi | libgoffi - libffi adapter library for Go | 7 | 1 | 0 | 2019-08-03T17:05:34Z | 2020-08-23T13:02:21Z |
goami2 | Simple Asterisk Manager Interface (AMI) library fo golang | 7 | 0 | 0 | 2019-06-03T19:57:25Z | 2022-06-24T15:33:22Z |
go-zooz | Zooz API client for Go | 6 | 6 | 0 | 2017-07-04T09:28:23Z | 2022-06-09T11:27:39Z |
go-chronos | 👯 Go Chronos 3.x REST API Client | 6 | 3 | 0 | 2017-10-23T12:19:01Z | 2018-01-23T14:00:43Z |
go-sptrans | Go client library for the SPTrans Olho Vivo API. 🚌 | 6 | 1 | 0 | 2017-09-11T01:21:28Z | 2020-09-16T22:40:59Z |
go-swagger-ui | Golang package which provides http Handlers to serve the swagger ui | 5 | 0 | 0 | 2021-05-25T01:26:09Z | 2021-06-04T20:38:49Z |
goagi | AGI library for Go | 4 | 0 | 0 | 2019-07-15T02:32:56Z | 2022-06-24T15:17:20Z |
go-hibp | 🔑 Go bindings to the HIBP API | 4 | 0 | 0 | 2021-09-19T15:58:01Z | 2022-06-10T07:19:13Z |
appstore-sdk-go | Golang SDK for AppStore Connect API (Unofficial) | 2 | 1 | 0 | 2020-06-11T10:05:56Z | 2022-06-16T19:03:47Z |
go-restcountries | Go wrapper for the REST Countries API. | 2 | 0 | 0 | 2021-08-01T17:49:51Z | 2021-10-27T15:38:43Z |
newsapi-go | Go client for NewsAPI | 2 | 0 | 0 | 2022-02-22T20:56:15Z | 2022-06-30T06:40:10Z |
tripadvisor-golang | A TripAdvisor API wrapper for Golang. | 1 | 1 | 0 | 2019-04-15T18:12:11Z | 2019-10-23T15:20:38Z |
vl-go | Go client library around the VerifID identity verification layer API. | 1 | 1 | 0 | 2019-02-09T12:46:53Z | 2021-05-30T19:02:02Z |
playlyfe-go-sdk | This is the official Playlyfe Golang Sdk | 1 | 1 | 0 | 2015-05-25T09:34:47Z | 2016-03-06T10:21:06Z |
dusupay-sdk-go | Golang SDK for Dusupay payment gateway API (Unofficial) | 1 | 0 | 0 | 2022-02-13T08:53:24Z | 2022-06-16T19:28:22Z |
fasapay-sdk-go | Fasapay payment gateway XML API Client for Go (Unofficial) | 0 | 0 | 0 | 2022-03-26T19:28:26Z | 2022-06-16T19:15:37Z |
go-telegraph | Telegraph publishing platform API client. | - | - | - | - | - |
go-yapla | Go client library for the Yapla v2.0 API. | - | - | - | - | - |
Utilities
General utilities and tools to make your life easier.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
fzf | 🌸 A command-line fuzzy finder | 46531 | 1992 | 302 | 2013-10-23T16:04:23Z | 2022-08-25T08:55:16Z |
hub | A command-line tool that makes git easier to use with GitHub. | 21987 | 2333 | 277 | 2009-12-05T22:15:25Z | 2022-08-25T15:28:57Z |
ctop | Top-like interface for container metrics | 13189 | 506 | 73 | 2016-12-27T02:25:57Z | 2022-08-01T11:32:57Z |
sqlx | general purpose extensions to golang's database/sql | 12469 | 960 | 298 | 2013-01-28T19:40:00Z | 2022-07-26T11:24:18Z |
goreleaser | Deliver Go binaries as fast and easily as possible | 10512 | 729 | 16 | 2016-12-21T17:13:39Z | 2022-08-25T17:45:24Z |
wuzz | Interactive cli tool for HTTP inspection | 10050 | 422 | 42 | 2017-01-30T21:22:00Z | 2022-06-29T04:44:42Z |
usql | Universal command-line interface for SQL databases | 7523 | 294 | 69 | 2017-03-02T13:03:21Z | 2022-08-25T11:35:50Z |
lo | 💥 A Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...) | 7407 | 286 | 83 | 2022-03-02T12:48:45Z | 2022-08-17T12:27:49Z |
peco | Simplistic interactive filtering tool | 7075 | 232 | 44 | 2014-06-06T06:06:32Z | 2022-08-15T01:56:17Z |
godropbox | Common libraries for writing Go services/applications. | 4048 | 440 | 1 | 2014-06-22T23:09:29Z | 2022-08-18T17:48:22Z |
go-funk | A modern Go utility library which provides helpers (map, find, contains, filter, ...) | 3775 | 230 | 14 | 2016-12-30T13:55:15Z | 2022-08-25T13:29:11Z |
hystrix-go | Netflix's Hystrix latency and fault tolerance library, for Go | 3735 | 436 | 55 | 2013-12-15T08:51:23Z | 2022-03-10T16:10:28Z |
panicparse | Crash your app in style (Golang) | 3220 | 95 | 2 | 2015-02-02T02:14:41Z | 2022-08-14T15:16:35Z |
minify | Go minifiers for web formats | 3073 | 194 | 12 | 2014-05-21T09:03:48Z | 2022-08-10T18:47:22Z |
goreporter | A Golang tool that does static analysis, unit testing, code review and generate code quality report. | 2995 | 269 | 29 | 2017-03-27T08:46:38Z | 2018-10-27T22:30:57Z |
mc | MinIO Client is a replacement for ls, cp, mkdir, diff and rsync commands for filesystems and object storage. | 2213 | 424 | 29 | 2015-01-16T02:56:51Z | 2022-08-25T15:03:03Z |
mergo | Mergo: merging Go structs and maps since 2013. | 2025 | 229 | 33 | 2013-03-11T22:51:11Z | 2022-08-25T03:12:10Z |
storm | Simple and powerful toolkit for BoltDB | 1913 | 134 | 64 | 2016-01-10T12:55:59Z | 2021-05-14T06:46:07Z |
lancet | A comprehensive, efficient, and reusable util function library of go. | 1642 | 193 | 3 | 2021-11-28T13:18:19Z | 2022-08-25T06:04:52Z |
mole | CLI application to create ssh tunnels focused on resiliency and user experience. | 1586 | 90 | 22 | 2018-10-04T02:38:00Z | 2022-07-22T02:20:51Z |
filetype | Fast, dependency-free Go package to infer binary file types based on the magic numbers header signature | 1581 | 142 | 32 | 2015-09-24T09:15:51Z | 2022-07-18T15:52:05Z |
boilr | ⚡ boilerplate template manager that generates files or directories from template repositories | 1496 | 116 | 45 | 2015-12-19T16:57:26Z | 2021-12-15T19:04:23Z |
gitbatch | manage your git repositories in one place | 1467 | 53 | 18 | 2018-11-17T12:57:53Z | 2021-08-07T01:39:54Z |
cli | ✨ Create a new production-ready project with backend, frontend and deploy automation by running one CLI command! | 1465 | 193 | 0 | 2019-12-30T22:08:38Z | 2022-08-15T13:47:27Z |
jump | Jump helps you navigate faster by learning your habits. ✌️ | 1415 | 52 | 1 | 2015-08-16T22:07:17Z | 2022-08-07T18:24:47Z |
easeprobe | A simple, standalone, and lightWeight tool that can do health/status checking, written in Go. | 1142 | 111 | 0 | 2022-02-24T04:55:32Z | 2022-08-25T10:42:06Z |
circuitbreaker | Circuit Breakers in Go | 1022 | 116 | 20 | 2014-07-17T22:41:33Z | 2022-08-04T12:29:27Z |
gtm | Simple, seamless, lightweight time tracking for Git | 901 | 50 | 51 | 2016-06-19T21:17:04Z | 2022-01-31T15:31:34Z |
hostctl | Your dev tool to manage /etc/hosts like a pro! | 799 | 37 | 9 | 2020-03-14T11:29:02Z | 2022-08-24T14:25:48Z |
mimetype | A fast Golang library for media type and file extension detection, based on magic numbers | 792 | 117 | 54 | 2018-07-02T07:15:29Z | 2022-08-24T11:28:14Z |
immortal | ⭕ A *nix cross-platform (OS agnostic) supervisor | 747 | 50 | 3 | 2016-06-30T17:02:27Z | 2022-06-06T18:56:49Z |
circuit | An efficient and feature complete Hystrix like Go implementation of the circuit breaker pattern. | 658 | 41 | 7 | 2017-12-23T22:17:43Z | 2022-06-27T23:42:54Z |
scany | Library for scanning data from a database into Go structs and more | 638 | 44 | 14 | 2020-07-02T11:02:58Z | 2022-08-21T17:05:42Z |
htcat | Parallel and Pipelined HTTP GET Utility | 549 | 30 | 5 | 2013-08-05T11:17:01Z | 2019-02-26T22:54:07Z |
ergo | The management of multiple apps running over different ports made easy | 532 | 54 | 19 | 2017-08-19T18:41:56Z | 2022-08-06T06:24:59Z |
delve | Delve is a debugger for the Go programming language. | 514 | 113 | 1 | 2020-02-18T18:03:33Z | 2022-08-23T15:55:09Z |
koazee | A StreamLike, Immutable, Lazy Loading and smart Golang Library to deal with slices. | 505 | 29 | 16 | 2018-11-09T09:49:19Z | 2020-11-18T17:04:42Z |
godaemon | Daemonize Go applications deviously. | 487 | 56 | 8 | 2013-08-01T17:16:30Z | 2021-06-29T04:55:28Z |
go-dry | DRY (don't repeat yourself) package for Go | 478 | 36 | 0 | 2014-02-28T13:49:31Z | 2022-02-05T12:45:50Z |
gopencils | Easily consume REST APIs with Go (golang) | 437 | 42 | 7 | 2014-06-23T11:41:24Z | 2019-02-18T01:03:37Z |
request | A developer-friendly HTTP request library for Gopher. | 418 | 39 | 6 | 2014-12-21T04:30:42Z | 2019-12-05T09:11:26Z |
gubrak | ⚙️ Golang functional utility library with syntactic sugar. It's like lodash, but for Go | 411 | 33 | 0 | 2018-03-09T11:28:05Z | 2020-05-26T11:07:56Z |
clockwork | a fake clock for golang | 409 | 51 | 7 | 2014-09-09T18:24:00Z | 2022-07-27T00:54:21Z |
deepcopier | simple struct copying for golang | 391 | 53 | 7 | 2015-07-24T18:01:01Z | 2020-04-30T08:31:45Z |
changie | Automated changelog tool for preparing releases with lots of customization options | 376 | 17 | 6 | 2020-12-05T19:38:33Z | 2022-08-23T17:02:38Z |
go-rate | A timed rate limiter for Go | 367 | 33 | 0 | 2014-08-25T04:42:34Z | 2022-02-14T23:34:05Z |
retry | ♻️ The most advanced interruptible mechanism to perform actions repetitively until successful. | 323 | 15 | 9 | 2016-11-02T20:20:43Z | 2021-02-23T07:20:20Z |
mani | 🤖 CLI tool to help you manage repositories | 304 | 11 | 3 | 2019-10-22T20:05:11Z | 2022-06-19T16:08:34Z |
scan | Scan database/sql rows directly to structs, slices, and primitive types | 300 | 21 | 3 | 2017-11-27T23:22:18Z | 2022-07-30T19:08:48Z |
serve | 🍽️ a static http server anywhere you need one. | 275 | 16 | 4 | 2019-01-10T23:31:52Z | 2022-08-03T02:51:44Z |
[ARCHIVED] gohper | [UNMATAINED] common libs here. | 256 | 47 | 0 | 2015-03-23T22:46:12Z | 2017-08-12T06:53:29Z |
util | A collection of useful utility functions | 253 | 39 | 1 | 2017-05-24T00:21:29Z | 2022-07-17T17:51:30Z |
clipboard | 📋 cross-platform clipboard package that supports accessing text and image in Go (macOS/Linux/Windows/Android/iOS) | 253 | 31 | 8 | 2020-11-19T11:42:08Z | 2022-06-18T03:08:48Z |
gotenv | Load environment variables from .env or io.Reader in Go. |
228 | 28 | 2 | 2013-08-27T12:56:47Z | 2022-08-23T09:30:50Z |
go-trigger | A Global event triggerer for golang. Defines functions as event with id string. Trigger the event anywhere from your project. | 227 | 41 | 1 | 2015-10-19T09:42:17Z | 2017-03-28T16:18:42Z |
grofer | A system and resource monitoring tool written in Golang! | 217 | 41 | 12 | 2020-08-01T16:26:03Z | 2022-07-18T07:35:09Z |
wifiqr | Create a QR code with your Wi-Fi login details | 211 | 11 | 0 | 2020-12-08T15:43:55Z | 2022-07-09T17:46:52Z |
go-pattern-match | Pattern matchings for Go. | 183 | 9 | 1 | 2018-12-11T20:11:17Z | 2020-06-28T20:14:38Z |
toolbox | Toolbox - go utility library | 181 | 25 | 2 | 2016-06-13T19:33:35Z | 2022-07-01T17:44:23Z |
death | Managing go application shutdown with signals. | 181 | 18 | 0 | 2015-03-09T03:50:40Z | 2022-05-28T20:23:00Z |
go-bind-plugin | go-bind-plugin generates API for exported plugin symbols (-buildmode=plugin) - go1.8+ only (http://golang.org/pkg/plugin) | 181 | 11 | 0 | 2016-11-08T14:40:26Z | 2019-08-29T11:59:32Z |
go-sitemap-generator | go-sitemap-generator is the easiest way to generate Sitemaps in Go | 180 | 57 | 25 | 2015-10-12T16:23:13Z | 2021-12-24T12:51:17Z |
rospo | 🐸 Simple, reliable, persistent ssh tunnels with embedded ssh server | 179 | 13 | 1 | 2021-04-02T13:16:14Z | 2022-08-07T10:40:49Z |
countries | Countries - ISO 3166 (ISO3166-1, ISO3166, Digit, Alpha-2 and Alpha-3) countries codes and names (on eng and rus), ISO 4217 currency designators, ITU-T E.164 IDD calling phone codes, countries capitals, UN M.49 regions codes, ccTLD countries domains, IOC/NOC and FIFA letters codes, VERY VERY FAST, NO maps[], NO slices[], NO init() funcs, NO external links/files/data, NO interface{}, NO specific dependencies, Databases/JSON/GOB/XML/CSV compatible, Emoji countries flags and currencies support, full support ISO-3166-1, ISO-4217, ITU-T E.164, Unicode CLDR and ccTLD standarts. | 174 | 34 | 1 | 2019-04-22T14:47:11Z | 2022-07-26T07:46:18Z |
rerun | Configurable recompiling and rerunning go apps when source changes | 164 | 10 | 0 | 2014-12-10T00:29:54Z | 2018-03-22T19:46:51Z |
moldova | A lightweight templating system for generating random data | 161 | 6 | 0 | 2016-01-30T05:25:39Z | 2017-09-04T15:06:03Z |
apm | APM is a process manager for Golang applications. | 159 | 78 | 9 | 2015-11-18T16:56:48Z | 2016-11-24T20:58:45Z |
robustly | Run functions resiliently in Go, catching and restarting panics | 153 | 7 | 1 | 2013-07-08T13:27:10Z | 2021-04-26T21:51:12Z |
chyle | Changelog generator : use a git repository and various data sources and publish the result on external services | 145 | 10 | 0 | 2016-11-17T21:14:44Z | 2022-08-17T09:45:08Z |
go-bsdiff | Pure Go bsdiff and bspatch libraries and CLI tools. | 132 | 17 | 0 | 2019-02-23T23:33:50Z | 2019-03-21T12:35:11Z |
onecache | One caching API, Multiple backends | 128 | 8 | 0 | 2017-04-14T21:49:15Z | 2020-05-25T15:44:21Z |
lrserver | LiveReload server for Go [golang] | 121 | 12 | 0 | 2014-07-15T05:36:53Z | 2017-11-29T20:31:22Z |
cryptgo | A terminal application to watch crypto prices! | 117 | 14 | 6 | 2021-05-20T06:36:28Z | 2021-10-17T13:19:34Z |
nostromo | CLI for building powerful aliases | 117 | 7 | 8 | 2019-07-13T04:51:46Z | 2022-06-02T00:37:52Z |
sorty | ⚡ Fast Concurrent / Parallel Sorting in Go | 107 | 2 | 0 | 2019-02-18T21:05:45Z | 2022-03-31T00:54:07Z |
mongo-go-pagination | Golang Mongodb Pagination for official mongodb/mongo-go-driver package which supports both normal queries and Aggregation pipelines with all information like Total records, Page, Per Page, Previous, Next, Total Page and query results. | 103 | 33 | 0 | 2020-02-04T08:23:33Z | 2022-08-09T18:01:02Z |
limiters | Golang rate limiters for distributed applications | 101 | 18 | 1 | 2019-08-28T18:09:54Z | 2022-01-04T06:30:34Z |
mssqlx | Database client library, proxy for any master slave, master master structures. Lightweight, performant and auto balancing in mind. | 101 | 12 | 0 | 2016-12-26T04:05:09Z | 2022-07-04T14:02:25Z |
cmd | A simple package to execute shell commands on linux, windows and osx | 100 | 12 | 4 | 2019-09-27T13:22:06Z | 2022-07-04T16:19:25Z |
goseaweedfs | A complete Golang client for SeaweedFS | 96 | 36 | 2 | 2017-07-20T04:35:39Z | 2022-06-01T23:54:33Z |
xferspdy | Xferspdy provides binary diff and patch library in golang. [Mentioned in Awesome Go, https://github.com/avelino/awesome-go] | 93 | 12 | 3 | 2015-05-22T13:23:34Z | 2021-04-04T09:44:40Z |
filter | ⏳ Provide filtering, sanitizing, and conversion of Golang data. 提供对Golang数据的过滤,净化,转换。 | 89 | 8 | 0 | 2018-09-26T09:11:13Z | 2022-08-19T09:00:17Z |
go-health | ❤ Health check your applications and dependencies | 89 | 5 | 0 | 2018-02-13T18:40:54Z | 2022-01-19T10:53:34Z |
goval | Expression evaluation in golang | 83 | 12 | 0 | 2018-06-17T15:43:44Z | 2021-02-02T17:11:01Z |
repeat | Go implementation of different backoff strategies useful for retrying operations and heartbeating. | 80 | 6 | 0 | 2017-11-22T07:06:47Z | 2020-07-24T08:18:11Z |
pm | Processlist manager with TCP listener | 77 | 7 | 2 | 2013-11-17T19:17:01Z | 2020-12-15T17:40:41Z |
go-lock | go-lock is a lock library implementing read-write mutex and read-write trylock without starvation | 76 | 10 | 0 | 2020-04-30T11:40:21Z | 2022-06-18T04:20:42Z |
mimemagic | Powerful and versatile MIME sniffing package using pre-compiled glob patterns, magic number signatures, XML document namespaces, and tree magic for mounted volumes, generated from the XDG shared-mime-info database. | 76 | 9 | 2 | 2018-10-11T16:12:54Z | 2021-12-13T04:48:58Z |
netbug | Package netbug provides a handler for registering profilers on your own ServeMux. | 70 | 5 | 0 | 2015-03-05T19:27:29Z | 2015-10-29T17:28:38Z |
pgo | Go library for PHP community with convenient functions | 69 | 16 | 1 | 2018-12-26T06:59:47Z | 2022-08-12T09:52:29Z |
unis | UNIS: A Common Architecture for String Utilities within the Go Programming Language. | 69 | 4 | 2 | 2017-05-06T05:01:03Z | 2017-05-09T16:17:33Z |
handy | GO Golang Utilities and helpers like validators and string formatters | 68 | 7 | 0 | 2018-06-13T13:10:07Z | 2020-09-30T01:22:20Z |
goreadability | Webpage summary extractor using Facebook Open Graph and arc90's readability | 65 | 8 | 2 | 2016-04-20T01:40:14Z | 2019-04-22T09:46:39Z |
multitick | A multiplexor for aligned time.Time tickers in Go | 63 | 3 | 1 | 2013-12-10T16:47:26Z | 2021-04-26T21:18:13Z |
minquery | MongoDB / mgo query that supports efficient pagination (cursors to continue listing documents where we left off). | 59 | 21 | 4 | 2016-11-16T12:23:07Z | 2022-08-12T13:40:13Z |
go-astitodo | Parse TODOs in your GO code | 58 | 9 | 2 | 2016-10-17T19:51:36Z | 2020-08-17T22:56:15Z |
golog | Easy and simple CLI time tracker for your tasks | 57 | 12 | 15 | 2016-01-09T15:43:47Z | 2019-01-22T17:34:26Z |
retry | Simple and easy retry mechanism package for Go | 55 | 6 | 0 | 2018-02-25T19:08:03Z | 2022-01-04T07:54:02Z |
slice | Type-safe functions for common Go slice operations | 50 | 6 | 1 | 2019-11-26T05:20:39Z | 2020-04-09T15:24:07Z |
copy-pasta | Universal copy paste service, works across different machines! | 49 | 11 | 10 | 2017-01-28T15:35:24Z | 2020-06-20T13:33:28Z |
golarm | Fire alarms with system events | 48 | 9 | 0 | 2015-08-14T16:51:53Z | 2015-08-24T13:33:34Z |
beyond | The Go library that will drive you to AOP world! | 47 | 11 | 9 | 2019-10-18T05:41:45Z | 2022-07-22T04:30:01Z |
dbt | Dynamic Binary Toolkit- A framework for running self-updating signed binaries from a central, trusted repository. | 47 | 7 | 6 | 2017-11-30T22:53:17Z | 2021-03-03T20:39:42Z |
goback | Golang simple exponential backoff package. | 45 | 8 | 6 | 2015-03-13T16:09:18Z | 2021-03-09T23:40:57Z |
[ARCHIVED] intrinsic | Provide Golang native SIMD intrinsics on x86/amd64 platform | 44 | 2 | 1 | 2017-06-13T09:26:34Z | 2017-06-23T01:17:03Z |
retry-go | Retrying made simple and easy for golang 🔁 | 43 | 4 | 2 | 2017-06-09T16:07:37Z | 2018-10-25T12:14:03Z |
go-httpheader | A Go library for encoding structs into Header fields. | 40 | 10 | 0 | 2017-06-24T11:28:06Z | 2022-04-09T02:48:07Z |
slicer | Utility class for handling slices | 39 | 3 | 0 | 2019-01-10T09:55:25Z | 2021-08-08T01:34:54Z |
gpath | gpath is a Go package to access a field by a path using reflect pacakge | 38 | 4 | 0 | 2017-05-24T06:24:18Z | 2017-06-04T08:31:39Z |
equalizer | A rate limiters package for Go | 38 | 2 | 0 | 2019-06-14T09:25:13Z | 2021-02-16T13:50:24Z |
backscanner | A scanner similar to bufio.Scanner, but it reads and returns lines in reverse order, starting at a given position and going backward. | 37 | 8 | 0 | 2017-10-18T07:59:07Z | 2022-08-12T13:37:52Z |
gostrutils | Collections of string utils I have created over the years | 37 | 6 | 1 | 2018-09-19T11:06:11Z | 2022-07-23T12:37:07Z |
set | Package set is a small wrapper around the official reflect package that facilitates loose type conversion and assignment into native Go types. | 37 | 2 | 0 | 2020-12-16T22:12:18Z | 2022-06-12T16:14:35Z |
evaluator | 35 | 8 | 0 | 2017-04-27T18:31:46Z | 2021-07-25T13:59:51Z | |
shutdown | Golang app shutdown hooks. | 35 | 6 | 0 | 2018-11-17T17:56:03Z | 2022-01-15T22:23:00Z |
[ARCHIVED] myhttp | Simplest HTTP GET requester for Go with timeout support | 34 | 13 | 1 | 2017-09-13T15:48:47Z | 2018-05-06T18:25:10Z |
rclient | Minimalistic REST client for Go applications | 32 | 3 | 2 | 2017-02-28T01:07:25Z | 2019-11-28T00:03:52Z |
sshman | SSH Manager - manage authorized_keys file on remote servers | 32 | 1 | 0 | 2021-08-27T13:04:47Z | 2022-04-10T08:42:31Z |
pointer | Helper routines for simplifying the creation of optional fields of basic type. | 30 | 4 | 0 | 2019-11-01T07:04:56Z | 2022-08-04T16:57:51Z |
tome | Package tome was designed to paginate simple RESTful APIs. | 30 | 3 | 1 | 2019-04-12T16:49:45Z | 2022-04-20T16:41:33Z |
throttle | lodash throttle like Go library | 28 | 1 | 0 | 2019-10-25T14:30:38Z | 2021-08-24T15:15:43Z |
generate | 🏃runs go generate recursively on a specified path or environment variable and can filter by regex | 27 | 5 | 0 | 2015-11-15T01:52:04Z | 2017-01-10T00:20:55Z |
ghokin | Parallelized formatter with no external dependencies for gherkin (cucumber, behat...) | 27 | 1 | 2 | 2018-08-03T11:36:35Z | 2022-06-30T07:03:03Z |
ugo | Simple and expressive toolbox written in Go | 26 | 5 | 0 | 2016-02-17T19:41:57Z | 2016-06-30T19:18:16Z |
copy | Package for fast copying structs of different types | 25 | 3 | 4 | 2020-10-09T06:59:08Z | 2020-12-28T08:02:43Z |
goplaceholder | a small golang lib to generate placeholder images | 24 | 7 | 1 | 2014-10-12T00:50:46Z | 2016-01-17T18:24:14Z |
mimesniffer | A MIME type sniffer for Go. | 23 | 1 | 4 | 2018-12-20T03:40:20Z | 2022-08-04T09:11:36Z |
structs | Golang struct operations. | 20 | 3 | 0 | 2017-08-26T09:59:00Z | 2017-10-23T13:03:17Z |
ctxutil | utils for Go context | 19 | 4 | 1 | 2018-07-30T11:28:57Z | 2020-03-01T00:49:08Z |
cvt | Easy and safe convert any value to another type. Go 任意数据类型安全转换 | 18 | 4 | 1 | 2021-03-09T02:38:50Z | 2022-01-08T05:19:37Z |
jsend | 💯 JSend's implementation writen in Go(golang) | 16 | 5 | 0 | 2020-01-14T04:41:36Z | 2021-06-29T03:46:18Z |
filler | fill struct data easily with fill tags | 16 | 4 | 0 | 2017-04-05T08:14:04Z | 2017-04-10T08:03:38Z |
dlog | Simple build-time controlled debug log with ability to log where the logger was called | 16 | 2 | 0 | 2016-07-04T19:59:09Z | 2017-07-28T00:08:08Z |
okrun | ok, run your gofile | 15 | 3 | 0 | 2014-10-01T06:18:56Z | 2014-10-06T01:15:31Z |
ptr | Contains functions for simplified creation of pointers from constants of basic types | 15 | 3 | 0 | 2019-12-25T15:29:48Z | 2021-12-18T17:01:29Z |
go-convert | Convert a value into another type | 15 | 3 | 5 | 2019-06-07T16:56:38Z | 2022-06-30T04:12:37Z |
rest-go | A package that provide many helpful methods for working with rest api. | 15 | 2 | 1 | 2019-07-29T18:56:08Z | 2020-08-16T04:57:53Z |
go-types | Library providing opanapi3 and Go types for store/validation and transfer of ISO-4217, ISO-3166, and other types. | 14 | 8 | 0 | 2021-04-21T11:34:25Z | 2022-08-19T09:43:35Z |
command | Command pattern for Go with thread safe serial and parallel dispatcher | 13 | 4 | 0 | 2015-08-24T09:43:50Z | 2016-04-20T17:06:57Z |
go-problemdetails | Problem json implementation (https://tools.ietf.org/html/rfc7807) package for go | 13 | 1 | 0 | 2019-05-16T05:42:14Z | 2020-02-17T11:12:12Z |
silk | Read Silk Flow Files | 11 | 3 | 0 | 2018-12-18T04:23:35Z | 2022-03-09T02:29:44Z |
retry | A pretty simple library to ensure your work to be done | 11 | 2 | 1 | 2018-07-18T09:48:33Z | 2020-02-11T03:47:03Z |
go-countries | 9 | 4 | 0 | 2020-10-27T12:56:40Z | 2020-12-17T15:41:16Z | |
go-actuator | Golang production-ready features | 9 | 2 | 1 | 2021-07-17T05:47:50Z | 2022-06-22T06:59:02Z |
statiks | Fast, zero-configuration, static HTTP filer server. | 9 | 1 | 0 | 2018-06-26T23:42:33Z | 2020-10-06T20:27:09Z |
sliceconv | Slice conversion between primitive types | 8 | 1 | 0 | 2019-02-15T06:50:34Z | 2020-02-03T04:41:41Z |
bleep | OS Signal Handlers in Go | 8 | 1 | 0 | 2021-01-02T05:22:08Z | 2021-01-06T03:41:42Z |
go-clip | A minimalistic clipboard manager for Mac. | 8 | 0 | 2 | 2020-11-18T22:19:01Z | 2021-02-05T17:37:54Z |
retry | Percolate's Go retry package | 7 | 2 | 0 | 2018-06-15T19:23:36Z | 2019-09-05T21:13:28Z |
blank | Detect blank strings or remove whitespace from strings | 7 | 1 | 0 | 2019-02-13T00:07:27Z | 2019-07-31T23:16:14Z |
nfdump | NFDump File Reader | 6 | 2 | 0 | 2020-04-08T01:01:22Z | 2022-02-22T14:33:22Z |
go-pkg | A go toolkit. | 6 | 1 | 0 | 2021-11-28T02:07:14Z | 2022-06-29T07:55:30Z |
go-safe | This Go package provides a sandbox for the safe execution of panic-inducing programs | 5 | 1 | 0 | 2019-10-29T15:20:37Z | 2021-11-30T08:24:38Z |
lets-go | Go module that provides common utilities for Cloud Native development | 4 | 2 | 0 | 2020-02-19T16:32:41Z | 2021-04-24T17:30:07Z |
loncha | fast slice utility for golang | 4 | 1 | 1 | 2019-03-01T05:34:28Z | 2022-07-21T20:43:21Z |
tik | hierarchical timing wheel | 3 | 2 | 0 | 2020-07-04T09:13:49Z | 2020-10-17T03:23:45Z |
olaf | Twitter Snowflake implemented in Go | 3 | 1 | 0 | 2019-01-03T13:31:10Z | 2019-04-10T08:59:20Z |
reflectutils | Golang utility functions for working with reflection | 3 | 0 | 0 | 2021-10-24T05:44:39Z | 2022-04-16T03:56:56Z |
goctx | Get your context value faster | 2 | 2 | 0 | 2020-11-14T14:16:09Z | 2020-11-24T14:42:11Z |
objwalker | 1 | 0 | 0 | 2022-02-08T05:50:42Z | 2022-03-04T18:45:53Z |
UUID
Libraries for working with UUIDs.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
uuid | Go package for UUIDs based on RFC 4122 and DCE 1.1: Authentication and Security Services. | 3821 | 318 | 25 | 2016-02-12T22:17:59Z | 2022-07-20T16:28:47Z |
xid | xid is a globally unique id generator thought for the web | 2891 | 178 | 12 | 2015-11-10T20:32:24Z | 2022-08-20T09:51:18Z |
ulid | Universally Unique Lexicographically Sortable Identifier (ULID) in Go | 2776 | 117 | 1 | 2016-12-06T15:26:52Z | 2022-07-26T12:42:07Z |
uuid | A UUID package originally forked from github.com/satori/go.uuid | 1164 | 80 | 9 | 2018-07-13T02:13:28Z | 2022-06-06T04:48:41Z |
wuid | An extremely fast UUID alternative written in golang | 469 | 44 | 1 | 2018-01-27T01:16:28Z | 2022-07-01T15:18:50Z |
sno | Compact, sortable and fast unique IDs with embedded metadata. | 69 | 4 | 0 | 2019-05-26T22:05:26Z | 2021-11-12T01:59:41Z |
nanoid | A tiny and fast Go unique string generator | 51 | 7 | 0 | 2019-07-02T12:15:56Z | 2021-09-15T22:25:23Z |
Goid | A UUIDv4 generation package written in go | 33 | 4 | 1 | 2017-05-19T10:40:45Z | 2019-02-18T15:50:01Z |
gouid | Fast, dependable universally unique ids | 16 | 4 | 0 | 2020-10-08T19:54:41Z | 2022-04-12T15:40:45Z |
uuid | Generate, encode, and decode UUIDs v1 with fast or cryptographic-quality random node identifier. | 14 | 5 | 0 | 2016-02-03T03:02:51Z | 2020-03-12T22:02:03Z |
uniq | No hassle safe, fast unique identifiers with commands. | - | - | - | - | - |
Validation
Libraries for validation.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
validator | 💯Go Struct and Field validation, including Cross Field, Cross Struct, Map, Slice and Array diving | 11223 | 1009 | 222 | 2015-02-12T16:32:22Z | 2022-08-23T19:57:42Z |
govalidator | [Go] Package of validators and sanitizers for strings, numerics, slices and structs | 5450 | 537 | 162 | 2014-06-20T10:45:23Z | 2022-07-23T12:42:44Z |
ozzo-validation | An idiomatic Go (golang) validation package. Supports configurable and extensible validation rules (validators) using normal language constructs instead of error-prone struct tags. | 2857 | 179 | 38 | 2016-06-22T03:47:43Z | 2022-07-15T02:51:39Z |
govalidator | Validate Golang request data with simple rules. Highly inspired by Laravel's request validation. | 1133 | 103 | 37 | 2017-09-13T16:42:20Z | 2022-08-01T07:05:15Z |
validate | ⚔ Go package for data validation and filtering. support Map, Struct, Form data. Go通用的数据验证与过滤库,使用简单,内置大部分常用验证、过滤器,支持自定义验证器、自定义消息、字段翻译。 | 767 | 90 | 6 | 2018-07-16T08:23:49Z | 2022-08-25T16:07:47Z |
checkdigit | Provide check digit algorithms and calculators written in Go | 93 | 6 | 0 | 2019-04-05T09:46:36Z | 2022-08-16T11:17:01Z |
terraform-validator | A norms and conventions validator for Terraform | 78 | 8 | 6 | 2019-05-29T11:37:15Z | 2022-03-06T09:13:28Z |
validate | This package provides a framework for writing validations for Go applications. | 71 | 21 | 2 | 2018-02-10T18:25:55Z | 2022-07-09T04:04:03Z |
jio | jio is a json schema validator similar to joi | 68 | 11 | 0 | 2018-10-28T11:02:45Z | 2020-05-08T16:22:47Z |
gody | 🎈 A lightweight struct validator for Go | 61 | 5 | 1 | 2018-11-01T21:08:16Z | 2021-02-02T15:18:35Z |
govalid | Struct validation using tags | 29 | 6 | 1 | 2019-02-17T23:25:43Z | 2021-10-14T17:46:17Z |
validator | A lightweight model validator written in Go. | 2 | 0 | 0 | 2022-03-08T02:03:57Z | 2022-05-11T07:33:08Z |
Version Control
Libraries for version control.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-git | A highly extensible Git implementation in pure Go. | 3788 | 459 | 359 | 2019-12-19T10:27:02Z | 2022-08-24T12:12:56Z |
glab | A GitLab CLI tool bringing GitLab to your command line | 2052 | 172 | 115 | 2020-07-24T20:36:56Z | 2022-08-09T18:07:10Z |
hercules | Gaining advanced insights from Git repository history. | 1787 | 145 | 43 | 2016-12-12T17:30:29Z | 2021-11-08T12:45:48Z |
git2go | Git to Go; bindings for libgit2. Like McDonald's but tastier. | 1772 | 303 | 60 | 2013-03-05T19:50:43Z | 2022-08-15T05:59:38Z |
gh | Scriptable server and net/http middleware for GitHub Webhooks. | 78 | 13 | 2 | 2015-03-08T21:04:05Z | 2018-10-28T15:27:35Z |
go-vcs | manipulate and inspect VCS repositories in Go | 73 | 21 | 23 | 2013-06-02T02:36:18Z | 2021-03-31T12:37:46Z |
Githooks | 🦎 Githooks: per-repo and shared Git hooks with version control and auto update. | 47 | 1 | 6 | 2019-06-28T06:28:55Z | 2022-08-24T20:23:52Z |
froggit-go | Froggit-Go is a universal Go library, allowing to perform actions on VCS providers. | 19 | 11 | 5 | 2021-08-31T08:38:39Z | 2022-08-24T13:43:54Z |
hgo | Hgo is a collection of Go packages providing read-access to local Mercurial repositories. | 13 | 4 | 0 | 2014-06-18T03:54:40Z | 2015-08-25T03:56:31Z |
Video
Libraries for manipulating video.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
goav | Golang bindings for FFmpeg (This repository is no longer maintained) | 1909 | 349 | 48 | 2015-05-21T05:31:14Z | 2022-05-19T23:28:55Z |
m3u8 | Parser and generator of M3U8-playlists for Apple HLS. Library for Go language. 🎦 | 950 | 261 | 56 | 2013-02-05T22:26:30Z | 2022-06-26T17:44:49Z |
gmf | Go Media Framework | 780 | 159 | 46 | 2013-04-03T09:07:47Z | 2022-08-25T07:57:23Z |
go-astits | Demux and mux MPEG Transport Streams (.ts) natively in GO | 431 | 41 | 9 | 2017-07-04T13:06:15Z | 2022-08-10T17:27:00Z |
go-astisub | Manipulate subtitles in GO (.srt, .ssa/.ass, .stl, .ttml, .vtt (webvtt), teletext, etc.) | 403 | 85 | 10 | 2016-12-16T14:47:59Z | 2022-07-11T20:05:40Z |
libvlc-go | Go bindings for libVLC and high-level media player interface | 311 | 38 | 4 | 2015-01-06T14:01:50Z | 2022-04-10T11:51:17Z |
gortsplib | RTSP 1.0 client and server library for the Go programming language | 285 | 89 | 12 | 2020-01-20T09:08:24Z | 2022-08-25T20:47:54Z |
gst | Go bindings for GStreamer (retired: currently I don't use/develop this package) | 165 | 47 | 9 | 2011-07-26T00:44:40Z | 2021-01-07T12:04:16Z |
go-m3u8 | Parse and generate m3u8 playlists for Apple HTTP Live Streaming (HLS) in Golang (ported from gem https://github.com/sethdeckard/m3u8) | 97 | 17 | 2 | 2018-11-06T02:42:27Z | 2022-07-15T10:30:36Z |
v4l | Facade to the Video4Linux video capture interface. | 68 | 13 | 0 | 2016-10-25T10:50:25Z | 2021-12-29T18:33:16Z |
libgosubs | golang library to read and write various subtitle formats | 19 | 5 | 0 | 2017-05-03T21:05:25Z | 2020-05-13T06:18:07Z |
go-mpd | Go library for parsing and generating MPEG-DASH Media Presentation Description (MPD) files | 13 | 6 | 0 | 2018-11-02T19:09:07Z | 2020-08-18T09:32:36Z |
Web Frameworks
Full stack web frameworks.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gin | Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin. | 62267 | 6850 | 573 | 2014-06-16T23:57:25Z | 2022-08-23T06:37:37Z |
beego | beego is an open-source, high-performance web framework for the Go programming language. | 28743 | 5532 | 37 | 2012-02-29T02:32:08Z | 2022-08-24T13:12:21Z |
echo | High performance, minimalist Go web framework | 23566 | 2025 | 74 | 2015-03-01T17:43:01Z | 2022-08-25T19:49:52Z |
fiber | ⚡️ Express inspired web framework written in Go | 21960 | 1116 | 40 | 2020-01-16T03:59:20Z | 2022-08-25T17:06:21Z |
revel | A high productivity, full-stack web framework for the Go language. | 12688 | 1414 | 89 | 2011-12-09T04:10:26Z | 2022-07-03T14:30:51Z |
goa | Design-based APIs and microservices in Go | 4826 | 485 | 12 | 2014-12-05T07:17:53Z | 2022-08-22T01:08:30Z |
gizmo | A Microservice Toolkit from The New York Times | 3630 | 236 | 26 | 2015-12-15T18:09:36Z | 2021-08-03T10:55:58Z |
go-json-rest | A quick and easy way to setup a RESTful JSON API | 3504 | 389 | 48 | 2013-02-19T03:15:45Z | 2021-01-23T18:47:50Z |
macaron | Package macaron is a high productive and modular web framework in Go. | 3310 | 287 | 5 | 2014-07-10T03:13:30Z | 2022-08-15T12:40:58Z |
utron | A lightweight MVC framework for Go(Golang) | 2219 | 162 | 9 | 2015-09-16T07:55:54Z | 2018-10-28T20:04:59Z |
goyave | 🍐 Elegant Golang REST API Framework | 1139 | 48 | 5 | 2019-10-21T09:44:34Z | 2022-08-16T09:47:47Z |
go-tigertonic | A Go framework for building JSON web services inspired by Dropwizard | 1001 | 77 | 28 | 2013-02-09T21:16:13Z | 2018-07-24T09:26:32Z |
[ARCHIVED] tango | This is only a mirror and Moved to https://gitea.com/lunny/tango | 835 | 105 | 9 | 2014-12-17T03:07:09Z | 2019-05-17T03:31:14Z |
aah | A secure, flexible, rapid Go web framework | 670 | 38 | 16 | 2016-06-27T04:47:45Z | 2020-09-02T02:31:21Z |
gearbox | Gearbox ⚙ is a web framework written in Go with a focus on high performance | 659 | 52 | 1 | 2020-04-25T01:28:37Z | 2022-08-16T07:01:45Z |
aero | 🚄 High-performance web server for Go. | 490 | 34 | 5 | 2016-11-09T13:02:13Z | 2022-08-10T02:26:29Z |
gongular | A different approach to Go web frameworks | 450 | 18 | 8 | 2016-06-22T11:52:42Z | 2020-07-05T14:40:50Z |
air | An ideally refined web framework for Go. | 417 | 43 | 4 | 2016-07-20T12:09:48Z | 2021-04-18T10:29:01Z |
neo | Go Web Framework | 417 | 42 | 6 | 2015-02-04T19:16:06Z | 2017-12-30T07:35:36Z |
mango | Mango is a modular web-application framework for Go, inspired by Rack, and PEP333. | 369 | 40 | 9 | 2011-05-25T07:26:46Z | 2017-10-17T08:18:44Z |
flamingo-commerce | Flexible E-Commerce Framework on top of Flamingo. Used to build E-Commerce "Portals" and connect it with the help of individual Adapters to other services. | 346 | 56 | 25 | 2019-04-02T15:11:57Z | 2022-08-23T23:12:47Z |
flamingo | Flamingo Framework and Core Library. Flamingo is a go based framework for pluggable web projects. It is used to build scalable and maintainable (web)applications. | 309 | 38 | 36 | 2019-04-02T12:24:02Z | 2022-08-25T13:08:48Z |
gondola | The web framework for writing faster sites, faster | 309 | 24 | 8 | 2014-07-25T21:28:55Z | 2019-02-19T00:41:28Z |
rk-boot | Build microservice with rk-boot and let the team take over clean and tidy code. | 271 | 28 | 7 | 2020-07-31T02:36:56Z | 2022-08-09T15:53:56Z |
golf | ⛳ The Golf web framework | 259 | 30 | 6 | 2015-11-18T15:10:14Z | 2021-08-27T22:20:34Z |
webgo | A microframework to build web apps; with handler chaining, middleware support, and most of all; standard library compliant HTTP handlers(i.e. http.HandlerFunc). | 257 | 24 | 3 | 2015-12-16T07:35:02Z | 2022-06-19T08:54:34Z |
ginrpc | gin auto binding,grpc, and annotated route,gin 注解路由, grpc,自动参数绑定工具 | 232 | 29 | 8 | 2019-06-22T12:03:53Z | 2022-07-27T09:31:56Z |
uadmin | The web framework for Golang | 199 | 40 | 29 | 2018-10-05T09:00:17Z | 2022-08-03T11:00:40Z |
hiboot | hiboot is a high performance web and cli application framework with dependency injection support | 175 | 27 | 4 | 2018-03-16T11:21:46Z | 2022-05-23T04:24:52Z |
appy | An opinionated productive web framework that helps scaling business easier. | 127 | 14 | 1 | 2019-05-27T04:48:59Z | 2021-11-25T09:01:09Z |
huma | Huma REST/GraphQL API Framework for Golang with OpenAPI 3 | 126 | 15 | 14 | 2020-03-08T06:19:51Z | 2022-08-19T16:13:19Z |
go-rest | A small and evil REST framework for Go | 125 | 16 | 2 | 2012-07-13T10:02:15Z | 2017-01-20T13:26:12Z |
microservice | This library provides a simple microservice framework based on clean architecture principles with a working example implemented. | 101 | 15 | 0 | 2016-12-15T09:07:04Z | 2022-05-23T17:27:27Z |
patron | Microservice framework following best cloud practices with a focus on productivity. | 97 | 63 | 21 | 2019-01-30T13:49:54Z | 2022-08-22T06:05:02Z |
rux | ⚡ Rux is an simple and fast web framework. support route group, param route binding, middleware, compatible http.Handler interface. 简单且快速的 Go api/web 框架,支持路由分组,路由参数绑定,中间件,兼容 http.Handler 接口 | 81 | 14 | 2 | 2018-08-05T06:13:57Z | 2022-08-25T05:33:01Z |
vox | Simple and lightweight Go web framework inspired by koa | 78 | 6 | 8 | 2014-12-24T11:22:08Z | 2021-05-31T16:20:33Z |
golax | Golax, a go implementation for the Lax framework. | 74 | 8 | 6 | 2016-01-30T19:11:39Z | 2022-02-03T00:26:01Z |
yarf | Yet Another REST Framework | 65 | 8 | 2 | 2015-09-02T13:56:47Z | 2019-03-07T20:28:46Z |
fireball | Go web framework with a natural feel | 58 | 6 | 1 | 2016-07-20T05:04:54Z | 2018-10-03T21:26:08Z |
goa | Goa is a web framework based on middleware, like koa.js. | 46 | 3 | 0 | 2019-07-26T07:12:23Z | 2019-12-06T10:29:45Z |
gotuna | GoTuna a lightweight web framework for Go with mux router, middlewares, user sessions, templates, embedded views, and static file server. | 40 | 6 | 1 | 2021-04-08T14:08:08Z | 2022-06-02T06:50:08Z |
api | A REST framework for quickly writing resource based services in Golang. | 32 | 4 | 0 | 2015-01-24T18:45:30Z | 2015-02-01T22:58:21Z |
rex | Pleasures for Web in Golang | 32 | 3 | 0 | 2014-10-16T02:26:18Z | 2017-12-22T03:25:41Z |
goweb | Lightweight web framework based on net/http. | 31 | 5 | 2 | 2019-05-07T21:04:43Z | 2022-04-12T14:45:10Z |
banjo | BANjO is a simple web framework written in Go (golang) | 19 | 7 | 4 | 2017-12-09T13:35:31Z | 2018-01-31T16:42:14Z |
anoweb | The lightweight and powerful web framework using the new way for Go.Another go the way. | 4 | 0 | 1 | 2022-03-03T01:29:30Z | 2022-07-18T05:36:40Z |
golamb | Use Go for AWS Lambda & API Gateway HttpApi | 2 | 1 | 0 | 2022-03-30T15:50:14Z | 2022-08-24T17:02:33Z |
REST Layer | Framework to build REST/GraphQL API on top of databases with mostly configuration over code. | - | - | - | - | - |
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. | - | - | - | - | - |
Buffalo | Bringing the productivity of Rails to Go! | - | - | - | - | - |
Actual middlewares
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
tollbooth | Simple middleware to rate-limit HTTP requests. | 2276 | 202 | 5 | 2015-05-17T15:20:03Z | 2022-07-06T15:03:45Z |
cors | Go net/http configurable handler to handle CORS requests | 2167 | 208 | 18 | 2014-10-25T03:49:45Z | 2022-07-29T02:25:21Z |
limiter | Dead simple rate limit middleware for Go. | 1616 | 125 | 16 | 2015-10-02T08:12:38Z | 2022-08-16T12:06:28Z |
go-server-timing | Go (golang) library for creating and consuming HTTP Server-Timing headers | 839 | 33 | 9 | 2018-02-12T03:56:02Z | 2022-04-06T12:49:13Z |
go-fault | Fault injection library in Go using standard http middleware | 462 | 24 | 0 | 2020-05-14T16:13:17Z | 2022-08-05T17:50:45Z |
ln-paywall | Go middleware for monetizing your API on a per-request basis with Bitcoin and Lightning ⚡️ | 127 | 9 | 17 | 2018-06-29T21:51:00Z | 2019-02-24T19:40:57Z |
xff | A Golang Middleware to handle X-Forwarded-For Header | 91 | 23 | 8 | 2014-12-22T10:29:05Z | 2022-01-18T20:54:49Z |
rk-grpc | Start gRPC microservice from YAML, plugin of rk-boot | 45 | 10 | 1 | 2020-07-25T20:33:46Z | 2022-08-01T16:12:25Z |
formjson | Go net/http handler to transparently manage posted JSON | 36 | 3 | 0 | 2015-03-19T23:52:28Z | 2015-12-17T09:35:29Z |
rk-gin | Start gin microservice from YAML, plugin of rk-boot | 34 | 10 | 1 | 2020-10-12T16:48:48Z | 2022-08-01T16:00:59Z |
client-timing | An HTTP client for go-server-timing middleware. Enables automatic timing propagation through HTTP calls between servers. | 20 | 6 | 1 | 2018-02-23T01:52:45Z | 2020-03-13T18:47:59Z |
echo-middleware | Go package that provides multiple middlewares for Echo Framework. | 10 | 1 | 0 | 2019-10-20T13:23:19Z | 2022-08-10T19:30:54Z |
mid | Middleware for HTTP services in Go | 4 | 1 | 0 | 2020-07-13T14:53:59Z | 2022-06-28T13:51:49Z |
Libraries for creating HTTP middlewares
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
negroni | Idiomatic HTTP Middleware for Golang | 7240 | 584 | 11 | 2014-05-18T22:09:10Z | 2022-08-22T19:17:30Z |
alice | Painless middleware chaining for Go | 2633 | 145 | 8 | 2014-05-25T07:27:41Z | 2022-03-30T12:56:24Z |
render | Go package for easily rendering JSON, XML, binary data, and HTML templates responses. | 1671 | 134 | 1 | 2014-06-10T16:20:35Z | 2022-06-22T12:44:38Z |
stats | A Go middleware that stores various information about your web application (response time, status code count, etc.) | 586 | 50 | 8 | 2015-03-05T18:02:50Z | 2019-04-07T19:46:42Z |
interpose | Minimalist net/http middleware for golang | 295 | 17 | 1 | 2014-07-20T00:19:52Z | 2016-12-06T21:52:53Z |
renderer | Simple, lightweight and faster response (JSON, JSONP, XML, YAML, HTML, File) rendering package for Go | 241 | 26 | 0 | 2017-11-07T18:53:49Z | 2021-01-18T17:17:13Z |
muxchain | Lightweight Middleware for net/http | 209 | 15 | 1 | 2014-05-03T17:14:17Z | 2019-03-19T21:44:51Z |
gores | Go package that handles HTML, JSON, XML and etc. responses | 99 | 4 | 0 | 2015-12-25T12:41:01Z | 2021-01-01T12:48:26Z |
rye | A tiny http middleware for Golang with added handlers for common needs. | 97 | 15 | 0 | 2016-10-06T19:51:59Z | 2018-10-04T15:00:04Z |
mediary | Add interceptors to GO http.Client | 79 | 7 | 0 | 2020-03-23T18:54:56Z | 2020-06-24T14:38:59Z |
chain | Composable chains of nested http.Handler instances. | 64 | 4 | 0 | 2015-05-14T19:52:58Z | 2018-08-25T20:35:40Z |
[ARCHIVED] wrap | Go http.Hander based middleware stack with context sharing | 59 | 6 | 0 | 2014-02-16T07:12:36Z | 2018-08-15T19:29:53Z |
catena | gRPC interceptor catenation. | 8 | 2 | 0 | 2015-07-30T19:07:01Z | 2018-08-25T22:06:48Z |
Routers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
mux | A powerful HTTP router and URL matcher for building Go web servers with 🦍 | 17213 | 1561 | 24 | 2012-10-02T21:32:24Z | 2022-08-17T20:49:02Z |
httprouter | A high performance HTTP request router that scales well | 14391 | 1367 | 71 | 2013-12-05T15:10:55Z | 2022-07-30T08:18:24Z |
chi | lightweight, idiomatic and composable router for building Go HTTP services | 12097 | 792 | 29 | 2015-10-15T20:46:29Z | 2022-08-12T14:47:00Z |
web | Go Router + Middleware. Your Contexts. | 1477 | 126 | 24 | 2013-11-16T20:48:20Z | 2020-10-01T09:54:18Z |
bone | Lightning Fast HTTP Multiplexer | 1281 | 87 | 3 | 2014-11-19T02:16:36Z | 2019-05-06T14:37:24Z |
goji | Goji is a minimalistic and flexible HTTP request multiplexer for Go (golang) | 903 | 69 | 6 | 2015-11-16T00:52:41Z | 2022-07-26T04:51:22Z |
fasthttprouter | A high performance fasthttp request router that scales well | 869 | 92 | 19 | 2015-12-13T09:32:30Z | 2019-04-25T14:24:36Z |
httptreemux | High-speed, flexible tree-based HTTP router for Go. | 556 | 52 | 4 | 2014-05-14T20:10:20Z | 2021-11-07T07:42:14Z |
gorouter | xujiajun/gorouter is a simple and fast HTTP router for Go. It is easy to build RESTful APIs and your web framework. | 527 | 87 | 0 | 2018-01-29T09:28:28Z | 2019-09-27T07:07:43Z |
ozzo-routing | An extremely fast Go (golang) HTTP router that supports regular expression route matching. Comes with full support for building RESTful APIs. | 441 | 50 | 11 | 2015-10-27T01:03:14Z | 2022-05-08T09:14:18Z |
lars | 🚨 Is a lightweight, fast and extensible zero allocation HTTP router for Go used to create customizable frameworks. | 389 | 25 | 1 | 2015-12-24T17:28:45Z | 2019-05-15T21:58:32Z |
siesta | Composable framework for writing HTTP handlers in Go. | 352 | 15 | 0 | 2014-09-23T13:55:56Z | 2021-04-26T21:52:25Z |
vestigo | Echo Inspired Stand Alone URL Router | 269 | 30 | 14 | 2015-09-22T03:08:03Z | 2020-10-08T16:23:52Z |
router | ⚡️ A lightning fast HTTP router | 164 | 13 | 0 | 2017-05-25T10:29:27Z | 2020-05-04T16:39:26Z |
gorouter | Go Server/API micro framework, HTTP request router, multiplexer, mux | 130 | 15 | 7 | 2016-07-14T13:13:34Z | 2022-06-01T11:41:55Z |
pure | 🚱 Is a lightweight HTTP router that sticks to the std "net/http" implementation | 128 | 13 | 0 | 2016-09-23T19:57:58Z | 2020-11-19T05:20:04Z |
alien | A lightweight and fast http router from outer space | 122 | 12 | 3 | 2016-01-30T23:23:10Z | 2019-03-23T07:13:30Z |
violetear | Go HTTP router | 104 | 10 | 1 | 2015-06-19T16:49:41Z | 2021-05-25T14:39:05Z |
Bxog | Bxog is a simple and fast HTTP router for Go (HTTP request multiplexer). | 103 | 8 | 0 | 2016-05-19T12:20:08Z | 2020-06-12T14:56:00Z |
xmux | xmux is a httprouter fork on top of xhandler (net/context aware) | 95 | 11 | 2 | 2015-12-14T19:01:05Z | 2017-06-09T18:54:18Z |
bellt | 🔔 A simple Go router | 54 | 7 | 0 | 2019-02-21T13:13:52Z | 2022-07-18T18:20:21Z |
ngamux | Simple HTTP router for Go | 51 | 18 | 1 | 2021-08-22T08:31:40Z | 2022-03-26T11:56:20Z |
goblin | A golang http router based on trie tree. | 36 | 5 | 5 | 2019-06-29T01:44:20Z | 2022-08-03T01:45:11Z |
fastrouter | FastRouter is a fast, flexible HTTP router written in Go. | 21 | 5 | 0 | 2017-11-01T08:52:52Z | 2017-11-03T15:05:25Z |
router | A lightweight yet powerful HTTP router for the Go programming language | 19 | 0 | 2 | 2022-01-31T23:01:00Z | 2022-03-30T17:37:31Z |
route | Go Route - Simple yet powerful HTTP request multiplexer | 8 | 2 | 1 | 2019-07-06T18:47:38Z | 2019-12-23T20:20:48Z |
nchi | golang http router with elegance, speed, and flexibility | 3 | 0 | 0 | 2022-03-14T06:05:05Z | 2022-08-07T15:29:54Z |
WebAssembly
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
tinygo | Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM. | 11402 | 625 | 440 | 2018-06-07T16:39:19Z | 2022-08-25T09:30:33Z |
dom | DOM library for Go and WASM | 459 | 55 | 11 | 2018-06-30T18:37:35Z | 2019-09-26T14:33:41Z |
go-canvas | Library to use HTML5 Canvas from Go-WASM, with all drawing within go code | 172 | 13 | 5 | 2019-05-05T14:05:55Z | 2020-12-09T22:42:50Z |
wasmbrowsertest | Run WASM tests inside your browser | 129 | 20 | 2 | 2018-07-14T18:42:24Z | 2022-05-01T15:15:59Z |
webapi | Go Lang Web Assembly bindings for DOM, HTML etc | 117 | 10 | 2 | 2019-02-08T05:58:35Z | 2022-01-11T19:08:27Z |
vert | WebAssembly interop between Go and JS values. | 78 | 11 | 1 | 2018-03-25T17:26:47Z | 2021-12-29T04:52:53Z |
Windows
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-ole | win32 ole implementation for golang | 896 | 160 | 64 | 2011-01-21T12:45:20Z | 2022-03-22T20:20:20Z |
d3d9 | Direct3D9 wrapper for Go. | 132 | 12 | 1 | 2015-12-12T21:24:38Z | 2021-12-10T17:39:50Z |
gosddl | GoSDDL converter | 8 | 2 | 0 | 2018-12-04T08:36:11Z | 2019-04-30T10:04:14Z |
XML
Libraries and tools for manipulating XML.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
zek | Generate a Go struct from XML. | 587 | 53 | 9 | 2017-11-23T19:03:11Z | 2022-08-23T20:38:15Z |
xpath | XPath package for Golang, supports HTML, XML, JSON document query. | 505 | 72 | 15 | 2016-10-09T05:51:24Z | 2022-07-08T15:36:52Z |
[ARCHIVED] xquery | Extract data or evaluate value from HTML/XML documents using XPath | 155 | 28 | 0 | 2016-10-09T05:54:10Z | 2018-05-15T05:19:11Z |
xml2map | XML to MAP converter written Golang | 42 | 11 | 2 | 2018-08-06T17:51:46Z | 2021-12-07T20:49:48Z |
xmlwriter | xmlwriter is a pure-Go library providing procedural XML generation based on libxml2's xmlwriter module | 21 | 5 | 1 | 2017-04-11T04:43:26Z | 2022-02-18T22:40:49Z |
XML-Comp | Compare ANY markup documents. | 17 | 11 | 8 | 2016-10-25T22:09:12Z | 2018-07-19T12:21:08Z |
Zero Trust
Libraries and tools to implement Zero Trust architectures.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
cosign | Container Signing | 2374 | 289 | 226 | 2021-02-04T12:49:39Z | 2022-08-25T18:24:35Z |
spire | The SPIFFE Runtime Environment | 1212 | 327 | 199 | 2017-08-11T18:46:51Z | 2022-08-25T19:44:23Z |
in-toto-golang | A Go implementation of in-toto. in-toto is a framework to protect software supply chain integrity. | 62 | 39 | 26 | 2018-10-15T15:18:06Z | 2022-08-08T15:01:10Z |
spiffe-vault | Integrates Spiffe and Vault to have secretless authentication | 42 | 3 | 1 | 2021-08-26T10:53:00Z | 2022-08-23T07:26:09Z |
Code Analysis
Source code analysis tools, also known as Static Application Security Testing (SAST) Tools.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
tools | [mirror] Go Tools | 6349 | 2066 | 60 | 2014-11-25T21:07:26Z | 2022-08-25T19:06:52Z |
go-tools | Staticcheck - The advanced Go linter | 4905 | 321 | 503 | 2017-01-24T21:11:01Z | 2022-08-24T15:59:08Z |
go-tools | Staticcheck - The advanced Go linter | 4905 | 321 | 503 | 2017-01-24T21:11:01Z | 2022-08-24T15:59:08Z |
go-tools | Staticcheck - The advanced Go linter | 4905 | 321 | 503 | 2017-01-24T21:11:01Z | 2022-08-24T15:59:08Z |
[ARCHIVED] lint | [mirror] This is a linter for Go source code. (deprecated) | 3957 | 527 | 0 | 2013-06-02T22:45:37Z | 2021-05-08T22:21:20Z |
errcheck | errcheck checks that you checked errors. | 1889 | 132 | 14 | 2013-02-24T22:32:02Z | 2022-08-03T20:41:52Z |
go-critic | The most opinionated Go source code linter for code audit. | 1369 | 103 | 127 | 2018-05-05T09:17:26Z | 2022-08-25T06:44:03Z |
goplantuml | PlantUML Class Diagram Generator for golang projects | 1075 | 113 | 21 | 2019-05-26T15:43:12Z | 2022-06-01T18:01:38Z |
gcvis | Visualise Go program GC trace data in real time | 1067 | 70 | 10 | 2014-07-10T12:34:07Z | 2019-03-13T01:20:26Z |
php-parser | PHP parser written in Go | 886 | 61 | 19 | 2017-11-07T06:20:46Z | 2021-04-28T03:22:19Z |
goast-viewer | Golang AST visualizer | 643 | 61 | 1 | 2014-06-30T11:09:01Z | 2022-05-24T14:42:29Z |
go-cleanarch | Clean architecture validator for go, like a The Dependency Rule and interaction between packages in your Go projects. | 615 | 40 | 4 | 2017-04-12T21:59:16Z | 2021-11-08T16:18:42Z |
go-mod-outdated | Find outdated dependencies of your Go projects. go-mod-outdated provides a table view of the go list -u -m -json all command which lists all dependencies of a Go project and their available minor and patch updates. It also provides a way to filter indirect dependencies and dependencies without updates. | 595 | 25 | 5 | 2019-04-19T07:12:13Z | 2022-05-09T19:44:05Z |
goreturns | A gofmt/goimports-like tool for Go programmers that fills in Go return statements with zero values to match the func return types | 513 | 57 | 29 | 2014-10-07T15:48:08Z | 2020-10-17T19:35:15Z |
golines | A golang formatter that fixes long lines | 448 | 31 | 15 | 2019-10-01T00:34:25Z | 2022-08-07T02:51:25Z |
todocheck | A static code analyser for annotated TODO comments | 388 | 38 | 11 | 2020-07-18T16:19:00Z | 2022-08-25T05:37:32Z |
unconvert | Remove unnecessary type conversions from Go source | 326 | 25 | 7 | 2016-02-19T21:59:07Z | 2022-06-16T12:45:53Z |
dupl | a tool for code clone detection | 287 | 22 | 2 | 2015-05-20T15:45:15Z | 2020-12-19T20:18:10Z |
tickgit | Manage your repository's TODOs, tickets and checklists as config in your codebase. | 277 | 17 | 10 | 2019-10-12T00:49:10Z | 2022-01-15T20:46:13Z |
gostatus | A command line tool that shows the status of Go repositories. | 243 | 11 | 1 | 2013-11-27T04:06:35Z | 2019-02-03T17:04:19Z |
apicompat | apicompat checks recent changes to a Go project for backwards incompatible changes | 175 | 5 | 7 | 2016-07-10T13:39:02Z | 2017-02-05T09:57:05Z |
checkstyle | checkstyle for go | 121 | 17 | 5 | 2014-01-01T01:09:27Z | 2021-03-10T02:55:53Z |
lint | Run linters from Go code - | 66 | 10 | 1 | 2016-07-09T09:52:39Z | 2018-10-28T00:00:40Z |
validate | A Go package to automatically validate fields with tags | 59 | 14 | 1 | 2013-11-22T01:28:40Z | 2016-03-28T22:03:18Z |
[ARCHIVED] go-outdated | Find outdated golang packages | 42 | 2 | 0 | 2015-06-29T06:10:39Z | 2019-01-15T09:49:38Z |
chainjacking | Find which of your direct GitHub dependencies is susceptible to RepoJacking attacks | 27 | 7 | 0 | 2021-11-16T09:22:09Z | 2022-05-29T07:05:00Z |
usestdlibvars | A linter that detect the possibility to use variables/constants from the Go standard library. | 17 | 4 | 0 | 2022-07-25T07:52:58Z | 2022-08-22T15:41:56Z |
[ARCHIVED] blanket | MOVED TO GITLAB | 14 | 0 | 1 | 2017-09-04T13:09:28Z | 2018-07-22T18:28:33Z |
golang-ifood-sdk | Golang Ifood API SDK | 8 | 2 | 0 | 2021-03-13T15:15:45Z | 2022-04-05T14:32:59Z |
GoCover.io | GoCover.io offers the code coverage of any golang package as a service. | - | - | - | - | - |
Editor Plugins
Plugin for text editors and IDEs.
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
vim-go | Go development plugin for Vim | 14846 | 1445 | 32 | 2014-03-24T13:12:26Z | 2022-08-12T17:26:33Z |
gocode | An autocompletion daemon for the Go programming language | 4978 | 686 | 66 | 2010-07-05T00:13:16Z | 2022-05-11T23:54:57Z |
GoSublime | A Golang plugin collection for SublimeText 3, providing code completion and other IDE-like features. | 3432 | 317 | 85 | 2011-08-27T22:24:39Z | 2020-07-21T18:51:34Z |
vscode-go | Go extension for Visual Studio Code | 2909 | 554 | 249 | 2020-03-06T17:52:04Z | 2022-08-22T22:07:21Z |
[ARCHIVED] go-plus | An Enhanced Go Experience For The Atom Editor | 1510 | 142 | 92 | 2014-03-13T19:19:18Z | 2021-05-04T12:16:23Z |
go-mode.el | Emacs mode for the Go programming language | 1257 | 203 | 34 | 2013-01-30T23:47:03Z | 2022-07-27T01:18:35Z |
coc-go | Go language server extension using gopls for coc.nvim. | 481 | 29 | 9 | 2019-04-25T09:08:04Z | 2022-08-09T21:02:21Z |
Watch | Watches for changes in a directory tree and reruns a command in an acme win or just on the terminal. | 192 | 47 | 7 | 2013-08-08T17:10:22Z | 2022-02-16T13:55:11Z |
goimports-reviser | Right imports sorting & code formatting tool (goimports alternative) | 174 | 40 | 11 | 2020-04-08T14:49:07Z | 2022-08-25T07:23:14Z |
vim-compiler-go | Vim compiler plugin for Go (golang) | 87 | 17 | 0 | 2012-11-25T18:15:52Z | 2016-06-28T22:00:12Z |
[ARCHIVED] go-language-server | A Go language server. | 31 | 10 | 3 | 2017-11-21T13:10:33Z | 2019-03-25T14:30:07Z |
gounit-vim | Vim plugin for https://github.com/hexdigest/gounit | 23 | 1 | 0 | 2018-02-21T18:27:17Z | 2018-10-29T11:14:49Z |
[ARCHIVED] theia-go-extension | Theia Go Extension | 16 | 6 | 4 | 2017-11-30T15:15:39Z | 2019-03-14T08:06:45Z |
vscode-go-prof | Go language profiling | 5 | 0 | 3 | 2019-04-18T06:40:25Z | 2019-06-04T07:46:34Z |
vscode-go-doc | An Microsoft Visual Code extension for Golang to print symbol definition to output | 4 | 0 | 4 | 2018-03-15T08:53:19Z | 2022-04-09T06:01:55Z |
Go plugin for JetBrains IDEs | Go plugin for JetBrains IDEs. | - | - | - | - | - |
Go Generate Tools
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gotests | Automatically generate Go test boilerplate from your source code. | 4154 | 303 | 52 | 2016-01-19T05:06:02Z | 2022-04-14T11:12:22Z |
genny | Elegant generics for Go | 1648 | 130 | 28 | 2014-10-27T22:03:45Z | 2021-08-24T18:48:42Z |
[ARCHIVED] re2dfa | Transform regular expressions into finite state machines and output Go source code. This repository has migrated to https://gitlab.com/opennota/re2dfa | 193 | 16 | 4 | 2015-06-20T10:56:24Z | 2018-09-11T05:52:06Z |
xgen | XSD (XML Schema Definition) parser and Go/C/Java/Rust/TypeScript code generator | 178 | 41 | 20 | 2019-06-22T13:56:05Z | 2022-07-20T14:50:20Z |
toml-to-go | Translates TOML into a Go type in your browser instantly | 145 | 32 | 0 | 2016-08-03T06:26:02Z | 2022-04-23T07:05:37Z |
hasgo | Haskell-flavoured functions for Go 😃 | 119 | 8 | 16 | 2019-05-16T22:14:08Z | 2021-04-29T20:23:38Z |
gonerics | Generics for go | 114 | 9 | 0 | 2014-09-29T00:47:23Z | 2014-09-29T15:04:55Z |
gocontracts | A tool for design-by-contract in Go | 85 | 5 | 1 | 2018-08-13T17:33:48Z | 2019-01-26T07:32:40Z |
gounit | Unit tests generator for Go programming language | 63 | 11 | 1 | 2018-02-05T00:08:30Z | 2018-08-17T09:38:42Z |
generic | flexible data type for Go | 43 | 7 | 2 | 2016-06-15T14:00:36Z | 2021-01-13T20:33:15Z |
godal | godal provides the ability to generate specific golang code. The godal is to enable developers to write fast code in an expressive way. | 13 | 0 | 0 | 2021-03-16T03:09:34Z | 2021-10-23T04:38:11Z |
Go Tools
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-swagger | Swagger 2.0 implementation for go | 7908 | 1151 | 562 | 2014-11-16T20:13:15Z | 2022-08-24T17:11:24Z |
OctoLinker | OctoLinker — Links together, what belongs together | 5017 | 314 | 51 | 2013-12-27T18:01:52Z | 2022-08-22T12:07:16Z |
go-callvis | Visualize call graph of a Go program using Graphviz | 4306 | 328 | 46 | 2016-09-03T11:31:46Z | 2022-08-07T22:33:22Z |
depth | Visualize Go Dependency Trees | 778 | 57 | 9 | 2017-03-04T15:42:23Z | 2022-02-08T04:10:36Z |
richgo | Enrich go test outputs with text decorations. |
721 | 22 | 5 | 2017-01-04T17:05:57Z | 2022-06-17T16:03:32Z |
rts | RTS: request to struct. Generates Go structs from JSON server responses. | 232 | 11 | 0 | 2016-04-04T13:17:19Z | 2021-09-26T08:39:38Z |
godbg | Go implementation of the Rust dbg macro |
185 | 10 | 2 | 2019-01-23T23:51:43Z | 2019-04-20T00:52:22Z |
typex | [TOOL, CLI] - Filter and examine Go type structures, interfaces and their transitive dependencies and relationships. Export structural types as TypeScript value object or bare type representations. | 151 | 10 | 0 | 2020-03-24T21:02:44Z | 2022-04-02T13:53:41Z |
gothanks | GoThanks automatically stars Go's official repository and your go.mod github dependencies, providing a simple way to say thanks to the maintainers of the modules you use and the contributors of Go itself. | 113 | 8 | 1 | 2019-11-10T07:48:02Z | 2021-03-01T23:15:34Z |
roumon | Universal goroutine monitor using pprof and termui | 111 | 5 | 0 | 2021-03-02T18:02:41Z | 2022-08-23T20:42:33Z |
colorgo | Colorize (highlight) go build command output |
110 | 15 | 3 | 2013-02-14T18:06:10Z | 2020-07-18T23:02:45Z |
go-james | James is your butler and helps you to create, build, debug, test and run your Go projects | 53 | 4 | 1 | 2019-10-14T16:00:14Z | 2021-12-27T10:51:17Z |
igo | Improved Go Syntax (transpiler) | 51 | 3 | 0 | 2018-11-17T05:34:03Z | 2020-04-06T07:25:36Z |
go-pkg-complete | bash completion for go and wgo | 39 | 8 | 0 | 2015-05-22T03:07:05Z | 2017-11-17T14:00:35Z |
[ARCHIVED] generator-go-lang | 💂♂ A teeny tiny and somewhat opinionated generator for your next golang project | 24 | 5 | 0 | 2017-09-13T11:33:06Z | 2020-04-06T07:02:29Z |
gomodrun | The forgotten go tool that executes and caches binaries included in go.mod files. | 23 | 4 | 0 | 2020-01-26T15:33:18Z | 2022-08-25T10:41:05Z |
gotestdox | Show Go test results as readable sentences | 15 | 1 | 0 | 2022-02-28T18:24:57Z | 2022-08-18T15:56:02Z |
docs | Automatically generate RESTful API documentation for GO projects - aligned with Open API Specification standard | 11 | 3 | 8 | 2021-01-28T18:51:47Z | 2022-08-24T13:17:55Z |
modver | 2 | 0 | 2 | 2021-07-17T15:05:52Z | 2022-03-27T16:28:30Z | |
gotemplate.io | Online tool to preview text/template templates live. | - | - | - | - | - |
DevOps Tools
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
kubernetes | Production-Grade Container Scheduling and Management | 91459 | 33519 | 2397 | 2014-06-06T22:56:04Z | 2022-08-25T20:29:36Z |
moby | Moby Project - a collaborative project for the container ecosystem to assemble container-based systems | 63863 | 18252 | 4340 | 2013-01-18T18:10:57Z | 2022-08-25T20:56:43Z |
gogs | Gogs is a painless self-hosted Git service | 40750 | 4625 | 816 | 2014-02-12T01:57:08Z | 2022-08-23T07:45:34Z |
traefik | The Cloud Native Application Proxy | 39380 | 4298 | 628 | 2015-09-13T19:04:02Z | 2022-08-25T08:34:09Z |
gitea | Git with a cup of tea, painless self-hosted git service | 31915 | 4000 | 1962 | 2016-11-01T02:13:26Z | 2022-08-25T19:34:25Z |
vegeta | HTTP load testing tool and library. It's over 9000! | 20061 | 1242 | 102 | 2013-08-13T11:45:21Z | 2022-07-19T06:53:45Z |
hey | HTTP load generator, ApacheBench (ab) replacement | 14121 | 985 | 156 | 2016-09-02T10:24:09Z | 2022-07-17T16:07:10Z |
packer | Packer is a tool for creating identical machine images for multiple platforms from a single source configuration. | 13897 | 3249 | 324 | 2013-03-23T05:43:03Z | 2022-08-25T09:17:51Z |
webhook | webhook is a lightweight incoming webhook server to run shell commands | 8126 | 683 | 71 | 2015-01-12T20:59:11Z | 2022-04-28T07:38:31Z |
gvm | Go Version Manager | 7691 | 431 | 161 | 2011-12-03T02:34:04Z | 2022-08-03T00:42:46Z |
ko | Build and deploy Go applications on Kubernetes | 4937 | 268 | 67 | 2019-03-21T19:24:01Z | 2022-08-24T18:06:12Z |
gaia | Build powerful pipelines in any programming language. | 4783 | 225 | 39 | 2017-12-28T11:01:31Z | 2022-07-21T19:31:05Z |
ddosify | High-performance load testing tool, written in Golang. For distributed and Geo-targeted load testing: Ddosify Cloud - https://ddosify.com 🚀 | 4775 | 195 | 9 | 2021-08-04T07:43:53Z | 2022-08-23T12:15:22Z |
gox | A dead simple, no frills Go cross compile tool | 4319 | 346 | 66 | 2013-11-17T03:11:35Z | 2022-08-05T04:32:16Z |
mizu | API traffic viewer for Kubernetes enabling you to view all API communication between microservices. Think TCPDump and Wireshark re-invented for Kubernetes | 3876 | 144 | 19 | 2021-04-19T10:29:56Z | 2022-08-08T11:09:26Z |
bombardier | Fast cross-platform HTTP benchmarking tool written in Go | 3694 | 245 | 17 | 2016-05-29T15:16:30Z | 2022-04-12T14:20:02Z |
bosun | Time Series Alerting Framework | 3292 | 510 | 9 | 2013-11-15T00:12:27Z | 2022-08-07T14:35:24Z |
pomerium | Pomerium is an identity and context-aware access proxy. | 3190 | 254 | 60 | 2019-01-01T08:04:37Z | 2022-08-25T18:15:16Z |
script | Making it easy to write shell-like scripts in Go | 2905 | 205 | 18 | 2019-04-20T14:37:03Z | 2022-08-20T22:41:49Z |
kala | Modern Job Scheduler | 1850 | 178 | 21 | 2015-03-19T04:24:19Z | 2022-08-22T23:14:55Z |
fac | Easy-to-use CUI for fixing git conflicts | 1766 | 51 | 10 | 2017-12-29T19:11:45Z | 2022-08-07T17:29:53Z |
[ARCHIVED] goxc | a build tool for Go, with a focus on cross-compiling, packaging and deployment | 1679 | 82 | 12 | 2013-02-11T08:49:53Z | 2019-09-30T08:22:07Z |
statusok | Monitor your Website and APIs from your Computer. Get Notified through Slack, E-mail when your server is down or response time is more than expected. | 1555 | 200 | 41 | 2015-08-26T17:39:48Z | 2021-08-11T16:30:28Z |
s5cmd | Parallel S3 and local filesystem execution tool. | 1206 | 120 | 53 | 2016-11-16T10:31:15Z | 2022-08-25T15:40:32Z |
s3gof3r | Fast, concurrent, streaming access to Amazon S3, including gof3r, a CLI. http://godoc.org/github.com/rlmcpherson/s3gof3r | 1121 | 195 | 55 | 2013-08-02T13:11:39Z | 2021-08-28T17:43:13Z |
go-selfupdate | Enable your Go applications to self update | 1049 | 138 | 15 | 2013-11-13T06:17:43Z | 2021-09-23T14:42:59Z |
ghorg | Quickly clone an entire org/users repositories into one directory - Supports GitHub, GitLab, Bitbucket, and more 🥚 | 1028 | 115 | 3 | 2018-03-29T02:53:05Z | 2022-08-25T00:54:21Z |
fleet | Fleet is the lightweight, programmable telemetry platform for servers and workstations. Get comprehensive, customizable data from all your devices and operating systems — without the downtime risk. | 896 | 168 | 1021 | 2020-11-03T22:17:18Z | 2022-08-25T20:58:45Z |
skm | A simple and powerful SSH keys manager | 801 | 50 | 1 | 2017-10-11T06:52:55Z | 2022-06-28T14:25:31Z |
scaleway-cli | Command Line Interface for Scaleway | 761 | 132 | 110 | 2015-03-20T09:45:50Z | 2022-08-25T13:07:33Z |
utask | µTask is an automation engine that models and executes business processes declared in yaml. ✏️📋 | 716 | 54 | 34 | 2019-11-05T12:59:55Z | 2022-08-19T13:24:44Z |
kwatch | 👀 monitor & detect crashes in your Kubernetes(K8s) cluster instantly | 670 | 41 | 21 | 2021-11-20T15:09:48Z | 2022-08-25T15:17:45Z |
cassowary | 🚀 Modern cross-platform HTTP load-testing tool written in Go | 607 | 24 | 7 | 2019-08-25T21:28:34Z | 2022-07-19T15:13:17Z |
kool | From local development to the cloud: development workflow made easy. | 605 | 45 | 8 | 2020-07-06T22:25:04Z | 2022-08-15T11:11:57Z |
aurora | Cross-platform beanstalkd queue server admin console. | 563 | 81 | 7 | 2016-10-09T03:17:51Z | 2021-08-19T16:05:21Z |
govvv | "go build" wrapper to add version info to Golang applications | 527 | 41 | 1 | 2016-08-02T22:30:23Z | 2020-02-03T18:05:00Z |
pewpew | Flexible HTTP command line stress tester for websites and web services | 348 | 32 | 1 | 2016-10-12T22:59:40Z | 2022-05-18T19:56:58Z |
jenkins-cli | Jenkins CLI allows you to manage your Jenkins in an easy way. Jenkins 命令行客户端 | 333 | 75 | 76 | 2019-06-21T10:19:34Z | 2022-08-25T14:06:26Z |
gonative | Build Go Toolchains /w native libs for cross-compilation | 331 | 35 | 7 | 2014-05-01T01:43:15Z | 2016-07-21T19:34:23Z |
trubka | A CLI tool for Kafka | 323 | 19 | 4 | 2019-07-05T02:02:25Z | 2022-01-12T17:06:36Z |
mora | MongoDB generic REST server in Go | 303 | 58 | 9 | 2013-07-12T09:07:01Z | 2021-04-11T12:45:54Z |
lstags | Explore Docker registries and manipulate Docker images! | 289 | 25 | 7 | 2017-08-15T05:25:17Z | 2022-04-09T09:02:32Z |
balerter | Script Based Alerting Manager | 273 | 15 | 2 | 2019-12-30T09:25:01Z | 2022-08-15T10:49:03Z |
manssh | Manage your ssh alias configs easily. | 268 | 28 | 1 | 2017-10-08T06:52:42Z | 2022-02-11T06:40:44Z |
easyssh-proxy | easyssh-proxy provides a simple implementation of some SSH protocol features in Go | 253 | 54 | 13 | 2017-03-03T02:58:14Z | 2021-12-09T13:47:47Z |
dogo | Monitoring changes in the source file and automatically compile and run (restart). | 248 | 44 | 5 | 2014-11-19T10:16:35Z | 2019-03-15T05:14:19Z |
godbg | Web-based gdb front-end application | 225 | 27 | 5 | 2013-08-09T01:02:00Z | 2018-07-09T13:50:41Z |
terraform-provider-openapi | OpenAPI Terraform Provider that configures itself at runtime with the resources exposed by the service provider (defined in a swagger file) | 215 | 44 | 21 | 2017-10-17T03:47:09Z | 2022-07-29T10:03:57Z |
blast | Blast is a simple tool for API load testing and batch jobs | 208 | 10 | 1 | 2017-10-21T17:13:09Z | 2018-03-01T09:57:41Z |
gobrew | Shell script to download and set GO environmental paths to allow multiple versions. | 190 | 18 | 5 | 2013-11-13T00:32:18Z | 2020-05-21T03:38:51Z |
abbreviate | Supporting your devops by shortening your strings using common abbreviations and clever guesswork | 183 | 15 | 4 | 2018-11-23T23:05:15Z | 2021-09-29T22:07:49Z |
kcli | A kafka command line browser | 182 | 18 | 1 | 2017-03-25T20:41:22Z | 2020-01-04T00:26:19Z |
ostent | Ostent is a server tool to collect, display and report system metrics. | 173 | 13 | 0 | 2014-03-31T04:52:10Z | 2022-03-13T12:36:27Z |
grapes | easy way to distribute commands over ssh. | 157 | 9 | 1 | 2016-09-01T11:28:47Z | 2020-12-21T15:58:45Z |
winrm-cli | Command-line tool to remotely execute commands on Windows machines through WinRM | 141 | 20 | 1 | 2016-05-23T09:03:15Z | 2021-12-30T09:34:27Z |
dockerfile-generator | dfg - Generates dockerfiles based on various input channels. | 132 | 15 | 0 | 2019-08-14T20:03:37Z | 2022-05-23T07:51:29Z |
s3-proxy | S3 Reverse Proxy with GET, PUT and DELETE methods and authentication (OpenID Connect and Basic Auth) | 121 | 22 | 12 | 2019-09-22T14:17:39Z | 2022-08-24T13:31:04Z |
drone-scp | Copy files and artifacts via SSH using a binary, docker or Drone CI. | 110 | 24 | 24 | 2016-10-16T13:35:56Z | 2022-06-15T13:52:05Z |
go-furnace | Go Hosting Solution for AWS, Google Could and Digital Ocean | 91 | 29 | 12 | 2016-10-09T11:17:20Z | 2021-10-28T07:50:11Z |
wide | 🌈 一款基于 Web 的 Go 语言 IDE,随时随地玩 golang。 | 90 | 34 | 3 | 2019-12-01T11:30:46Z | 2022-08-09T02:12:01Z |
mantil | Build your AWS Lambda-based Go backends quicker than ever | 77 | 2 | 7 | 2021-08-28T09:13:30Z | 2022-04-11T11:56:14Z |
go-rocket-update | Easy to use and modular library to make self updating golang programs | 68 | 5 | 6 | 2020-12-05T16:58:56Z | 2022-07-09T15:04:18Z |
dropship | Super simple deployment tool | 60 | 13 | 10 | 2015-09-03T23:09:19Z | 2018-07-25T21:03:58Z |
drone-jenkins | Drone plugin for trigger Jenkins jobs. | 34 | 16 | 4 | 2016-10-15T00:53:03Z | 2022-05-09T16:05:49Z |
docker-go-mingw | Docker image for building Go binaries with MinGW toolchain | 33 | 6 | 1 | 2020-09-16T14:02:35Z | 2022-08-14T15:19:16Z |
rodent | Manage Go Versions/Projects/Dependencies | 32 | 4 | 6 | 2014-06-01T21:08:42Z | 2017-04-22T07:47:52Z |
awsenv | AWS environment config loader | 29 | 7 | 0 | 2015-08-05T07:21:24Z | 2018-07-17T14:05:46Z |
lwc | A live-updating version of the UNIX wc command. | 27 | 4 | 0 | 2018-04-22T09:23:44Z | 2022-07-26T07:16:55Z |
httpref | Command line, offline, access to HTTP status code, common header, and port references | 22 | 9 | 2 | 2020-01-10T22:00:47Z | 2022-04-06T20:49:10Z |
depcharge | DepCharge is a tool designed to help orchestrate the execution of commands across many directories at once. | 22 | 5 | 1 | 2018-07-25T04:02:09Z | 2021-12-23T10:42:04Z |
sg | Stress gauge allows one to gauge response times of an HTTP service under stress. | 7 | 1 | 2 | 2015-08-19T15:06:32Z | 2016-10-28T23:18:00Z |
aptly-fork | aptly - Debian repository management tool (fork of aptly-dev/aptly) | 5 | 4 | 0 | 2019-07-04T16:45:46Z | 2019-09-27T12:21:26Z |
wait-for | Super simple tool to help with orchestration of commands on the CLI by waiting on networking resources. | 3 | 2 | 3 | 2022-03-17T10:33:01Z | 2022-07-02T09:51:34Z |
gitea-github-migrator | Migrate all your GitHub repositories, issues, milestones and labels to your Gitea instance. | - | - | - | - | - |
Other Software
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
syncthing | Open Source Continuous File Synchronization | 46223 | 3513 | 341 | 2013-11-26T09:48:21Z | 2022-08-25T08:39:29Z |
croc | Easily and securely send things from one computer to another 🐊 📦 | 20548 | 891 | 88 | 2017-10-17T15:20:18Z | 2022-08-21T11:52:40Z |
restic | Fast, secure, efficient backup program | 17677 | 1183 | 415 | 2014-04-27T14:07:58Z | 2022-08-25T19:30:35Z |
goreplay | GoReplay is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes. | 15874 | 1624 | 270 | 2013-05-30T09:29:07Z | 2022-08-23T01:39:49Z |
lime | Open source API-compatible alternative to the text editor Sublime Text | 15291 | 1115 | 22 | 2012-10-03T18:10:02Z | 2021-01-02T13:10:47Z |
seaweedfs | SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files! Blob store has O(1) disk seek, cloud tiering. Filer supports Cloud Drive, cross-DC active-active replication, Kubernetes, POSIX FUSE mount, S3 API, S3 Gateway, Hadoop, WebDAV, encryption, Erasure Coding. | 15142 | 1837 | 95 | 2014-07-14T16:41:37Z | 2022-08-25T07:58:23Z |
comcast | Simulating shitty network connections so you can build better systems. | 9630 | 379 | 23 | 2014-11-12T03:15:58Z | 2022-04-22T20:44:57Z |
toxiproxy | ⏰ 🔥 A TCP proxy to simulate network and system conditions for chaos and resiliency testing | 8412 | 393 | 66 | 2014-09-04T13:56:38Z | 2022-08-15T07:09:38Z |
confd | Manage local application configuration files using templates and data from etcd or consul | 7865 | 1366 | 156 | 2013-10-01T04:06:09Z | 2022-02-15T10:16:52Z |
liteide | LiteIDE is a simple, open source, cross-platform Go IDE. | 6950 | 953 | 368 | 2012-11-19T01:54:25Z | 2022-07-29T00:02:57Z |
drive | Google Drive client for the commandline | 6428 | 434 | 279 | 2014-11-03T08:18:11Z | 2021-02-08T10:45:18Z |
nes | NES emulator written in Go. | 5087 | 483 | 9 | 2015-03-02T22:16:13Z | 2022-03-06T14:12:26Z |
duplicacy | A new generation cloud backup tool | 4224 | 303 | 300 | 2016-02-23T01:28:10Z | 2022-08-13T02:20:55Z |
tsuru | Open source and extensible Platform as a Service (PaaS). | 4075 | 508 | 175 | 2012-03-05T21:41:08Z | 2022-08-25T04:25:42Z |
scc | Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go | 3723 | 162 | 42 | 2018-03-01T06:44:25Z | 2022-07-28T22:47:14Z |
mylg | Network Diagnostic Tool | 2591 | 230 | 14 | 2016-06-21T19:39:58Z | 2020-02-26T22:39:02Z |
goboy | Multi-platform Nintendo Game Boy Color emulator written in Go | 2465 | 106 | 8 | 2017-08-20T14:59:05Z | 2022-05-23T17:11:47Z |
sup | Super simple deployment tool - think of it like 'make' for a network of servers | 2358 | 173 | 56 | 2015-02-23T23:04:21Z | 2022-07-30T20:45:15Z |
lgo | Interactive Go programming with Jupyter | 2256 | 115 | 26 | 2017-10-05T15:29:10Z | 2020-11-20T07:01:33Z |
circuit | Circuit: Dynamic cloud orchestration http://gocircuit.org | 1958 | 162 | 12 | 2014-04-10T20:46:06Z | 2020-05-03T14:20:23Z |
snap | The open telemetry framework | 1801 | 306 | 150 | 2014-08-13T21:04:51Z | 2018-12-20T01:29:47Z |
blocky | Fast and lightweight DNS proxy as ad-blocker for local network with many features | 1774 | 101 | 35 | 2019-11-06T09:03:31Z | 2022-08-25T19:58:05Z |
community | Modern Confluence alternative designed for internal & external docs, built with Go + EmberJS | 1661 | 171 | 45 | 2016-04-29T23:35:07Z | 2022-08-03T15:24:46Z |
borg | Search and save shell snippets without leaving your terminal | 1556 | 59 | 14 | 2016-09-10T20:20:42Z | 2018-02-07T19:40:06Z |
plik | Plik is a temporary file upload system (Wetransfer like) in Go. | 1039 | 132 | 34 | 2015-04-19T18:20:27Z | 2022-08-25T07:27:18Z |
shell2http | Executing shell commands via HTTP server | 966 | 103 | 4 | 2015-03-11T19:39:09Z | 2022-08-20T17:21:42Z |
vflow | Enterprise Network Flow Collector (IPFIX, sFlow, Netflow) | 914 | 202 | 43 | 2017-02-24T21:28:21Z | 2022-07-17T09:22:59Z |
Go-Package-Store | An app that displays updates for the Go packages in your GOPATH. | 888 | 29 | 7 | 2014-01-24T06:02:09Z | 2020-03-07T22:35:33Z |
peg | Peg, Parsing Expression Grammar, is an implementation of a Packrat parser generator. | 863 | 106 | 33 | 2010-04-25T21:20:46Z | 2021-08-22T22:12:48Z |
go-playground | 🇺🇦 Better Go Playground powered by React and Monaco editor | 820 | 54 | 8 | 2020-01-16T19:03:35Z | 2022-07-21T09:31:44Z |
leaps | A pair programming service using operational transforms | 725 | 54 | 13 | 2014-06-19T20:33:05Z | 2021-02-22T08:51:54Z |
gfile | Direct file transfer over WebRTC | 675 | 42 | 5 | 2019-03-08T06:02:16Z | 2021-02-23T09:43:17Z |
guora | 🖖🏻 A self-hosted Quora like web application written in Go 基于 Golang 类似知乎的私有部署问答应用 包含问答、评论、点赞、管理后台等功能 | 603 | 92 | 9 | 2020-08-13T16:05:08Z | 2020-11-28T03:25:36Z |
gebug | Debug Dockerized Go applications better | 596 | 20 | 5 | 2020-07-20T13:43:42Z | 2022-08-24T21:07:36Z |
gocc | Parser / Scanner Generator | 537 | 44 | 34 | 2015-06-05T13:08:21Z | 2021-12-13T15:48:17Z |
mockingjay-server | Fake server, Consumer Driven Contracts and help with testing performance from one configuration file with zero system dependencies and no coding whatsoever | 519 | 62 | 9 | 2015-04-04T19:18:02Z | 2022-05-26T17:45:27Z |
sake | 🤖 sake is a task runner for local and remote hosts | 457 | 12 | 10 | 2021-10-09T10:00:47Z | 2022-08-25T17:25:40Z |
go-peerflix | Go Peerflix | 453 | 76 | 11 | 2015-10-08T19:44:47Z | 2021-08-04T03:42:32Z |
Gokapi | Lightweight selfhosted Firefox Send alternative without public upload. AWS S3 supported. | 375 | 22 | 12 | 2021-03-12T08:52:52Z | 2022-08-18T08:38:57Z |
[ARCHIVED] ipe | An open source Pusher server implementation compatible with Pusher client libraries written in GO | 355 | 71 | 1 | 2015-01-13T11:49:19Z | 2021-03-28T13:07:21Z |
IDE | A Go code editor. With debugging and Autocomplete. 一个 Go 代码编辑器,具有 DEBUGGING 和 AUTOCOMPLETE | 349 | 20 | 0 | 2017-09-09T19:49:57Z | 2022-08-23T13:40:08Z |
woke | Detect non-inclusive language in your source code. | 342 | 53 | 15 | 2020-08-31T17:21:07Z | 2022-08-22T18:05:25Z |
tcpprobe | Modern TCP tool and service for network performance observability. | 326 | 19 | 2 | 2020-10-26T00:27:20Z | 2021-02-21T22:15:21Z |
wellington | Spriting that sass has been missing | 298 | 16 | 26 | 2014-12-08T18:08:59Z | 2020-10-30T00:02:54Z |
cherry | A tiny webchat server in Go. | 281 | 40 | 0 | 2015-10-24T20:56:23Z | 2017-06-24T10:34:24Z |
Neo-cowsay | 🐮 cowsay is reborn. Neo Cowsay has written in Go. | 225 | 16 | 0 | 2016-11-05T10:37:43Z | 2022-02-25T08:01:06Z |
tcpdog | eBPF based TCP observability. | 197 | 19 | 0 | 2020-12-30T00:10:39Z | 2021-07-21T14:36:31Z |
joincap | Merge multiple pcap files together, gracefully. | 176 | 19 | 3 | 2018-05-31T16:57:22Z | 2021-03-15T16:44:16Z |
orbit | 📡 A cross-platform task runner for executing commands and generating files from templates | 169 | 9 | 2 | 2017-05-13T11:25:00Z | 2021-01-18T11:35:49Z |
vaku | Vaku extends the Vault API & CLI | 138 | 15 | 2 | 2018-04-24T04:52:10Z | 2022-08-05T01:10:17Z |
stew | 🥘 An independent package manager for compiled binaries. | 101 | 5 | 3 | 2022-01-30T23:43:46Z | 2022-07-24T01:24:01Z |
dp | Scry Data Protocol | 85 | 37 | 55 | 2018-12-12T03:14:22Z | 2022-07-20T22:52:26Z |
boxed | dropbox based blog engine, written in go. | 77 | 9 | 0 | 2015-04-18T20:48:46Z | 2018-08-09T20:27:08Z |
crawley | The unix-way web crawler | 64 | 2 | 0 | 2021-10-27T18:48:51Z | 2022-08-04T20:23:59Z |
term-quiz | Terminal Quiz Application Written in Go | 22 | 5 | 0 | 2017-12-26T07:36:40Z | 2018-10-24T22:46:25Z |
naclpipe | NaCL pipe | 22 | 2 | 0 | 2015-05-05T23:16:39Z | 2018-11-18T14:43:21Z |
snitch | Keep updated about all deploys on Tsuru | 15 | 1 | 5 | 2017-04-06T21:02:05Z | 2018-07-23T18:16:30Z |
GoDocTooltip | A Chrome extension for golang users.When you're at golang's official doc site, it will show function's description as tooltip on function list | 12 | 1 | 0 | 2016-01-21T12:06:55Z | 2021-12-18T03:13:24Z |
[ARCHIVED] protoncheck | @ProtonMail module for waybar/polybar/yabar/i3blocks | 3 | 1 | 0 | 2021-12-26T02:22:47Z | 2022-02-13T16:00:10Z |
hoofli | Generate PlantUML diagrams from Chrome or Firefox network inspections | 3 | 0 | 1 | 2021-04-23T20:36:56Z | 2021-09-29T22:23:16Z |
goblin | Golang binaries in a curl, built by goblins. | - | - | - | - | - |
Docker | Open platform for distributed applications for developers and sysadmins. | - | - | - | - | - |
hugo | Fast and Modern Static Website Engine. | - | - | - | - | - |
Juju | Cloud-agnostic service deployment and orchestration - supports EC2, Azure, Openstack, MAAS and more. | - | - | - | - | - |
GoLand | Full featured cross-platform Go IDE. | - | - | - | - | - |
Benchmarks
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go-web-framework-benchmark | ⚡ Go web framework benchmark | 1726 | 193 | 20 | 2016-04-06T06:27:33Z | 2022-08-12T12:44:53Z |
go-http-routing-benchmark | Go HTTP request router and web framework benchmark | 1583 | 225 | 22 | 2013-12-16T21:28:47Z | 2022-03-28T16:29:23Z |
go_serialization_benchmarks | Benchmarks of Go serialization methods | 1344 | 136 | 8 | 2013-01-18T16:03:58Z | 2022-08-16T12:09:12Z |
skynet | Skynet 1M threads microbenchmark | 1017 | 130 | 32 | 2016-02-14T13:59:19Z | 2022-04-27T20:57:42Z |
speedtest-resize | Compare various Image resize algorithms for the Go language | 219 | 17 | 1 | 2013-09-16T12:40:05Z | 2020-10-28T16:26:39Z |
go-benchmarks | A few miscellaneous Go microbenchmarks. | 144 | 25 | 2 | 2016-02-25T01:00:38Z | 2016-02-25T05:42:36Z |
gospeed | Go micro-benchmarks for calculating the speed of language constructs | 109 | 7 | 0 | 2011-05-23T21:16:11Z | 2022-06-13T11:02:12Z |
autobench | Go benchmark harness. | 93 | 29 | 2 | 2013-03-28T11:17:01Z | 2014-07-28T04:52:21Z |
golang-sql-benchmark | A benchmarking shootout of various db/SQL utilities for Go | 61 | 14 | 2 | 2014-09-24T20:47:26Z | 2022-03-21T09:12:16Z |
gocostmodel | Benchmarks of common basic operations for the Go language. | 57 | 5 | 0 | 2014-12-19T02:54:45Z | 2021-05-19T15:19:44Z |
kvbench | Key/Value database benchmark | 24 | 2 | 0 | 2014-04-15T09:59:27Z | 2019-09-28T10:24:57Z |
go-benchmark-app | Application for HTTP benchmarking via different rules and configs | 23 | 5 | 0 | 2017-01-24T12:24:08Z | 2017-03-17T11:40:10Z |
go-ml-benchmarks | ⏱ Benchmarks of machine learning inference for Go | 23 | 1 | 2 | 2021-02-09T10:20:46Z | 2022-01-06T11:34:30Z |
go-json-benchmark | Benchmark of Golang JSON Libraries | 6 | 1 | 0 | 2019-11-10T08:00:15Z | 2020-10-08T08:21:03Z |
Conferences
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
Capital Go | Washington, D.C., USA. | - | - | - | - | - |
dotGo | Paris, France. | - | - | - | - | - |
GoCon | Tokyo, Japan. | - | - | - | - | - |
GoDays | Berlin, Germany. | - | - | - | - | - |
GoLab | Florence, Italy. | - | - | - | - | - |
GopherChina | Shanghai, China. | - | - | - | - | - |
GopherCon | Denver, USA. | - | - | - | - | - |
GopherCon Australia | Sydney, Australia. | - | - | - | - | - |
GopherCon Brazil | Florianópolis, Brazil. | - | - | - | - | - |
GopherCon Europe | Berlin, Germany. | - | - | - | - | - |
GopherCon India | Pune, India. | - | - | - | - | - |
GopherCon Israel | Tel Aviv, Israel. | - | - | - | - | - |
GopherCon Russia | Moscow, Russia. | - | - | - | - | - |
GopherCon Singapore | Mapletree Business City, Singapore. | - | - | - | - | - |
GopherCon UK | London, UK. | - | - | - | - | - |
GopherCon Vietnam | Ho Chi Minh City, Vietnam. | - | - | - | - | - |
GoWest Conference | Lehi, USA. | - | - | - | - | - |
E-books for purchase
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
100 Go Mistakes: How to Avoid Them | - | - | - | - | - | |
Build an Orchestrator in Go | - | - | - | - | - | |
Continuous Delivery in Go | This practical guide to continuous delivery shows you how to rapidly establish an automated pipeline that will improve your testing, code quality, and final product. | - | - | - | - | - |
For the Love of Go | An introductory book for Go beginners. | - | - | - | - | - |
Know Go: Generics | A guide to understanding and using generics in Go. | - | - | - | - | - |
The Power of Go: Tools | A guide to writing command-line tools in Go. | - | - | - | - | - |
Writing A Compiler In Go | - | - | - | - | - | |
Writing An Interpreter In Go | Book that introduces dozens of techniques for writing idiomatic, expressive, and efficient Go code that avoids common pitfalls. | - | - | - | - | - |
Free e-books
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
GoBooks | List of Golang books | 12806 | 1749 | 3 | 2015-05-05T10:45:36Z | 2022-08-17T21:03:57Z |
The-Golang-Standard-Library-by-Example | Golang标准库。对于程序员而言,标准库与语言本身同样重要,它好比一个百宝箱,能为各种常见的任务提供完美的解决方案。以示例驱动的方式讲解Golang的标准库。 | 8834 | 1961 | 33 | 2013-04-14T02:21:23Z | 2022-08-18T12:10:20Z |
web-dev-golang-anti-textbook | Learn how to write webapps without a framework in Go. | 3037 | 283 | 9 | 2016-01-01T07:49:17Z | 2021-10-19T11:14:43Z |
gosuccinctly | This is the companion repo for Go Succinctly by Amir Irani. | 22 | 1 | 0 | 2018-09-02T05:36:10Z | 2018-10-03T07:03:46Z |
How To Code in Go eBook | A 600 page introduction to Go aimed at first time developers. | - | - | - | - | - |
Go Bootcamp | - | - | - | - | - | |
Go 101 | A book focusing on Go syntax/semantics and all kinds of details. | - | - | - | - | - |
Building Web Apps With Go | - | - | - | - | - | |
Build Web Application with Golang | - | - | - | - | - | |
Learning Go | - | - | - | - | - | |
Network Programming With Go | - | - | - | - | - | |
Practical Go Lessons | - | - | - | - | - | |
Spaceship Go A Journey to the Standard Library | - | - | - | - | - | |
The Go Programming Language | - | - | - | - | - | |
An Introduction to Programming in Go | - | - | - | - | - | |
A Go Developer’s Notebook | - | - | - | - | - |
Gophers
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
gophers | Free gophers | 2862 | 153 | 5 | 2015-06-03T06:34:42Z | 2022-07-06T06:41:07Z |
gophers | Gopher Artwork by Ashley McNamara | 2693 | 133 | 13 | 2017-02-15T14:29:00Z | 2019-04-12T18:38:12Z |
free-gophers-pack | ✨ This pack of 100+ gopher pictures and elements will help you to build own design of almost anything related to Go Programming Language: presentations, posts in blogs or social media, courses, videos and many, many more. | 2537 | 151 | 1 | 2019-04-02T22:11:29Z | 2020-06-30T10:59:42Z |
gophericons | 34 gopher images for Go developers community | 606 | 26 | 2 | 2015-08-22T14:41:34Z | 2018-03-23T23:10:38Z |
gopherize.me | Gopherize.me app | 590 | 47 | 18 | 2017-01-25T12:51:35Z | 2021-08-23T21:46:57Z |
gopher-stickers | gopher stickers | 539 | 38 | 7 | 2014-11-09T16:41:03Z | 2019-12-03T14:50:44Z |
gopher-logos | adorable gopher logos | 106 | 9 | 1 | 2017-07-27T14:27:20Z | 2021-06-24T19:17:44Z |
go-gopher | The Go Gopher Amigurumi Pattern | 104 | 14 | 0 | 2018-03-28T22:54:06Z | 2022-02-07T01:02:41Z |
gophers | random gopher graphics | 57 | 3 | 2 | 2017-01-28T23:58:35Z | 2020-08-06T15:16:29Z |
Go-gopher-Vector | Go gopher Vector Data [.ai, .svg] | 56 | 6 | 0 | 2014-09-03T17:29:51Z | 2018-03-04T07:19:54Z |
gophers | Gopher artwork (Golang mascot) | 18 | 6 | 0 | 2021-06-23T16:36:58Z | 2022-03-07T19:39:48Z |
Meetups
Style Guides
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
cockroach | CockroachDB - the open source, cloud-native distributed SQL database. | 25441 | 3227 | 5695 | 2014-02-06T00:18:47Z | 2022-08-25T21:12:31Z |
fabric | Hyperledger Fabric is an enterprise-grade permissioned distributed ledger framework for developing solutions and applications. Its modular and versatile design satisfies a broad range of industry use cases. It offers a unique approach to consensus that enables performance at scale while preserving privacy. | 13904 | 8173 | 117 | 2016-08-25T16:05:27Z | 2022-08-25T20:28:09Z |
guide | The Uber Go Style Guide. | 12254 | 1377 | 12 | 2018-11-10T18:14:59Z | 2022-08-15T16:30:52Z |
[ARCHIVED] magnetico | Autonomous (self-hosted) BitTorrent DHT search engine suite. | 2762 | 340 | 77 | 2017-03-05T11:10:57Z | 2022-01-20T20:39:17Z |
go-styleguide | 🏆 Opinionated Styleguide for the Go language | 1313 | 124 | 0 | 2017-07-29T10:03:30Z | 2022-08-17T07:57:52Z |
playbook-go | Playbook da linguagem Go | 309 | 13 | 0 | 2022-01-07T18:06:37Z | 2022-02-03T23:21:50Z |
Sourcegraph | - | - | - | - | - | |
Thanos | - | - | - | - | - | |
GitLab | - | - | - | - | - |
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
@golang | - | - | - | - | - | |
@golang_news | - | - | - | - | - | |
@golangch | - | - | - | - | - | |
@golangflow | - | - | - | - | - | |
@golangweekly | - | - | - | - | - |
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
r/golang | - | - | - | - | - |
Websites
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
go | The Go programming language | 103119 | 15269 | 7850 | 2014-08-19T04:33:40Z | 2022-08-25T21:09:19Z |
awesome-awesomeness | A curated list of awesome awesomeness | 29259 | 3493 | 18 | 2014-07-08T05:44:19Z | 2022-08-17T00:15:46Z |
awesome-remote-job | A curated list of awesome remote jobs and resources. Inspired by https://github.com/vinta/awesome-python | 22920 | 2288 | 33 | 2015-01-02T00:31:34Z | 2022-08-17T06:31:28Z |
awesome-golang-workshops | A curated list of awesome golang workshops. | 470 | 21 | 0 | 2021-06-27T01:06:03Z | 2021-07-13T14:14:28Z |
[ARCHIVED] golang-graphics | Community-contributed Go graphics files | 138 | 9 | 1 | 2014-03-24T23:10:53Z | 2015-08-24T21:30:06Z |
gocryforhelp | List of opensource projects looking for help | 40 | 2 | 0 | 2016-05-09T14:30:41Z | 2017-09-23T14:04:04Z |
awesome-go-extra | Parse awesome-go README file and generate a new README file with repo info. | 19 | 4 | 0 | 2021-06-01T17:55:30Z | 2022-08-24T21:11:09Z |
Awesome Go @LibHunt | Your go-to Go Toolbox. | - | - | - | - | - |
Go Blog | The official Go blog. | - | - | - | - | - |
Go Code Club | A group of Gophers read and discuss a different Go project every week. | - | - | - | - | - |
Go Community on Hashnode | Community of Gophers on Hashnode. | - | - | - | - | - |
Go Forum | Forum to discuss Go. | - | - | - | - | - |
CodinGame | Learn Go by solving interactive tasks using small games as practical examples. | - | - | - | - | - |
Go Proverbs | Go Proverbs by Rob Pike. | - | - | - | - | - |
Go Report Card | A report card for your Go package. | - | - | - | - | - |
go.dev | A hub for Go developers. | - | - | - | - | - |
Coding Mystery | Solve exciting escape-room-inspired programming challenges using Go. | - | - | - | - | - |
godoc.org | Documentation for open source Go packages. | - | - | - | - | - |
Golang Developer Jobs | Developer Jobs exclusively for Golang related Roles. | - | - | - | - | - |
Golang Flow | Post Updates, News, Packages and more. | - | - | - | - | - |
Golang News | Links and news about Go programming. | - | - | - | - | - |
Golang Resources | A curation of the best articles, exercises, talks and videos to learn Go. | - | - | - | - | - |
Code with Mukesh | Software Engineer and Blogs @ codewithmukesh.com. | - | - | - | - | - |
golang-nuts | Go mailing list. | - | - | - | - | - |
Google Plus Community | The Google+ community for #golang enthusiasts. | - | - | - | - | - |
Gopher Community Chat | Join Our New Slack Community For Gophers (Understand how it came). | - | - | - | - | - |
Gophercises | Free coding exercises for budding gophers. | - | - | - | - | - |
gowalker.org | Go Project API documentation. | - | - | - | - | - |
json2go | Advanced JSON to Go struct conversion - online tool. | - | - | - | - | - |
justforfunc | Youtube channel dedicated to Go programming language tips and tricks, hosted by Francesc Campoy @francesc. | - | - | - | - | - |
Learn Go Programming | Learn Go concepts with illustrations. | - | - | - | - | - |
Made with Golang | - | - | - | - | - | |
r/Golang | News about Go. | - | - | - | - | - |
studygolang | The community of studygolang in China. | - | - | - | - | - |
Trending Go repositories on GitHub today | Good place to find new Go libraries. | - | - | - | - | - |
TutorialEdge - Golang | - | - | - | - | - |
Tutorials
Name | Desc | Star | Fork | Issue | Created | Pushed |
---|---|---|---|---|---|---|
build-web-application-with-golang | A golang ebook intro how to build a web with golang | 40796 | 10610 | 114 | 2012-08-02T11:49:35Z | 2022-08-17T11:35:58Z |
go-patterns | Curated list of Go design patterns, recipes and idioms | 19891 | 1861 | 61 | 2015-12-14T22:05:06Z | 2022-08-07T21:44:59Z |
learn-go-with-tests | Learn Go with test-driven development | 18276 | 2394 | 28 | 2018-03-02T11:41:14Z | 2022-08-25T07:16:06Z |
learngo | 1000+ Hand-Crafted Go Examples, Exercises, and Quizzes | 14081 | 1917 | 4 | 2018-10-15T11:12:00Z | 2022-08-20T18:22:47Z |
golang-cheat-sheet | An overview of Go syntax and features. | 6837 | 930 | 23 | 2014-02-13T11:24:58Z | 2022-08-25T04:50:45Z |
go-clean-template | Clean Architecture template for Golang services | 3443 | 251 | 19 | 2021-01-18T09:29:43Z | 2022-08-09T23:12:27Z |
golang-for-nodejs-developers | Examples of Golang compared to Node.js for learning | 3086 | 226 | 0 | 2019-01-03T05:30:44Z | 2022-08-22T22:41:17Z |
[ARCHIVED] ethereum-development-with-go-book | 📖 A little guide book on Ethereum Development with Go (golang) | 1447 | 347 | 9 | 2018-05-16T09:22:56Z | 2022-06-07T16:56:11Z |
[ARCHIVED] working-with-go | A set of example golang code to start learning Go | 1161 | 180 | 0 | 2014-05-04T21:29:05Z | 2020-02-03T19:45:18Z |
goapp | An opinionated guideline to structure & develop a Go web application/service | 508 | 36 | 0 | 2020-07-04T11:47:44Z | 2022-03-26T05:06:00Z |
design-patterns | common creational, behavioural and structural patterns implemented in go 🤩 | 84 | 5 | 0 | 2020-09-24T05:48:15Z | 2020-11-07T17:58:20Z |
go-patterns | 5 | 0 | 0 | 2021-06-25T14:06:07Z | 2021-06-25T14:08:21Z | |
Building Go Web Applications and Microservices Using Gin | Get familiar with Gin and find out how it can help you reduce boilerplate code and build a request handling pipeline. | - | - | - | - | - |
Go By Example | Hands-on introduction to Go using annotated example programs. | - | - | - | - | - |
Games With Go | A video series teaching programming and game development. | - | - | - | - | - |
50 Shades of Go | Traps, Gotchas, and Common Mistakes for New Golang Devs. | - | - | - | - | - |
Go Language Tutorial | Learn Go language Tutorial. | - | - | - | - | - |
Go Tutorial | Learn Go programming. | - | - | - | - | - |
Go WebAssembly Tutorial - Building a Simple Calculator | - | - | - | - | - | |
CodeCrafters Golang Track | — Achieve mastery in advanced Go by building your own Redis, Docker, Git, and SQLite. Featuring goroutines, systems programming, file I/O, and more. | - | - | - | - | - |
Go database/sql tutorial | Introduction to database/sql. | - | - | - | - | - |
Canceling MySQL | How to cancel MySQL queries. | - | - | - | - | - |
Caching Slow Database Queries | How to cache slow database queries. | - | - | - | - | - |
Golang Tutorial Guide | A List of Free Courses to Learn the Go Programming Language. | - | - | - | - | - |
Golangbot | Tutorials to get started with programming in Go. | - | - | - | - | - |
GolangCode | Collection of code snippets and tutorials to help tackle every day issues. | - | - | - | - | - |
GopherSnippets | Code snippets with tests and testable examples for the Go programming language. | - | - | - | - | - |
Gosamples | Collection of code snippets that let you solve everyday code problems. | - | - | - | - | - |
Hackr.io | Learn Go from the best online golang tutorials submitted & voted by the golang programming community. | - | - | - | - | - |
How to Benchmark: dbq vs sqlx vs GORM | Learn how to benchmark in Go. As a case-study, we will benchmark dbq, sqlx and GORM. | - | - | - | - | - |
How To Deploy a Go Web Application with Docker | Learn how to use Docker for Go development and how to build production Docker images. | - | - | - | - | - |
How to Use Godog for Behavior-driven Development in Go | Get started with Godog — a Behavior-driven development framework for building and testing Go applications. | - | - | - | - | - |
Building and Testing a REST API in Go with Gorilla Mux and PostgreSQL | We’ll write an API with the help of the powerful Gorilla Mux. | - | - | - | - | - |
A Tour of Go | Interactive tour of Go. | - | - | - | - | - |
Learning Go by examples | Serie of article in order to learn Golang language by concrete applications as example. | - | - | - | - | - |
package main | YouTube channel about Programming in Go. | - | - | - | - | - |
Programming with Google Go | Coursera Specialization to learn about Go from scratch. | - | - | - | - | - |
Saving a Third of Our Memory by Re-ordering Go Struct Fields | How inefficient field ordering in Go structs. | - | - | - | - | - |
The world’s easiest introduction to WebAssembly with Golang | - | - | - | - | - | |
A Guide to Golang E-Commerce | Building a Golang site for e-commerce (demo included). | - | - | - | - | - |
Your basic Go | Huge collection of tutorials and how to’s. | - | - | - | - | - |
and how to’s.|-|-|-|-|-|
Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GitHubAPI ¶
type GitHubAPI interface {
UnmarshalGitHubRepo(ctx context.Context, fullName string, r *models.GitHubRepo) error
}
GitHubAPI github api interface
type GitHubClient ¶
GitHubClient implements GitHubAPI
func NewGitHubClient ¶
func NewGitHubClient(username, token string) *GitHubClient
NewGitHubClient returns a new GitHubClient
func (*GitHubClient) UnmarshalGitHubRepo ¶
func (c *GitHubClient) UnmarshalGitHubRepo(ctx context.Context, fullName string, r *models.GitHubRepo) error
UnmarshalGitHubRepo unmarshal github get repo api result to models.Record