599 KiB
Awesome Go
此项目是 awesome-go 中文版,最后一次同步时间 : 2024-11-22 07:16:48(每隔1天同步一次)
精选了一系列很棒的Go框架、库和软件。灵感来自于awesome-python。
小图标说明 :
小图标 | 说明 |
---|---|
最近一周有更新。可以基本判断当前库处于积极维护状态。 | |
最近三年没有更新。反应了此库的维护积极性不高,使用时需谨慎。 | |
此项目已归档,不再更新,使用时需谨慎。 | |
此项目有中文文档。 | |
godoc文档地址。 |
说明
你可以快速浏览贡献者名单contribution guidelines. 感谢所有为此项目付出的同学contributors; 你真棒! We use the Golang Bridge community Slack for instant communication, follow the form here to join. 如果您在看到一个包或项目不再维护或不适合,请往awesome-go提交Pull Request,本项目每隔一天与英文文档同步。感谢!
Sponsorships:
特别感谢 (翻译出错了? 试试 英文版 吧~)
Your app, enterprise-ready. Start selling to enterprise customers with just a few lines of code. Add Single Sign-On (and more) in minutes instead of months. |
|
Awesome Go has no monthly fee, but we have employees who work hard to keep it running. With money raised, we can repay the effort of each person involved! You can see how we calculate our billing and distribution as it is open to the entire community. Want to be a supporter of the project click here.
A curated list of awesome Go frameworks, libraries, and software. Inspired by awesome-python.
Contributing:
Please take a quick gander at the contribution guidelines first. Thanks to all contributors; you rock!
If you see a package or project here that is no longer maintained or is not a good fit, please submit a pull request to improve this file. Thank you!
内容
- Awesome Go
- 内容
- Actor Model
- Artificial Intelligence
- 音频和音乐
- 身份验证和OAuth
- 区块链
- Bot建设
- 构建自动化
- 命令行
- 配置
- 持续集成
- CSS预处理器
- Data Integration Frameworks
- 数据结构与算法
- 数据库
- 数据库驱动程序
- 日期和时间
- 分布式系统
- 动态域名
- 电子邮件
- 可嵌入的脚本语言
- 错误处理
- 文件处理
- 金融
- 表单
- 方法
- 游戏开发
- 发电机
- 地理
- Go 编译器
- Goroutines
- GUI
- 硬件
- 图片
- IoT (Internet of Things)
- 作业调度器
- JSON
- 日志记录
- 机器学习
- 消息
- 微软办公软件
- 杂项
- 自然语言处理
- 网络
- OpenGL
- ORM
- 包管理
- 性能
- 查询语言
- Reflection
- 嵌入的资源
- 科学与数据分析
- 安全
- 序列化
- 服务器应用程序
- 流处理
- 模板引擎
- 测试
- 文本处理
- Third-party APIs
- 公用事业公司
- UUID
- 验证
- 版本控制
- 视频
- Web框架
- WebAssembly
- Windows
- Workflow Frameworks
- XML
- 零信任
- 代码分析
- 编辑器插件
- Go 生成工具
- Go 工具
- 软件包
- 资源
Actor Model
Libraries for building actor-based programs. (翻译出错了? 试试 英文版 吧~)
- Ergo star:3733 An actor-based Framework with network transparency for creating event-driven architecture in Golang. Inspired by Erlang.
- Hollywood star:1222 Blazingly fast and light-weight Actor engine written in Golang.
- Goakt star:189 Fast and Distributed Actor framework using protocol buffers as message for Golang.
- ProtoActor - Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin.
Artificial Intelligence
Libraries for building programs that leverage AI. (翻译出错了? 试试 英文版 吧~)
- Ollama star:98796 Run large language models locally.
- LocalAI star:26097 Open Source OpenAI alternative, self-host AI models.
- langchaingo star:4745 LangChainGo is a framework for developing applications powered by language models.
- chromem-go star:311 Embeddable vector database for Go with Chroma-like interface and zero third-party dependencies. In-memory with optional persistence.
- fun The simplest but powerful way to use large language models (LLMs) in Go.
- OllamaFarm star:40 Manage, load-balance, and failover packs of Ollamas
音频和音乐
用于操作音频的库。 (翻译出错了? 试试 英文版 吧~)
- Oto star:1598 多平台的 low-level 声音播放库。
- PortAudio star:710 基于 Go 的PortAudio audio I/O库。
- GoAudio star:351 本地Go音频处理库。
- id3v2 star:339 ID3解码和编码库为Go。
- flac star:318 原生 Go FLAC编码器/解码器,支持FLAC流。
- malgo star:303 迷你音频库。
- minimp3 star:127 轻量级MP3解码器库。
- gaad star:126 原生 Go AAC位流解析器。
- gosamplerate star:34 libsamplerate 的 Go 语言实现接口。
身份验证和OAuth
Libraries for implementing authentication schemes. (翻译出错了? 试试 英文版 吧~)
- casbin star:17825 Authorization library that supports access control models like ACL, RBAC, and ABAC.
- jwt-go star:7273 A full featured implementation of JSON Web Tokens (JWT). This library supports the parsing and verification as well as the generation and signing of JWTs.
- goth star:5637 提供了 OAuth 和 OAuth2 的简单清晰易用的方法。可开箱即用处理多个提供程序。
- oauth2 star:5396 Successor of goauth2. Generic OAuth 2.0 package that comes with JWT, Google APIs, Compute Engine, and App Engine support.
- keto star:4851 Open Source (Go) implementation of "Zanzibar: Google's Consistent, Global Authorization System". Ships gRPC, REST APIs, newSQL, and an easy and granular permission language. Supports ACL, RBAC, and other access models.
- authboss star:3862 Modular authentication system for the web. It tries to remove as much boilerplate and "hard things" as possible so that each time you start a new web project in Go, you can plug it in, configure it, and start building your app without having to build an authentication system each time.
- openfga star:2954 Implementation of fine-grained authorization based on the "Zanzibar: Google's Consistent, Global Authorization System" paper. Backed by CNCF.
- scs star:2164 HTTP服务器的会话管理器。
- jwx star:1951 Go module implementing various JWx (JWA/JWE/JWK/JWS/JWT, otherwise known as JOSE) technologies
- loginsrv star:1920 JWT login microservice with pluggable backends such as OAuth2 (Github), htpasswd, osiam.
- osin star:1915 OAuth2服务器库。
- gologin star:1821 用于使用OAuth1和OAuth2身份验证提供者登录的可链处理程序。
- gorbac star:1605 轻量级的基于角色的访问控制(RBAC)实现。
- oidc star:1405 Easy to use OpenID Connect client and server library written for Go and certified by the OpenID Foundation
- paseto star:859 平台无关的安全令牌(PASETO)。
- jwt star:672 Safe, simple, and fast JSON Web Tokens for Go.
- go-guardian star:562 Go-Guardian is a golang library that provides a simple, clean, and idiomatic way to create powerful modern API and web authentication that supports LDAP, Basic, Bearer token, and Certificate based authentication.
- permissions2 star:513 Library for keeping track of users, login states, and permissions. Uses secure cookies and bcrypt.
- jwt star:356 轻量级JSON Web令牌库。
- go-jose star:335 相当完整地实现了JOSE工作组的JSON Web令牌、JSON Web签名和JSON Web加密规范。
- jeff star:266 Simple, flexible, secure, and idiomatic web session management with pluggable backends.
- gosession star:252 This is quick session for net/http in GoLang. This package is perhaps the best implementation of the session mechanism, or at least it tries to become one.
- jwt-auth star:232 JWT中间件,可用于Golang http服务器,提供了许多配置选项。
- otpgen star:138 库生成TOTP/HOTP代码。
- sessionup star:125 简单但有效的HTTP会话管理和标识包。
- sjwt star:119 简单的jwt生成器和解析器。
- session star:118 web服务器会话管理(包括支持谷歌应用程序引擎 - GAE)。
- branca star:85 branca token规范实现用于Golang 1.15+。
- securecookie star:80 高效安全的cookie编码/解码。
- sessions star:78 非常简单,高性能,可深度定制的会话服务,主要用于的 go http 服务器。
- otpgo star:71 基于时间的一次性密码(TOTP)和基于hmac的一次性密码(HOTP)库用于Go。
- scope star:40 在Go中轻松管理OAuth2范围。
- cookiestxt star:17 provides a parser of cookies.txt file format.
区块链
构建区块链的工具。 (翻译出错了? 试试 英文版 吧~)
- go-ethereum star:47658 以太坊协议的官方Go实现。
- kubo star:16178 A blockchain framework implemented in Go. It provides content-addressable storage which can be used for decentralized storage in DApps. It is based on the IPFS protocol.
- lnd star:7714 A complete implementation of a Lighting Network node.
- cosmos-sdk star:6273 在宇宙生态系统中构建公共区块链框架。
- tendermint star:5716 一个高性能中间件,可将任何语言的状态机转换为 Byzantine Fault 状态机。使用 Tendermint 一致性及区块链协议。
- solana-go star:924 去库与Solana JSON RPC和WebSocket接口接口。
- gno star:898 A comprehensive smart contract suite built with Golang and Gnolang, a deterministic, purpose-built Go variant for blockchains.
- cometbft star:646 A distributed, Byzantine fault-tolerant, deterministic state machine replication engine. It is a fork of Tendermint Core and implements the Tendermint consensus algorithm.
- gossamer star:433 Polkadot主机的Go实现。
- gosemble star:12 A Go-based framework for building Polkadot/Substrate-compatible runtimes.
Bot建设
用于构建和使用机器人的库。 (翻译出错了? 试试 英文版 吧~)
- telegram-bot-api star:5836 简单轻量级的Telegram bot客户端。
- telebot star:4041 Telegram bot framework is written in Go.
- olivia star:3687 用人工神经网络建造的聊天机器人。
- wayback star:1817 A bot for Telegram, Mastodon, Slack, and other messaging platforms archives webpages.
- Kelp star:1104 官方交易和做市机器人为Stellar DEX。开箱即用的作品,用 Golang 编写,兼容集中交易和定制交易策略。
- Golang CryptoTrading Bot star:1083 基于控制台的,用于加密货币交易所的的交易机器人。
- go-chat-bot star:826 用 Go 编写的IRC, Slack和电报机器人。
- go-joe 一个通用的机器人库的灵感来自于Hubot。
- bot star:760 Zero-dependencies Telegram Bot library with additional UI components
- telego star:565 goang的Telegram Bot API库,完全一对一的API实现。
- echotron star:372 一个优雅的并发库Telegram Bots in Go。
- go-twitch-irc star:357 为twitch写机器人的库。电视聊天
- tbot star:355 带有类似于net/http API的Telegram bot服务器。
- go-sarah star:261 Framework to build a bot for desired chat services including LINE, Slack, Gitter, and more.
- slack-bot star:186 为懒惰的开发者准备好使用Slack Bot:自定义命令,Jenkins, Jira, Bitbucket, Github…
- Tenyks star:176 面向服务的IRC bot,使用Redis和JSON进行消息传递。
- larry star:161 拉里🐦是一个很简单的推特机器人生成器,tweet随机从Github库建在走。
- hanu star:154 用于编写Slack机器人的框架。
- go-tgbot star:120 Pure Golang Telegram Bot API wrapper, generated from swagger file, session-based router, and middleware.
- go-tg star:107 Generated from official docs Go client library for accessing Telegram Bot API, with batteries for building complex bots included.
- ephemeral-roles star:90 用于管理基于语音通道成员存在的临时角色的不和机器人。
- margelet star:86 构建电报机器人的框架。
- slackscot star:55 另一个构建Slack机器人的框架。
- govkbot star:50 简单的Go VK bot库。
- slacker star:43 可简单创建Slack机器人的框架。
- teleterm star:38 Telegram Bot执行终端命令。
- micha star:30 基于 GO 实现的Telegram 机器人API库。
构建自动化
Libraries and tools help with build automation. (翻译出错了? 试试 英文版 吧~)
- air star:18271 Air - Live reload for Go apps.
- Task star:11503 简单的“Go”的选择。
- realize star:4460 Go build a system with file watchers and live to reload. Run, build and watch file changes with custom paths.
- mage star:4162 法师是一个使用Go制作/耙子类的构建工具。
- mmake star:1724 现代 Make 工具
- xc star:1202 Task runner with README.md defined tasks, executable markdown.
- goyek star:572 在Go中创建构建管道。
- taskctl star:295 并发任务跑。
- 1build star:227 命令行工具,以无摩擦地管理项目特定的命令。
- gaper star:81 当Go项目崩溃或一些人看到文件更改时,构建并重新启动该项目。
- gilbert 一个为 Go 项目而生的构建系统和任务运行器。
- anko star:39 适用于多种编程语言的简单应用程序监视程序。
- gob star:11 Gradle/Maven like build tool for Go projects.
命令行
高级控制台用户界面
用于构建控制台应用程序和控制台用户界面的库。 (翻译出错了? 试试 英文版 吧~)
- bubbletea star:28111 Go framework to build terminal apps, based on The Elm Architecture.
- termui star:13214 此库是基于termbox-go实现的,借鉴于blessed-contrib。
- gocui star:9935 旨在创建控制台用户界面的极简Go库。
- gommon/color 更换终端文本样式。
- lipgloss star:8200 Declaratively define styles for color, format and layout in the terminal.
- bubbles star:5633 TUI components for bubbletea.
- go-prompt star:5295 构建一个强大的交互式提示,借鉴于python-prompt-toolkit
- pterm star:4869 一个在每个平台上使用许多可组合组件美化控制台输出的库。
- termbox-go star:4681 基于文本的跨平台接口库。
- progressbar star:4144 基本线程安全的进度条,在每个操作系统工作。
- termdash star:2729 此库是基于termbox-go实现的,借鉴于termui。
- asciigraph star:2686 在命令行中构建轻量级ASCII线图╭┈╯,应用程序中没有其他依赖项。
- spinner star:2358 一个 Go 语言软件包,提供多种选项,方便在终端中创建加载动画。
- mpb star:2324 可在终端显示多进度条。
- uiprogress star:2112 在终端呈现进度条,可灵活配置的。
- termenv star:1757 先进的ANSI风格和颜色支持您的终端应用程序。
- uilive star:1698 Library for updating terminal output in real time.
- gookit/color star:1515 终端显色工具库,支持16种颜色,256种颜色,RGB显色输出,兼容Windows。
- aurora star:1427 ANSI terminal colors that support fmt.Printf/Sprintf.
- go-isatty star:833 Go 实现的 isatty。
- go-colorable star:770 适用于windows的颜色编写器。
- uitable star:735 改善终端应用程序中表格数据的可读性。
- box-cli-maker star:537 为你的CLI制作高度定制的盒子。
- simpletable star:532 Simple tables in a terminal with Go.
- bubble-table star:455 An interactive table component for bubbletea.
- chalk star:452 美化终端/控制台输出。
- yacspin star:439 用于与终端旋转器一起工作。
- tabby star:356 一个可在终端生成一个极简Golang表格轻量级库
- go-colortext star:214 在终端中使用彩色文字。
- cfmt star:103 提供上下文的fmt,灵感来自于bootstrap color classes。
- tabular star:76 不需要向API传递大量参数就可从命令行实用程序中打印ASCII表。
- cfmt star:68 简单和方便格式化格式化输出完全兼容fmt库。
- table star:50 Small library for terminal color based tables.
- marker star:48 最简单的方法来匹配和标记字符串的彩色终端输出。
- ctc star:46 不需要Print方法的非侵入性跨平台终端颜色库。
- colourize star:27 在终端提供ANSI彩色文本。
- go-ataman star:17 在终端提供ANSI彩色文本模板。
- go-palette star:17 Go library that provides elegant and convenient style definitions using ANSI colors. Fully compatible & wraps the fmt library for nice terminal layouts.
- crab-config-files-templating star:7 Dynamic configuration file templating tool for kubernetes manifest or general configuration files.
标准CLI
用于构建标准或基本命令行应用程序的库。 (翻译出错了? 试试 英文版 吧~)
- cobra star:38345 现代Go CLI命令行交互工具。
- elvish star:5720 一种表达性编程语言和通用的交互外壳。
- kingpin star:3502 支持子命令的命令行和标志解析器(被' kong '取代;见下文)。
- Dnote star:2800 一个简单的命令行笔记本与多设备同步。
- go-flags star:2601 Go 命令行选项解析器。
- pflag star:2425 基于POSIX/GNU-style --flags实现的包,主要用于替换Go的falg包。
- go-arg star:2039 基于结构的参数解析。
- mitchellh/cli star:1734 用于实现命令行接口的Go库。
- ops star:1297 Unikernel 构建器/协调器。
- liner star:1048 类似readline-like的命令行接口库。
- carapace-bin star:950 多shell多命令参数完成器。
- complete star:928 使用 Go 语言编写的 bash 命令补全工具以及 Go 命令补全工具.
- mow.cli star:872 用于构建具有复杂标志和参数解析和验证的CLI应用程序。
- flaggy star:859 一个健壮的、易用的标志包,具有出色的子命令支持。
- mkideal/cli star:732 基于golang结构标签,功能丰富易于使用的命令行包。
- argparse star:612 命令行参数分析器,灵感来自Python的argparse模块。
- carapace star:426 用于spf13/cobra的命令参数补全生成器。
- climax star:217 Alternative CLI with "human face", in spirit of Go command.
- clîr star:180 一个简单而清晰的CLI库。依赖免费的。
- commandeer star:174 开发友好的CLI应用程序。
- job star:147 工作,把你的短期指令当作长期任务。
- cmdr star:137 一个POSIX/GNU风格的、类似getopt的命令行UI Go库。
- flag star:131 简单但功能强大的命令行选项解析库,用于支持Go子命令。
- acmd star:115 Simple, useful, and opinionated CLI package in Go.
- env star:114 基于标记的结构化的环境配置。
- gocmd star:65 用于构建命令行应用程序。
- hiboot cli 具有自动配置和依赖注入的cli应用程序框架。
- command-chain star:62 A go library for configure and run command chains - such as pipelining in unix shells.
- go-getoptions star:56 Go option parser inspired by the flexibility of Perl’s GetOpt::Long.
- flagvar star:43 符合 Go 标准的“flag”标志参数类型包。
- argv star:41 基于Base 语法,用于分隔命令行字符串并将其作为参数的 Go 语言库,
- cmd star:40 扩展标准的' flag '包以支持子命令和更多惯用方式。
- go-commander star:35 用于简化CLI工作流的 Go 库。
- mcli star:33 A minimal but very powerful cli library for Go.
- go-andotp star:30 A CLI program to encrypt/decrypt andOTP files. Can be used as a library as well.
- carapace-spec star:19 Define simple completions using a spec file.
- readline Shell library with modern and easy to use UI features.
- urfave/cli star:22395 可让你简单、快速和愉快的构建命令行应用(之前是codegangsta/cli)。
- survey star:4093 Build interactive and accessible prompts with full support for windows and posix terminals.
- wmenu star:216 Easy to use menu structure for cli applications that prompt users to make choices.
- sflags star:156 Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin, and other libraries.
- teris-io/cli star:130 为 Go 构建命令接口提供简单而完整的API。
- ukautz/clif star:129 简小的命令行接口框架。
- version star:101 Collects and displays CLI version information in multiple formats along with upgrade notice.
- wlog star:66 支持跨平台和并发的简单日志记录接口。
- strumt star:62 用于创建提示链。
- sand star:27 用于创建解释器等的简单API。
- ts star:20 时间戳转换和比较工具。
- subcmd star:8 解析和运行子命令的另一种方法。与标准的“旗帜”包一起工作。
配置
配置解析的库。 (翻译出错了? 试试 英文版 吧~)
- viper star:27274 配置管理。
- godotenv star:8464 Ruby 的 dotenv 库的 Go移植版(从.env文件加载环境变量)。
- sonic star:6961 A blazingly fast JSON serializing & deserializing library.
- kelseyhightower/envconfig star:5075 管理来自环境变量的配置数据。
- env star:4947 解析环境变量并赋值到struct中(默认值)。
- ini star:3469 读和写INI文件。
- koanf star:2802 轻量级可扩展库,用于读取Go应用程序中的配置。内置支持JSON, TOML, YAML, env,命令行。
- kong star:2156 Command-line parser with support for arbitrarily complex command-line structures and additional sources of configuration such as YAML, JSON, TOML, etc (successor to
kingpin
). - cleanenv star:1666 简约的配置阅读器(来自文件、环境,以及你想要的任何地方)。
- xdg star:716 Go implementation of the XDG Base Directory Specification and XDG user directories.
- konfig star:648 可组合、可观察和高性能的分布式配置管理。
- aconfig star:550 简单,有用和固执的配置加载程序。
- gookit/config star:539 程序配置管理(load,get,set)。支持JSON, YAML, TOML, INI, HCL。支持多文件加载,数据覆盖合并。
- confita star:495 从多个后端级联加载配置到struct中。
- fig star:381 用于从文件和环境变量(带有验证和默认值)中读取配置的微型库。
- GoLobby/Config star:366 GoLobby Config is a lightweight yet powerful configuration manager for the Go programming language.
- gone/jconf Modular JSON configuration. Keep your config structs along with the code they configure and delegate parsing to submodules without sacrificing full config serialization.
- config star:336 云本地应用程序配置。将ENV绑定到结构体仅需两行代码。
- hjson star:332 更加人性化的JSON配置。轻松的语法,更少的错误,更多的注释。
- store star:274 轻量级配置管理器。
- envconfig star:241 从环境变量中读取配置。
- konf star:239 The simplest API for reading/watching config from file, env, flag and clouds (e.g. AWS, Azure, GCP).
- joshbetz/config star:215 一个可解析环境变量、JSON文件小巧的配置库,在SIGHUP时会自动重新加载。
- harvester star:132 Harvester, an easy to use static and dynamic configuration package supporting seeding, env vars and Consul integration.
- onion star:118 基于层配置的Go,支持JSON, TOML, YAML,属性,etcd, env,和加密使用PGP。
- configuration star:108 库,用于从环境变量、文件、标记和“默认”标记初始化配置结构。
- envh star:99 协助管理环境变量的Helpers。
- configuro star:95 固执己见的配置加载和验证框架从环境和文件集中到12因素兼容的应用程序。
- hocon star:79 使用HOCON(一种人类友好的JSON超集)格式的配置库,支持环境变量、引用其他值、注释和多个文件等特性。
- xdg star:79 Cross platform package that follows the XDG Standard.
- uConfig star:69 轻量级、零依赖和可扩展的配置管理。
- gofigure star:68 让程序配置变得简单。
- env star:67 用于将环境变量加载到结构中的轻量级包。
- go-aws-ssm star:59 从AWS系统管理器-参数存储中获取参数的Go包。
- configure star:56 通过多个源提供配置,包括JSON、flags和环境变量。
- config star:51 configure your app using file, environment variables, or flags in two lines of code
- go-cfg star:43 The library provides a unified way to read configuration data into a structure from various sources, such as env, flags, and configuration files (.json, .yaml, .toml, .env).
- go-up star:43 一个简单的配置库,具有递归占位符解析功能。
- genv star:39 使用dotenv支持轻松读取环境变量。
- ingo star:38 flag保存在类ini的配置文件中。
- confiq star:35 Structured data format to config struct decoder library for Go - supporting multiple data formats
- mini star:35 用于解析ini类型的配置文件。
- conflate star:34 合并来自任意url的多个JSON/YAML/TOML文件、针对JSON模式的验证以及模式中定义的默认值的应用程序。
- go-ssm-config star:22 从AWS SSM(参数存储)加载配置参数的Go实用程序。
- go-array star:20 A Go package that read or set data from map, slice or json.
- bcl star:19 BCL is a configuration language similar to HCL.
- nasermirzaei89/env star:18 读取环境变量的简单有用的包。
- yamagiconf star:18 The "safe subset" of YAML for Go configs.
- ini star:15 INI Parser & Write Library, Unmarshal to Struct, Marshal to Json, Write File, watch file.
- go-ini star:14 一个对ini文件进行封送和解送的Go包。
- go-conf star:12 用于基于注释结构的应用程序配置的简单库。它支持从环境变量、配置文件和命令行参数读取配置。
- gonfig star:9 基于标记的配置解析器,它将来自不同提供程序的值加载到类型安全结构中。
- typenv star:9 简约,零依赖,类型化环境变量库。
- nfigure star:8 Per-library struct-tag based configuration from command lines (Posix & Go-style); environment, JSON, YAML
- piper star:8 带有配置继承和密钥生成的Viper包装器。
- swap star:8 根据构建环境递归实例化/配置结构。(YAML, TOML, JSON和env)。
- env star:6 An environment utility package with support for unmarshaling into structs
- GoCfg star:6 Config manager with Struct Tags based contracts, custom value providers, parsers, and documentation generation. Customizable yet simple.
- goConfig 将结构体解析为输入,并用来自命令行、环境变量和配置文件的参数填充该结构体的字段。
持续集成
用于帮助进行持续集成的工具。 (翻译出错了? 试试 英文版 吧~)
- drone star:32249 Drone 是一个基于 Docker 的持续集成平台,用 Go 编写。
- CDS star:4606 企业级CI/CD和DevOps自动化开源平台。
- woodpecker star:4301 Woodpecker is a community fork of the Drone CI system.
- muffet star:2519 Fast website link checker in Go, see alternatives.
- abstruse star:938 Abstruse is a distributed CI platform.
- Bencher A suite of continuous benchmarking tools designed to catch performance regressions in CI.
- goveralls star:790 Coveralls.io 是一个用 Go 编写,可持续对代码覆盖率进行检测的系统。
- gotestfmt star:514 为人类测试输出。
- overalls star:115 针对多package 的 Go 语言项目,可为类似 goveralls 这样的工具生成覆盖率报告。
- go-test-coverage star:88 Tool and GitHub action which reports issues when test coverage is below set threshold.
- gomason star:65 在一个干净的工作区中对你的 Go 二进制文件进行测试、构建、签名和发布。
- dot star:24 A minimal, local first continuous integration system that uses Docker to run jobs concurrently in stages.
- roveralls star:20 递归覆盖测试工具。
- go-fuzz-action star:15 Use Go 1.18's built-in fuzz testing in GitHub Actions.
- go-beautiful-html-coverage star:13 A GitHub Action to track code coverage in your pull requests, with a beautiful HTML preview, for free.
- go-semver-release star:10 Automate the semantic versioning of Git repositories.
CSS预处理器
用于预处理CSS文件的库。 (翻译出错了? 试试 英文版 吧~)
- gcss star:496 纯Go编写的 CSS 预处理器。
- go-libsass star:206 采用 Go封装,100% 与 Sass 兼容的 libsass 项目。
Data Integration Frameworks
Frameworks for performing ELT / ETL (翻译出错了? 试试 英文版 吧~)
- Benthos star:8139 一系列协议之间的消息流桥接。
- CloudQuery A high-performance ELT data integration framework with pluggable architecture.
- omniparser star:976 一个通用的ETL库,以流方式解析文本输入(CSV/txt/JSON/XML/EDI/X12/EDIFACT/etc),并使用数据驱动模式将数据转换为JSON输出。
数据结构与算法
Bit-packing和压缩
- roaring star:2537 实现了压缩 bitsets 的Go包。
- binpacker star:220 帮助用户构建自定义二进制流的二进制封装器和解包器
- bit star:158 Go 语言集合数据结构。提供了额外的位操作功能。
- crunch star:97 打包实现缓冲区,以便轻松处理各种数据类型。
- bingo star:41 将本地类型快速、零分配、保持字典顺序的字节打包。
- go-ef star:31 实现了 Elias-Fano 编码。
位集合
布隆和布谷鸟过滤器
- bloom star:2448 实现Bloom过滤器。
- boomfilters star:1595 用于处理连续的概率数据结构。
- cuckoofilter star:1138 布谷鸟过滤器:一个用Go实现,可替代计数 bloom 过滤器。
- cuckoo-filter star:295 Cuckoo filter: a comprehensive cuckoo filter, which is configurable and space optimized compared with other implements, and all features mentioned in original paper are available.
- bloom star:147 在Go中实现了Bloom过滤器。
- ring star:138 高性能、线程安全的bloom过滤器。
- bloom star:86 Golang Bloom过滤器的实现。
- bloomfilter star:17 另一个在Go中的Bloomfilter实现,与Java的番石榴库兼容。
数据结构和算法集合
- gods star:16399 数据结构。容器、集合、列表、堆栈、地图、BidiMaps、树、HashSet等。
- go-datastructures star:7683 可靠的、高性能的和线程安全的数据结构的集合。
- gostl star:1056 用于go的数据结构和算法库,旨在提供类似c++ STL的函数。
- algorithms star:805 算法和数据结构。来源于CLRS。
迭代器
地图
See also Database for more complex key-value stores, and Trees for additional ordered map implementations.
- cmap star:92 一个线程安全的go map
- dict star:45 实现类似 python dict的功能(dict)。
- goradd/maps star:43 Go 1.18+ generic map interface for maps; safe maps; ordered maps; ordered, safe maps; etc.
- go-shelve star:8 A persistent, map-like object for the Go programming language. Supports multiple embedded key-value stores.
杂项数据结构和算法
- gota star:3082 实现了数据帧,序列以及数据噪音。
- hyperloglog star:945 HyperLogLog implementation with Sparse, LogLog-Beta bias correction and TailCut space reduction.
- go-geoindex star:355 基于内存的地理索引。
- hilbert star:278 用于映射空间填充曲线(例如 Hilbert 曲线和 Peano 曲线)和数值。
- go-rquad star:134 区域四叉树具有高效的点定位和邻域查找功能。
- conjungo star:128 一个小型、强大和灵活的合并库。
- go-rampart star:101 Determine how intervals relate to each other.
- gogu star:99 A comprehensive, reusable and efficient concurrent-safe generics utility functions and data structures library.
- go-tuple star:82 Go 1.18+的通用元组实现。
- go-generics star:76 Generic slice, map, set, iterator, and goroutine utilities.
- hide star:69 ID type with marshalling to/from hash to prevent sending IDs to clients.
- count-min-log star:66 Go实现Count-Min-log sketch的功能 : 使用近似计数器进行近似计数(类似Count-Min sketch,但使用更少内存)。
- fsm star:65 有限状态机包。
- concurrent-writer star:55 具备高并发能力,可替换 bufio.Writer。
- genfuncs star:52 Go 1.18+ generics package inspired by Kotlin's Sequence and Map.
- go18ds star:46 Go Data Structures using Go 1.18 generics.
- quadtree star:37 Generic, zero-alloc, 100%-test covered quadtree.
- slices star:20 Pure, generic functions for slices.
- gofal star:19 基于 Go 实现的分数计算。包含分子、分母运算
- slices star:17 对片进行操作的函数;类似于“包字符串”,但适用于使用片。
可空类型
- nan star:85 一个库中的可零分配空结构,具有方便的转换函数、编组器和解组器。
- typ star:46 从复杂结构中获取值,支持空类型、安全的类型转换。
- null star:36 对空的 Go 数据类型也可以进行JSON进行解析/反解析。
队列
- hatchet star:4261 Distributed, Fault-tolerant task queue.
- deque star:592 快速环缓冲区deque(双端队列)。
- goconcurrentqueue star:396 并行FIFO队列。
- queue star:274 Multiple thread-safe, generic queue implementations for Go.
- deque star:185 高度优化的双端队列。
- memlog star:122 受Apache Kafka启发,一个易于使用、轻量级、线程安全、只追加内存数据结构。
集
- golang-set star:4224 线程安全和非线程安全的高性能集。
- goset star:52 一个有用的Go集合实现。
- set star:27 使用LinkedHashMap在Go中实现简单的set数据结构。
- dsu star:14 在Go中实现离散集数据结构。
文本分析
- bleve star:10111 基于 Go 的现代文本索引库。
- trie star:764 在Go中实现Trie。
- go-edlib star:482 Go字符串比较和编辑距离算法库(Levenshtein, LCS, Hamming, Damerau Levenshtein, Jaro-Winkler等)兼容Unicode。
- go-adaptive-radix-tree star:371 自适应基数树。
- levenshtein star:362 实现在Go中计算levenshtein距离。
- levenshtein star:86 Levenshtein distance and similarity metrics with customizable edit costs and Winkler-like bonus for common prefix.
- ptrie star:42 前缀树的一种实现。
- mspm star:26 用于信息检索的多字符串模式匹配算法。
- parsefields star:7 用于解析类似json的日志的工具,用于收集惟一的字段和事件。
树
- hashsplit 将字节流分割成块,并将块排列成树,边界由内容而不是位置决定。
- skiplist star:277 高性能的 Go 跳表实现。
- skiplist star:84 在Go中实现了跳表。
- treemap star:60 在底层使用红黑树的通用键排序地图。
- treap star:27 使用树堆进行持久、快速有序的映射。
- merkle star:19 默克尔根哈希的空间高效计算和包含证明。
管道
- pipeline star:57 实现了 fan-in 和 fan-out 的管道功能。
- ordered-concurrently star:38 Go模块,处理并发工作,并在通道中返回输入顺序的输出。
- parapipe star:31 FIFO管道,并行执行在每个阶段,同时保持消息和结果的顺序。
数据库
缓存
具有过期记录的数据存储、内存中的分布式数据存储或基于文件的数据库的内存子集。 (翻译出错了? 试试 英文版 吧~)
- BigCache star:7566 高效的键/值缓存为千兆字节的数据。
- GCache star:2604 支持过期缓存、LFU、LRU和ARC的缓存库。
- fastcache star:2134 基于内存的快速线程安全的缓存,可缓存大量的条目。最大限度地减少GC开销。
- cache2go star:2125 基于内存的 K/V 缓存,支持超时的自动失效。
- EchoVault star:422 Embeddable Distributed in-memory data store compatible with Redis clients.
- cachego star:370 基于多个驱动程序的缓存组件。
- cache star:186 基于内存的 K/V 存储:带生命周期的值存储,0个依赖项,<100 LoC, 100%覆盖率。
- bcache star:156 Eventually consistent distributed in-memory cache Go library.
- go-cache star:139 A flexible multi-layer Go caching library to deal with in-memory and shared cache by adopting Cache-Aside pattern.
- couchcache star:64 由 Couchbase服务 支持的RESTful缓存微服务。
- clusteredBigCache star:45 BigCache 支持集群和独立且生命周期存储项。
- 2q star:41 2Q内存缓存实现。
- gdcache star:13 一个由golang实现的纯非侵入式缓存库,您可以使用它来实现您自己的分布式缓存。
- coherence-go-client star:10 Full implementation of Oracle Coherence cache API for Go applications using gRPC as network transport.
- go-freelru A GC-less, fast and generic LRU hashmap library with optional locking, sharding, eviction and expiration.
- groupcache star:12962 Groupcache是一个缓存和缓存填充库,在许多情况下,它是memcached的替代品。
- gocache star:2488 A complete Go cache library with multiple stores (memory, memcache, redis, ...), chainable, loadable, metrics cache and more.
- otter star:1715 A high performance lockless cache for Go. Many times faster than Ristretto and friends.
- ttlcache star:955 具有项目过期和泛型的内存缓存。
- sturdyc star:339 A caching library with advanced concurrency features designed to make I/O heavy applications robust and highly performant.
- theine star:280 High performance, near optimal in-memory cache with proactive TTL expiration and generics.
- pocache star:209 Pocache is a minimal cache package which focuses on a preemptive optimistic caching strategy.
- imcache star:123 A generic in-memory cache Go library. It supports expiration, sliding expiration, max entries limit, eviction callbacks and sharding.
- go-mcache star:97 基于内存的实现了高性能的key:value存储库。指针缓存。
- timedmap star:72 实现了有生命周期的键值对Map。
- icache star:19 A High Performance, Generic, thread-safe, zero-dependency cache package.
- nscache star:11 A Go caching framework that supports multiple data source drivers.
- gocache star:9 A data race free Go ache library with high performance and auto pruge functionality
- ttlcache star:9 内存键值存储与TTL为每个记录。
Go中实现的数据库
- prometheus star:55849 用于监控系统和时序的数据库。
- tidb star:37327 TiDB是一个分布式SQL数据库。灵感来自谷歌F1的设计。
- Milvus star:30854 Milvus是一个矢量数据库,用于嵌入管理、分析和搜索。
- cockroach star:30155 可伸缩、区域备份、事务性数据存储。
- influxdb star:28997 可伸缩的数据存储,用于指标衡量、事件和实时分析。
- dgraph star:20448 可伸缩、分布式、低延迟、高吞吐量的图形数据库。
- dolt star:17980 Dolt – It's Git for Data.
- rqlite star:15811 基于SQLite的轻量级分布式关系数据库。
- badger star:13997 快速 K/V 存储。
- VictoriaMetrics star:12467 开源,快速,可伸缩的时间序列数据库。支持PromQL。
- immudb star:8635 immudb是一个轻量级、高速、不可变的数据库,用于用Go编写的系统和应用程序。
- bbolt star:8303 一个用于Go的嵌入式键/值数据库。
- Bitcask Bitcask是一个可嵌入的、持久的、快速的键值(KV)数据库,使用纯Go编写,具有可预测的读写性能、低延迟和高吞吐量,这得益于Bitcask的磁盘布局(LSM+WAL)。
- goleveldb star:6161 在Go中实现LevelDB key/value数据库。
- pebble star:4941 RocksDB/LevelDB inspired key-value database in Go.
- rosedb star:4628 基于LSM+WAL的嵌入式k-v数据库,支持string、list、hash、set、zset。
- buntdb star:4582 基于内存的K/V,快速,可嵌入的数据库,可自定义索引和空间支持。
- ledisdb star:4102 Ledisdb是一种高性能的NoSQL,类似于基于LevelDB的Redis。
- godis star:3509 一个Golang实现了高性能Redis服务器和集群。
- redka star:3505 Redis re-implemented with SQLite.
- nutsdb star:3404 Nutsdb is a simple, fast, embeddable, persistent key/value store written in pure Go. It supports fully serializable transactions and many data structures such as list, set, sorted set.
- LinDB star:3010 LinDB is a scalable, high performance, high availability distributed time series database.
- tiedot star:2724 属于你的NoSQL数据库。
- lotusdb star:2083 快速k/v数据库兼容lsm和b+树。
- CovenantSQL star:1497 区块链领域的一个SQL数据库。
- column star:1436 高性能、柱状、可嵌入的内存存储,具有位图索引和事务。
- diskv star:1410 支持磁盘备份的可持久化 K/V 存储。
- pogreb star:1311 针对大量读取工作负载的嵌入式键值存储。
- Databunker star:1258 个人身份信息(PII)存储服务符合GDPR和CCPA。
- objectbox-go star:1106 High-performance embedded Object Database (NoSQL) with Go API.
- eliasdb star:1005 无其他依赖项,支持REST API,短语搜索和sql类似的查询语言的事务图数据库。
- moss star:956 Moss是一个用100% Go编写的简单LSM键值存储引擎。
- clover star:698 一个轻量级的面向文档的NoSQL数据库编写纯Golang。
- levigo star:415 实现了对LevelDB封装。
- pudge star:371 使用Go的标准库编写的快捷、简单的键/值存储。
- Vasto star:261 分布式高性能键值存储。可做磁盘备份。最终一致。高可用。能够在不中断服务的情况下增长或收缩。
- dtf star:212 分布式事务管理器。支持XA, TCC, SAGA,可靠消息。
- piladb star:206 基于堆栈数据结构的轻量级RESTful数据库引擎。
- libradb star:169 LibraDB is a simple database with less than 1000 lines of code for learning.
- unitdb star:120 Fast timeseries database for IoT, realtime messaging applications. Access unitdb with pubsub over tcp or websocket using github.com/unit-io/unitd application.
- hare star:93 一个简单的数据库管理系统,将每个表存储为一行分隔的JSON文本文件。
- rotom star:41 A tiny Redis server built with Golang, compatible with RESP protocols.
- Coffer star:39 支持事务的简单ACID键值数据库。
- tempdb star:19 用于临时数据存放的 K/V 存储。
数据库模式迁移
- migrate star:15541 基于CLI的数据库迁移库。
- bytebase star:11482 Safe database schema change and version control for DevOps teams.
- goose star:7155 数据库迁移工具。您可以通过创建增量SQL或Go脚本来管理数据库的升级。
- atlas star:5990 一个数据库工具箱。旨在帮助企业更好地处理数据的CLI。
- dbmate star:5496 A lightweight, framework-agnostic database migration tool.
- sql-migrate star:3237 数据库迁移工具。允许使用go-bindata将迁移嵌入到应用程序中。
- skeema star:1269 用于MySQL的纯sql模式管理系统,支持分片和外部在线模式更改工具。
- soda 数据库迁移、创建、ORM等。用于MySQL、PostgreSQL和SQLite。
- gormigrate star:1047 面向Gorm ORM的数据库 schema 迁移辅助程序。
- goavro star:986 一个对Avro数据进行编码和解码的Go包。
- migrator star:169 非常简单的 Go 数据库迁移库。
- darwin star:144 用于数据库 schema 升级的库。
- sqlize star:103 数据库迁移生成器。允许生成sql迁移从模型和现有的sql不同。
- go-pg-migrations star:84 用Go -pg/pg编写的迁移包。
- avro star:46 发现SQL schemas并将其转换为AVRO schemas。
- schema star:35 库,用于将数据库/sql兼容数据库的模式迁移嵌入到Go二进制文件中。
- go-fixtures star:29 类似 Django fixture,用于 Go 建立内置数据库/sql库。
- migrator star:25 MySQL数据库迁移器设计用于运行到您的特性的迁移,并管理数据库模式更新与直观的go代码。
- libschema star:15 Define your migrations separately in each library. Migrations for open source libraries. MySQL & PostgreSQL.
- gorm-seeder star:13 Simple database seeder for Gorm ORM.
- go-pg-migrate star:10 用于go-pg迁移管理的cli友好包。
- godfish star:7 数据库迁移管理器,使用本地查询语言。支持cassandra, mysql, postgres, sqlite3。
数据库工具
- vitess star:18700 vitess提供了可以为大规模web服务扩展MySQL数据库提供便利的服务和工具。
- pgweb star:8655 基于web的PostgreSQL数据库浏览器。
- go-mysql star:4617 Go 工具集,用于处理MySQL协议和复制。
- pREST star:4240 简化和加速开发,⚡即时、实时、高性能在任何Postgres应用,现有的或新的。
- chproxy star:1289 ClickHouse数据库的HTTP代理。
- pg_timetable star:1100 高级调度为PostgreSQL。
- clickhouse-bulk star:477 收集小的插入,并向ClickHouse服务器发送大的请求。
- rdb star:395 Redis RDB文件解析器用于二次开发和内存分析。
- gatewayd star:225 Cloud-native database gateway and framework for building data-driven applications. Like API gateways, for databases.
- wescale star:213 WeScale is a database proxy designed to enhance the scalability, performance, security, and resilience of your applications.
- octillery star:194 用于数据库分表(支持每个ORM或原生SQL)。
- onedump star:105 Database backup from different drivers to different destinations with one command and configuration.
- dbbench star:102 数据库基准测试工具,支持多个数据库和脚本。
- gorm-multitenancy star:46 Multi-tenancy support for GORM managed databases.
- hasql 用于访问多主机SQL数据库安装的库。
- prep star:33 在不更改代码的情况下使用准备好的SQL语句。
- dg star:32 A fast data generator that produces CSV files from generated relational data.
- rwdb star:19 rwdb为多个数据库服务器的设置提供读取副本功能。
- dynago star:12 Simplify working with AWS DynamoDB.
SQL查询生成器
用于构建和使用SQL的库。 (翻译出错了? 试试 英文版 吧~)
- sqlc star:13514 从SQL生成类型安全的代码。
- Squirrel star:7015 帮助您构建SQL查询的Go库。
- xo star:3739 基于现有的schema定义和自定义查询生成 Go 代码,基于支持PostgreSQL、MySQL、SQLite、Oracle和Microsoft SQL Server。
- jet star:2685 用于在Go中编写类型安全的SQL查询的框架,能够轻松地将数据库查询结果转换为所需的任意对象结构。
- goqu star:2408 常用的SQL生成器和查询库。
- gendry star:1623 非入侵的SQL构建器和强大的数据绑定器。
- Dotsql star:741 Go library帮助您将sql文件保存在一个地方,并轻松地使用它们。
- ozzo-dbx star:638 Powerful data retrieval methods as well as DB-agnostic query building capabilities.
- sqlingo star:411 在Go中构建SQL的轻量级DSL。
- dbq star:406 Zero boilerplate database operations for Go
- sqrl star:279 SQL查询生成器,从Squirrel fork而来,并再此基础上对性能做了优化。
- Squalus Go SQL中间层,能使得执行查询更加容易。
- sq star:197 用于Go的类型安全的SQL生成器和结构映射器。
- buildsqlx star:171 去数据库查询生成器库的PostgreSQL。
- bqb star:154 轻量级和易于学习的查询构建器。
- sqlf star:145 快速SQL查询生成器。
- igor star:125 PostgreSQL的抽象层,支持高级功能和类似gorm的语法。
- builq star:89 Easily build SQL queries in Go.
- godbal star:59 数据库抽象层(dbal)。支持SQL builder,轻松获取结果。
- qry star:35 该工具使用原始SQL查询从文件生成常量。
- gosql star:32 支持更好的空值的SQL查询生成器。
- Hotcoal star:20 Secure your handcrafted SQL against injection.
- ormlite star:14 包含一些类似orm的特性和sqlite数据库的辅助程序的轻量级包
- sg star:6 A SQL Gen for generating standard SQLs(supports: CRUD) written in Go.
数据库驱动程序
多个后端接口
- cayley star:14860 图形数据库,支持多个后端。
- gokv star:747 可扩展的简单的 K/V 存储(Redis、Consul、etcd、bbolt、BadgerDB、LevelDB、Memcached、DynamoDB、S3、PostgreSQL、MongoDB、CockroachDB等等)。
- go-transaction-manager star:234 Transaction manager with multiple adapters (sql, sqlx, gorm, mongo, ...) controls transaction boundaries.
- dsc star:33 面向 SQL、NoSQL、结构化文件的数据存储连接。
- dynamo star:19 A simple key-value abstraction to store algebraic and linked-data data types at AWS storage services: AWS DynamoDB and AWS S3.
关系数据库驱动程序
- go-sql-driver/mysql star:14548 MySQL驱动程序。
- pgx star:10825 PostgreSQL驱动,支持比现有database/sql更多的特性。
- pq star:9143 纯 Go 的Postgres驱动。
- go-sqlite3 star:8033 SQLite3驱动程序。
- go-mssqldb star:1827 微软MSSQL驱动程序。
- sqlhooks star:651 将钩子附加到任何数据库/sql驱动程序。
- go-oci8 star:631 Oracle 驱动程序。
- godror star:533 基于 ODPI-C 的 Oracle 驱动程序
- Sqinn-Go star:427 SQLite with pure Go.
- KSQL star:321 A Simple and Powerful Golang SQL Library
- surrealdb.go star:245 SurrealDB Driver for Go.
- firebirdsql star:229 Firebird RDBMS SQL驱动程序。
- ydb-go-sdk star:143 native and database/sql driver YDB (Yandex Database)
- go-adodb star:142 Microsoft ActiveX对象数据库驱动程序。
- avatica star:120 Apache Avatica/Phoenix SQL驱动程序。
- gofreetds star:113 微软该司机。去包装FreeTDS。
- bgc star:21 BigQuery 的数据存储连接。
- pig star:16 简单的pgx包装器执行和扫描查询结果很容易。
NoSQL数据库驱动程序
- redis star:20167 基于 Go 的 Redis 客户端。
- rueidis 快速Redis RESP3客户端与自动流水线和服务器辅助的客户端缓存。
- redigo star:9754 Redigo 是基于 Go 的Redis 客户端。
- mongo-go-driver star:8173 官方的 MongoDB 驱动。
- mgo star:1973 (已停止维护) MongoDB驱动。
- gorethink star:1652 RethinkDB 驱动。
- qmgo star:1312 MongoDB司机走了。它是基于官方MongoDB司机但更容易使用像分别。
- mgm star:752 基于MongoDB模型的ODM for Go(基于官方MongoDB驱动)。
- redeo star:441 与 redis 协议兼容的 TCP 服务器/服务。
- aerospike-client-go star:436 Aerospike 客户端。
- neoism star:390 Golang 的 Neo4j 客户端。
- gocb star:370 官方Couchbase Go SDK。
- go-rejson star:343 实现了基于 Redigo 客户端的redislabs' ReJSON 模块。可简单地将结构体存储为JSON对象并对其进行操作。
- go-couchbase star:321 Couchbase客户端。
- Kivik star:316 Kivik为CouchDB、PouchDB和类似的数据库提供了一个通用的Go和GopherJS客户端库。
- go-mongox star:136 A Go Mongo library based on the official driver, featuring streamlined document operations, generic binding of structs to collections, built-in CRUD, aggregation, automated field updates, struct validation, hooks, and plugin-based programming.
- godis star:111 由GoLang实现的redis客户端,灵感来自jedis。
- Neo4j-GO star:78 Neo4j REST 客户端。
- arangolite star:72 轻量级的 ArangoDB 驱动。
- go-pilosa star:58 Pilosa客户端。
- forestdb star:37 基于 Go 的 ForestDB 接口实现。
- goriak star:30 Riak KV 驱动。
- neo4j star:28 Neo4j Rest API实现。
- gocosmos star:22 Azure Cosmos DB的REST客户端和标准的“数据库/sql”驱动程序。
- gocql Apache Cassandra 的 Go 驱动。
- gomemcached star:19 A binary Memcached client for Go with support for sharding using consistent hashing, along with SASL.
- xredis star:19 类型安全,可定制,清晰和易用的Redis客户端。
- godscache star:11 谷歌云平台Go Datastore包的封装,它采用了memcached添加缓存。
- gomemcache memcache客户端库。
- asc star:10 Aerospike 的数据存储连接器。
检索及分析资料库
- elastic star:7422 Elasticsearch 客户端。
- elasticsql star:1180 将 SQL 转换为 elasticsearch dsl。
- elastigo star:943 Elasticsearch 客户端。
- skizze star:89 面向概率数据结构的服务和存储。
- go-elasticsearch star:59 官方 Elasticsearch 客户端。
- goes star:31 实现了与 Elasticsearch 交互的库。
- effdsl star:26 Elasticsearch query builder for Go.
- clickhouse-go ClickHouse SQL client for Go with a
database/sql
compatibility.
日期和时间
用于处理日期和时间的库。 (翻译出错了? 试试 英文版 吧~)
- carbon star:4801 datetime的一个简单、语义和开发人员友好的golang包。
- now star:4450 now 是时间有关的工具类。
- dateparse star:2046 可以解析很多格式不固定的日期字符串。
- carbon star:777 简单的时间扩展,包含了许多使用方法,从 PHP Carbon 库移植的。
- durafmt star:495 轻量级、可让time.Duration更加易读的库。
- go-persian-calendar star:206 太阳历实现。
- gostradamus star:202 和约会对象一起工作的软件包。
- timeutil star:192 面向 Golang 的时间库,集成了很多有用的扩展(Timedelta, Strftime, ...)。
- go-sunrise star:147 计算指定位置的日出和日落时间。
- iso8601 star:147 不用正则表达式有效解析 ISO8601 日期时间。
- date star:136 增加处理日期、日期范围、时间跨度、时间段和time-of-day。
- go-str2duration star:101 将字符串转换为持续时间。支持的时间。持续时间返回字符串等。
- timespan star:83 用于处理时间间隔相关的库,可定义开始时间和持续时间。
- feiertage star:48 用于计算德国公共假期的函数,比如复活节、感恩节等
- kair star:24 用于处理日期和时间的 golang 库。
- go-anytime star:23 Parse dates/times like "next dec 22nd at 3pm" and ranges like "from today until next thursday" without knowing the format in advance.
- cronrange star:18 解析cron风格的时间范围表达式,检查给定的时间是否在任何范围内。
- approx star:12 A Duration extension supporting parsing/printing durations in days, weeks and years.
- strftime star:12 C99-compatible strftime formatter。
- tuesday star:12 Ruby-compatible Strftime function。
- go-week star:9 一个有效的软件包,以配合ISO8601周日期。
- go-datebin star:4 A simple datetime parse pkg.
分布式系统
协助构建分布式系统的包。 (翻译出错了? 试试 英文版 吧~)
- go-zero star:29336 一个web和rpc框架。它的诞生是为了确保繁忙场地的稳定性,弹性设计。内置的goctl大大提高了开发效率。
- go-kit star:26633 支持服务发现、负载平衡、插件式传输、请求跟踪等功能的Microservice toolkit。
- Kratos star:23393 一个模块化设计的易于使用的微服务框架。
- go-micro star:21967 分布式系统开发框架。
- grpc-go star:21121 gRPC的Go语言实现。
- NATS star:16001 NATS is a simple, secure, and
- micro star:12159 一个分布式系统运行时,用于云及其他。
- Kitex star:7048 A high-performance and strong-extensibility Golang RPC framework that helps developers build microservices. If the performance and extensibility are the main concerns when you develop microservices, Kitex can be a good choice.
- lura star:6369 具有中间件的高性能API网关框架。
- dragonboat star:5086 一个功能齐全,高性能的库集。
- evans star:4286 Evans: more expressive universal gRPC client.
- emitter-io star:3866 高性能、分布式、安全和低延迟的发布-订阅平台,使用MQTT、Websockets和love构建。
- gleam star:3457 使用纯Go和Luajit编写的快速、可伸缩的分布式map/reduce系统,结合了Go的高并发性和Luajit的高性能,可以独立运行或分布式运行。
- glow star:3204 全部用 Go 实现,易用、可伸缩,可用于分布式大数据处理,Map-Reduce, DAG执行。
- liftbridge star:2581 用于nat的轻量级、容错的消息流。
- Dragonfly star:2285 Provide efficient, stable and secure file distribution and image acceleration based on p2p technology to be the best practice and standard solution in cloud native architectures.
- go-doudou star:1430 八卦协议和基于OpenAPI 3.0规范的去中心化微服务框架。内置的go-doudou cli专注于低代码和快速开发,可以提高您的生产力。
- mochi mqtt star:1287 Fully spec compliant, embeddable high-performance MQTT v5/v3 broker for IoT, smarthome, and pubsub.
- hprose star:1260 支持25+种语言RPC库。
- arpc star:967 更有效的网络通信,支持双向呼叫、通知、广播。
- K8gb star:895 A cloud native Kubernetes Global Balancer.
- go-health star:751 用于在服务中启用异步依赖项健康检查的库。
- gorpc star:704 简单、快速和可伸缩的RPC库。
- consistent star:698 Consistent hashing with bounded loads。
- go-sundheit star:550 为支持为golang服务定义异步服务健康检查而构建的库。
- digota star:510 基于 grpc 的电子商务微服务。
- dot 基于 transformation/OT 的分布式同步。
- go-jump star:384 提供了谷歌的 “Jump” 一致哈希函数接口。
- jsonrpc star:332 JSON-RPC 2.0 HTTP客户端。
- dht star:313 BitTorrent Kademlia DHT的实现。
- jsonrpc star:187 jsonrpc 包,实现了 JSON-RPC 2.0。
- doublejump star:102 实现了谷歌的jump consistent hash。
- celeriac star:72 用于对 Celery worker、任务、事件进行交互和监控的库。
- go-mysql-lock star:62 基于MySQL分布式锁。
- capillaries star:61 distributed batch data processing framework.
- flowgraph star:60 flow-based programming package。
- drmaa star:48 符合 DRMAA 标准的集群调度程序作业提交库。
- dynamolock DynamoDB-backed 分布式锁定实现。
- go-pdu star:47 一个去中心化的基于身份的社交网络。
- consistenthash star:27 使用可配置副本的一致哈希。
- gmsec star:25 一个Go分布式系统开发框架。
- dynatomic star:17 基于 DynamoDB 的 原子计数器的库。
- failured star:12 分布式系统的自适应应计故障检测器。
- bedrock star:7 Provides a minimal, modular and composable foundation for quickly developing services and more use case specific frameworks in Go. performant communications system for digital systems, services, and devices.
- raft star:8271 Raft consensus协议的实现。 by HashiCorp。
- rpcx star:8118 分布式可插拔的RPC服务框架,如阿里巴巴Dubbo。
- torrent star:5575 BitTorrent 客户端。
- redis-lock star:1477 基于redis的分布式锁简易实现。
- resgate 用于构建REST、实时和RPC API的实时API网关,其中所有客户端都是无缝同步的。
- sponge star:1472 A distributed development framework that integrates automatic code generation, gin and grpc frameworks, base development frameworks.
- rain star:982 BitTorrent客户端和库。
- ringpop-go star:835 可伸缩的,容错、应用分层的的Go应用程序。
- trpc-go star:834 The Go language implementation of tRPC, which is a pluggable, high-performance RPC framework.
- raft star:678 Raft consensus协议的实现。 by CoreOS。
- Temporal star:542 Durable execution system for making code fault-tolerant and simple.
- sleuth star:373 用于HTTP服务之间进行无中心p2p自动发现和RPC通信的库(使用ZeroMQ)。
- Tarmac star:329 Framework for writing functions, microservices, or monoliths with WebAssembly
- outboxer star:159 实现了 outbox pattern Go 库。
- pglock postgresql 的分布式锁定实现。
- pjrpc Golang JSON-RPC服务器-客户端与原生buf规范。
- Semaphore star:94 简单的(微)服务协调器。
动态域名
更新动态DNS记录的工具。 (翻译出错了? 试试 英文版 吧~)
- GoDNS star:1513 一个动态DNS客户端工具,支持DNSPod & HE.net。
- DDNS star:256 个人 DDNS 客户端。
- dyndns 后台去处理定期和自动检查您的IP地址,并作出更新(一个或多个)动态DNS记录,为谷歌域,每当您的地址变化。
电子邮件
实现了电子邮件创建和发送。 (翻译出错了? 试试 英文版 吧~)
- MailHog star:14109 电子邮件和SMTP测试工具,对外提供了 web 和 API 接口。
- Mailpit star:6063 Email and SMTP testing tool for developers.
- Maddy star:5128 All-in-one (SMTP, IMAP, DKIM, DMARC, MTA-STS, DANE) email server
- mox star:3684 Modern full-featured secure mail server for low-maintenance, self-hosted email.
- hermes star:2835 可生成干净的、响应式的HTML电子邮件。
- email star:2659 一个强大和灵活的电子邮件库。
- go-imap star:2097 用于客户端和服务器的IMAP库。
- chasquid 用Go编写的SMTP服务器。
- email-verifier star:1234 一个Go库的电子邮件验证而不发送任何电子邮件。
- SendGrid star:984 SendGrid 的 Go语言库,用于发送电子邮件。
- mailgun-go star:701 使用Mailgun API去库发送邮件。
- go-mail star:699 A simple Go library for sending mails in Go.
- go-simple-mail star:652 非常简单的包发送电子邮件与SMTP保持活动和两个超时:连接和发送。
- go-message star:387 用于Internet消息格式化和邮件消息的流媒体库。
- douceur star:247 在HTML邮件中支持CSS内联。
- Hectane star:223 轻量级的SMTP客户机,提供了HTTP API。
- mailchain star:143 发送加密的电子邮件到区块链地址写在Go。
- go-premailer star:141 在HTML邮件中支持CSS内联。
- smtpmock star:130 轻量级的可配置多线程假SMTP服务器。为您的测试环境模拟任何SMTP行为。
- truemail-go star:104 可配置Golang电子邮件验证器/验证器。验证电子邮件通过Regex, DNS, SMTP甚至更多。
- go-dkim star:98 DKIM库,用于签署 & 验证电子邮件。
- smtp star:74 SMTP服务器协议状态机。
- go-email-normalizer star:64 Golang库,用于提供电子邮件地址的规范表示。
- go-email-validator star:50 模块化电子邮件验证器的语法,一次性,smtp等…检查。
- mailx star:19 Mailx是一个使通过SMTP发送电子邮件更容易的库。它是对golang标准库' net/smtp '的增强。
可嵌入的脚本语言
在go代码中嵌入其他语言。 (翻译出错了? 试试 英文版 吧~)
- expr star:6323 Go的表达式计算引擎:快速,非图灵完备,动态类型,静态类型。
- gopher-lua star:6300 用 Go 实现的 Lua 5.1 虚拟机和编译器。
- goja star:5624 ECMAScript 5.1(+)实现在Go。
- tengo star:3550 字节码编译的脚本语言。
- go-lua star:3134 用 Go 实现的 Lua 5.2 VM接口。
- starlark-go star:2354 Go implementation of Starlark: Python-like language with deterministic evaluation and hermetic execution.
- cel-go star:2300 快速,可移植,非图灵完整的表达评估与渐进分型。
- metacall star:1578 跨平台多语言运行时,支持NodeJS, JavaScript, TypeScript, Python, Ruby, c#, WebAssembly, Java, Cobol等等。
- go-python star:1526 CPython C-API 的 Go 接口。
- goal An embeddable scripting array language.
- anko star:1483 用Go编写的解释器。
- Wa/凹语言 star:1302 The Wa Programming Language embedded in Go.
- go-php star:932 PHP 的 Go 接口。
- go-duktape star:778 支持 Duktape JavaScript 引擎。
- gval star:745 一种用Go编写的高度可定制的表达式语言。
- golua star:651 Lua C 的 Go 接口。
- prolog star:630 可嵌入的序言。
- gisp star:514 LISP 的 Go 接口。
- gentee star:136 嵌入式脚本编程语言。
- binder star:76 Lua接口,基于gopher-lua。
- ecal star:43 一种简单的支持并发事件处理的可嵌入脚本语言。
- purl star:41 嵌入 Go 的 Perl 5.18.2。
- ngaro star:29 嵌入式 Ngaro VM实现,支持在 Retro 中运行脚本。
- starlet star:21 Go wrapper for starlark-go that simplifies script execution, offers data conversion, and useful Starlark libraries and extensions.
错误处理
处理错误的库。 (翻译出错了? 试试 英文版 吧~)
- go-multierror star:2349 可将一系列的错误作为一个整体来显示。
- errors star:2121 Go error library with error portability over the network.
- eris star:1501 在Go中处理、跟踪和记录错误的更好方法。兼容标准错误库和github.com/pkg/errors。
- errorx star:1198 一个功能丰富的错误包,可进行堆栈跟踪、组装异常信息以及其他。
- multierr star:1045 Package for representing a list of errors as a single error.
- tracerr star:1036 可展示错误的堆栈跟踪信息和源码片段。
- errlog star:460 用于定位抛出错误的源代码(以及一些其他快速调试特性)。可插入到任何 logger 的位置。
- oops star:442 Error handling with context, stack trace and source fragments.
- emperror star:344 用于Go库和应用程序的错误处理工具和最佳实践。
- errors star:198 替换标准库错误包和github.com/pkg/errors。提供各种错误处理原语。
- Fault star:166 An ergonomic mechanism for wrapping errors in order to facilitate structured metadata and context for error values.
- errors star:67 Drop-in replacement for builtin Go errors. This is a minimal error handling package with custom error types, user friendly messages, Unwrap & Is. With very easy to use and straightforward helper functions.
- exception star:31 A simple utility package for exception handling with try-catch in Golang.
- Falcon star:11 一个简单但功能强大的错误处理包。
- errors star:7 最简单的错误包装器,具有出色的性能和最小的内存开销。
- errors Providing errors with a stack trace and optional structured details. Compatible with github.com/pkg/errors API but does not use it internally.
- errors star:6 使用分类原语进行简单的golang错误处理。
文件处理
处理文件和文件系统的库。 (翻译出错了? 试试 英文版 吧~)
- pdfcpu star:7028 PDF处理器。
- afero star:5980 文件系统的抽象系统。
- gdu star:3987 带有控制台接口的磁盘使用分析器。
- go-wkhtmltopdf star:1062 A package to convert an HTML template to a PDF file.
- notify star:907 文件系统事件通知库,具有类似于os/signal的简单API,。
- copy star:726 递归地复制目录。
- gofs star:484 A cross-platform real-time file synchronization tool out of the box.
- vfs star:310 一组可插拔的、可扩展的和自定义的文件系统功能,用于跨越许多文件系统类型,如os、S3和GCS。
- afs star:303 用于Go的抽象文件存储(mem、scp、zip、tar、cloud: s3、gs)。
- iso9660 star:265 A package for reading and creating ISO9660 disk images
- go-exiftool star:253 ExifTool 的 Go 实现,这个著名的库用于从文件(图片、PDF、office,…)中提取尽可能多的元数据(EXIF、IPTC,…)。
- bigfile star:252 一个文件传输系统,支持管理文件与http api, rpc调用和ftp客户端。
- go-csv-tag star:121 使用 tag 加载 csv 文件。
- parquet star:108 读写parquet文件。
- checksum star:105 计算消息摘要,如MD5, SHA256, SHA1, CRC或BLAKE2s,对于大文件。
- skywalker star:102 可以轻松地并发地遍历文件系统。
- opc star:75 加载Open Packaging Conventions (OPC)文件。
- baraka star:57 一个轻松处理http文件上传的库。
- go-gtfs star:45 加载gtfs文件。
- flop star:33 文件操作库,是GNU cp的镜像。
- gut/yos star:27 简单和可靠的包文件操作,如复制/移动/diff/列表的文件,目录和符号链接。
- higgs star:24 一个小小的跨平台Go库,用于隐藏/取消隐藏文件和目录。
- todotxt star:23 去吉娜·特拉帕尼的todo.txt文件库,支持解析和操作_todo.txt_格式的任务列表。
- go-decent-copy star:22 拷贝文件。
- pathtype star:13 将路径视为它们自己的类型,而不是使用字符串。
金融
会计和财务软件包。 (翻译出错了? 试试 英文版 吧~)
- decimal star:6418 任意精度定点的十进制数。
- ticker star:5001 终端库存观察和库存位置跟踪。
- go-money star:1684 Fowler 货币模式的实现。
- bbgo star:1230 A crypto trading bot framework written in Go. Including common crypto exchange API, standard indicators, back-testing and many built-in strategies.
- accounting star:879 货币和货币格式。
- techan star:840 拥有先进的市场分析和交易策略的技术分析库。
- currency star:562 处理货币金额,提供货币信息和格式。
- ach star:462 A reader, writer, and validator for Automated Clearing House (ACH) files.
- orderbook star:446 限购单匹配引擎。
- go-finance star:177 用于货币时间价值(年金)、现金流、利率转换、债券和折旧计算的金融函数库。
- sleet star:139 多个付款服务供应商使用统一界面处理网上付款。
- swift Offline validity check of IBAN (International Bank Account Number) and retrieval of BIC (for some countries).
- ofxgo star:138 查询 OFX 服务器和/或解析响应。
- transaction star:132 嵌入式事务数据库,可多线程模式运行。
- udecimal star:111 High performance, high precision, zero allocation fixed-point decimal library for financial applications.
- vat star:111 增值税编号验证 & 欧盟增值税税率。
- decimal star:94 Immutable decimal numbers with panic-free arithmetic.
- go-finnhub star:90 来自finnhu .io的股票市场、外汇和密码数据客户。从60多个证券交易所、10个外汇经纪人和15多个密码交易所获取实时金融市场数据。
- payme star:85 二维码生成器(ASCII & PNG)用于SEPA支付。
- currency star:61 高性能、准确的货币计算软件包。
- fpdecimal star:31 Fast and precise serialization and arithmetic for small fixed-point decimals
- fpmoney star:29 Fast and simple ISO4217 fixed-point decimal money.
- go-finance star:26 模块获取汇率,通过VIES检查增值税号码,检查IBAN银行账号。
- money star:22 Immutable monetary amounts and exchange rates with panic-free arithmetic.
- go-nowpayments star:3 Library for the crypto NOWPayments API.
表单
用于处理表单的库。 (翻译出错了? 试试 英文版 吧~)
- nosurf star:1594 CSRF保护中间件。
- gorilla/csrf star:1055 用于Go web应用程序和服务的CSRF保护。
- binding star:795 将来自 net/HTTP 请求的表单、JSON 数据绑定到结构体。
- form star:774 将 url 中的数据解析到 Go 变量中,以及将 Go 语言变量编码进 url。支持 Dual Array 及 Full map。
- conform star:323 控制用户输入。基于struct tags可对数据进行修剪、清理和擦除。
- httpin star:322 将HTTP请求解码为自定义结构,包括查询字符串、表单、HTTP头等。
- formam star:192 将表单的值解码为 struct。
- forms star:137 与框架无关的库,用于解析和验证支持多部分表单和文件的表单/JSON数据。
- qs star:76 去模块编码结构到URL查询参数。
- bind star:31 将表单数据与任意 Go 变量进行绑定。
- queryparam star:19 解码的url。值转换为标准或自定义类型的可用结构值。
- gbind star:10 Bind data to any Go value. Can use built-in and custom expression binding capabilities; supports data validation
- checker star:9 Checker helps validating user input through rules defined in struct tags or directly through functions.
方法
在Go中支持函数式编程的包。 (翻译出错了? 试试 英文版 吧~)
- mo star:2670 Monads and popular FP abstractions, based on Go 1.18+ Generics (Option, Result, Either...).
- go-underscore star:1301 常用辅助方法集合。
- go-functional star:459 Functional programming in Go using generics
- fpGo star:348 提供函数式编程功能。
- fp-go star:303 Collection of Functional Programming helpers powered by Golang 1.18+ generics.
- gofp star:146 一个类似lodash的强大的Golang实用程序库。
- fuego star:141 Functional Experiment in Go。
- underscore star:109 Go 1.18及以上版本的函数式编程助手。
- valor star:17 Generic option and result types that optionally contain a value.
游戏开发
很棒的游戏开发库。 (翻译出错了? 试试 英文版 吧~)
- Ebitengine star:11084 dead simple 2D game engine in Go.
- Leaf star:5302 轻量级游戏服务器框架。
- Pixel star:4462 手工制作的 2D 游戏库。
- nano star:2888 轻量级、方便、高性能的基于golang的游戏服务器框架。
- g3n star:2808 3D游戏引擎。
- goworld star:2576 可伸缩的游戏服务器引擎,具有 space-entity 框架和 hot-swapping 功能。
- Pitaya star:2372 可伸缩的游戏服务器框架,支持集群和客户端库的iOS, Android, Unity。
- go-sdl2 star:2226 实现了Simple DirectMedia Layer。
- engo star:1756 开源 2D 游戏引擎。它遵循 Entity-Component-System 范式。
- raylib-go star:1638 去绑定raylib,一个简单易用的库学习视频游戏编程。
- Oak star:1562 纯 Go 实现的游戏引擎。
- termloop star:1433 基于终端的 Go 游戏引擎,建立在 Termbox 之上。
- gonet star:1270 实现了游戏服务器骨架。
- Azul3D star:618 用Go编写的 3D 游戏引擎。
- go-astar star:601 实现了A*路径查找算法。
- Harfang3D star:580 3D engine for the Go language, works on Windows and Linux (Harfang on Go.dev).
- go3d star:317 以性能为主的2D/3D数学相关包。
- tile star:162 面向数据和缓存友好的2D网格库(TileMap),包括寻路、观察者和导入/导出。
- ecs star:128 Build your own Game-Engine based on the Entity Component System concept in Golang.
- prototype star:88 跨平台(Windows/Linux/Mac)库,用于使用最少的API创建桌面游戏。
- fantasyname star:33 Fantasy names generator.
- grid star:18 Generic 2D grid with ray-casting, shadow-casting and path finding.
发电机
生成Go代码的工具。 (翻译出错了? 试试 英文版 吧~)
- oapi-codegen star:6331 This package contains a set of utilities for generating Go boilerplate code for services based on OpenAPI 3.0 API definitions.
- go-linq star:3522 提供类似 .NET LINQ 的查询方法。
- jennifer star:3379 不使用模板生成任意 Go 代码。
- goderive star:1245 Derives functions from input types
- GoWrap star:1092 使用简单模板为 Go 接口生成装饰器。
- go-enum star:757 从代码注释中生成枚举。
- goverter star:532 通过定义接口生成转换器。
- interfaces star:423 用于生成接口定义的命令行工具。
- copygen star:356 Generate type-to-type and type-based code without reflection.
- convergen star:44 Feature rich type-to-type copy code generator.
- generis star:43 提供泛型、free-form 宏、条件编译和HTML模板的代码生成工具。
- typeregistry star:23 动态创建类型的库。
地理
地理工具和服务器 (翻译出错了? 试试 英文版 吧~)
- Tile38 star:9166 具有空间索引和实时地理定位功能的地理定位数据库。
- S2 geometry star:1697 S2 geometry 库。
- mbtileserver star:660 一个简单的基于go的服务器,用于存储mbtiles格式的地图块。
- geoos star:618 A library provides spatial data and geometric algorithms.
- osm star:375 用于读取、写入和处理 OpenStreetMap 数据和 APIs。
- H3 star:318 Go bindings for H3, a hierarchical hexagonal geospatial indexing system.
- godal star:140 去包装GDAL。
- simplefeatures star:134 simplesfeatures是一个2D几何库,提供了建模几何图形的Go类型,以及对几何图形进行操作的算法。
- geoserver star:91 基于geoserver REST API的 geoserver 实例。
- gismanager star:54 将你的 GIS 数据(矢量数据)发布到 PostGIS 和 Geoserver。
- pbf star:47 基于Golang 的 OpenStreetMap PBF 编码器/解码器。
- S2 geojson star:29 将geojson转换为s2单元格&在map上演示一些s2的几何特性。
- H3 GeoJSON star:4 Conversion utilities between H3 indexes and GeoJSON.
- H3GeoDist star:2 Distribution of Uber H3geo cells by virtual nodes.
- Web-Mercator-Projection A project to easily use and convert LonLat, Point and Tile to display info, markers, etc, in a map using the Web Mercator Projection.
- WGS84 star:130 坐标转换和转换库(ETRS89, OSGB36, NAD83, RGF93, Web Mercator, UTM)。
Go 编译器
可将 Go 转换为其他语言的编译工具。 (翻译出错了? 试试 英文版 吧~)
- gopherjs star:12765 将 Go 编译成 JavaScript。
- tardisgo star:432 Golang 转换为 Haxe,再转换为 CPP/CSharp/Java/JavaScript 的编译器.
- c4go star:365 将 C 代码转换为 Go 代码。
- c2go star:303 Convert C code to Go code.
- esp32 star:87 转到Arduino代码。
- f4go star:45 将 FORTRAN 77 转换为 Go代码。
Goroutines
管理和处理 Goroutines 的工具。 (翻译出错了? 试试 英文版 吧~)
- ants star:12978 一个高性能且低损耗的 goroutine 池。
- conc star:9119
conc
is your toolbelt for structured concurrency in go, making common tasks easier and safer. - tunny star:3891 golang 的协程池。
- goworker star:2803 基于 go 的后台 worker。
- pond star:1522 简约和高性能的goroutine工作池写在Go。
- workerpool star:1333 限制任务执行并发数,而不是队列中的任务数量的协程池,。
- grpool star:746 轻量级协程池。
- pool star:726 有限消费者协程或无限协程池,可用于更加简单的处理和取消协程
- gowp star:517 gowp是高并发性限制异步工作池。
- rill star:510 Go concurrency with channel transformations. No boilerplate, type safety, batching and error handling.
- flowmatic star:369 Structured concurrency made easy.
- go-floc star:269 轻松编排 goroutines。
- routine star:236
routine
is aThreadLocal
for go library. It encapsulates and provides some easy-to-use, non-competitive, high-performancegoroutine
context access interfaces, which can help you access coroutine context information more gracefully. - async star:225 可选的Go同步库(Future, Promise, Locks)。
- go-flow star:220 控制 goroutines 的执行顺序。
- artifex star:206 简单的内存作业队列。
- semaphore star:173 基于 CAS 的可快速调整的信号量实现(比基于通道的信号量实现更快)。
- go-workers star:165 为大型数据处理管道轻松安全地运行工人。
- neilotoole/errgroup star:162 “sync/errgroup”的替代方案,仅限于N个worker goroutines池。
- go-actor star:159 A tiny library for writing concurrent programs using actor model.
- cyclicbarrier star:146 基于 Go 的 CyclicBarrier 实现。
- async star:137 一种异步执行函数的安全方法,在出现 panic 时恢复它们。
- gollback star:124 异步简单的函数实用程序,用于管理闭包和回调的执行。
- Hunch star:103 Hunch 提供了诸如 All、First、Retry、Waterfall 等功能,这使得异步流控制更加直观。
- semaphore star:103 信号量模式实现,可根据通道和上下文进行具备超时功能的锁定/解锁操作。
- threadpool star:102 Golang 的 threadpool 实现。
- worker-pool star:92 一个简单的 Go 异步工作池。
- gpool star:90 manages a resizeable pool of context-aware goroutines to bound concurrency
- goccm star:71 Go并发管理器包限制了允许并发运行的goroutines的数量。
- gowl star:69 Gowl同时是一个流程管理和流程监控工具。无限工作者池使您能够控制池和进程并监视它们的状态。
- nursery star:66 Go中的结构化并发。
- oversight 完整的实现了Erlang supervision trees。
- routine star:61 go routine control with context, support: Main, Go, Pool and some useful Executors.
- gohive star:52 一个高性能和易于使用的Goroutine池去。
- kyoo star:51 提供无限的作业队列和并发工作池。
- go-waitgroup star:48 像“同步。有错误处理和并发控制。
- parallel-fn star:36 并行运行函数。
- go-trylock star:35 支持 read-write 锁。
- channelify star:31 将函数转换为返回通道,以便进行简单而强大的并行处理。
- stl star:30 基于软件事务内存(STM)并发控制机制的软件事务锁。
- execpool star:28 一个围绕exec建立的池。Cmd,它预先启动给定数量的进程,并在需要时将stdin和stdout附加到它们。非常类似于FastCGI或Apache Prefork MPM,但适用于任何命令。
- breaker star:18 灵活的机制,可以使执行流可中断。
- concurrency-limiter star:17 Concurrency limiter with support for timeouts, dynamic priority and context cancellation of goroutines.
- conexec star:16 一个并发工具包,帮助以高效和安全的方式并发执行函数。它支持指定总体超时来避免阻塞,并使用goroutine池来提高效率。
- go-tools/multithreading star:15 轻量级的协程池库,可以通过简单的API来管理。
- go-workerpool star:13 Inspired from Java Thread Pool, Go WorkerPool aims to control heavy Go Routines.
- async-job star:10 AsyncJob is an asynchronous queue job manager with light code, clear and speed.
- hands star:10 进程控制器,用于控制多个goroutine的执行和返回策略。
- go-accumulator star:7 Solution for accumulation of events and their subsequent processing.
- async star:6 An asynchronous task package with async/await style for Go.
GUI
用于构建GUI应用程序的库。 (翻译出错了? 试试 英文版 吧~)
工具包 (翻译出错了? 试试 英文版 吧~)
- fyne star:25191 基于材料设计的Go跨平台本机gui设计。支持:Linux, macOS, Windows, BSD, iOS和Android。
- gio Gio is a library for writing cross-platform immediate mode GUI-s in Go. Gio supports all the major platforms: Linux, macOS, Windows, Android, iOS, FreeBSD, OpenBSD and WebAssembly.
- go-gtk 实现了 GTK 的 Go接口。
- webview star:12688 跨平台webview窗口,具有简单的双向JavaScript绑定(Windows / macOS / Linux)。
- qt star:10496 实现了 Qt 的 Go接口(支持Windows / macOS / Linux / Android / iOS / Sailfish OS / Raspberry Pi)。
- ui star:8341 跨平台的 Platform-native GUI 库。
- app star:7975 用于创建包含了 GO, HTML 和 CSS 的应用程序。支持 MacOS, Windows 正在开发中。
- walk star:6868 Windows应用程序库。
- DarwinKit star:5036 Build native macOS applications using Go.
- go-sciter star:2579 实现了 Sciter 的 Go 接口 : 用于现代桌面 UI 开发的可嵌入HTML/CSS/脚本引擎。可跨平台。
- Goey Cross platform UI toolkit aggregator for Windows / Linux / Mac. GTK, Cocoa, Windows API
- gotk3 star:2115 实现了 GTK3 的 Go接口。
- Cogent Core star:1753 A framework for building 2D and 3D apps that run on macOS, Windows, Linux, iOS, Android, and the web.
- Spot star:1115 Reactive, cross-platform desktop GUI toolkit.
- gowd star:432 跨平台、快速、简单的桌面UI开发,采用了GO, HTML, CSS和NW.js实现。
- energy star:384 Cross-platform based on LCL(Native System UI Control Library) and CEF(Chromium Embedded Framework) (Windows/ macOS / Linux)
- cimgui-go star:351 Auto generated Go wrapper for Dear ImGui via cimgui.
- unison star:206 A unified graphical user experience toolkit for Go desktop applications. macOS, Windows, and Linux are supported.
- Wails Mac, Windows, Linux桌面应用程序,主要基于含有内置的OS HTML渲染器的HTML UI。
- goradd/html5tag star:10 输出HTML5标签的库。
交互 (翻译出错了? 试试 英文版 吧~)
- robotgo star:9696 实现跨平台的GUI系统自动化。包含了控制鼠标、键盘等功能。
- systray star:3313 跨平台 Go 库,可在通知区放置图标和菜单。
- zenity star:736 跨平台的Go库和CLI创建简单的对话框,与用户进行图形化交互。
- gosx-notifier star:588 OSX 桌面通知库。
- trayhost star:255 跨平台 Go 库,可用于在主机操作系统的任务栏中放置图标。
- mac-sleep-notifier star:35 OSX 睡眠/唤醒通知。
- mac-activity-tracker star:29 用于通知计算机上的任何(可插入的)活动的 OSX 库。
- AppIndicator Go star:6 实现了 libappindicator3 C库 的 Go接口。
硬件
硬件交互相关的库、工具和教程。 (翻译出错了? 试试 英文版 吧~)
- arduino-cli star:4380 官方Arduino CLI和库。可以独立运行,也可以合并到更大的Go项目中。
- go-rpio star:2198 GPIO for Go,不需要cgo。
- ghw star:1649 Golang硬件发现/检查库。
- emgo star:1077 用于嵌入式系统(如STM32 MCU)编程的Go-like语言。
- sysinfo star:532 一个提供Linux操作系统/内核/硬件系统信息的纯Go库。
- goroslib star:336 Go机器人操作系统(ROS)库。
- go-osc star:202 为Go打开声音控制(OSC)绑定。
- joystick star:62 用于读取附加操纵杆状态的轮询API。
图片
图像处理相关的库。 (翻译出错了? 试试 英文版 吧~)
- gocv star:6729 使用OpenCV 3.3+实现的计算机视觉(ComputerVision)的Go语言包。
- imaginary star:5623 用于图像大小调整的快速、简单的HTTP微服务。
- imaging star:5293 简单的Go图像处理包。
- gg star:4449 纯Go语言实现的2D渲染。
- bild star:4019 纯Go语言实现的图像处理算法合集。
- imagor star:3439 Fast, secure image processing server and Go library, using libvips.
- gowitness star:3322 在命令行上使用go和headless chrome截屏网页。
- ln star:3279 Go实现的3D线艺术(3D Line Art)渲染。
- bimg star:2723 使用libvips实现的快速高效的图像处理包。
- svgo star:2153 Go实现的SVG生成库。
- picfit star:2136 Go实现的图像调整服务器。
- pt star:2083 Go实现的路径跟踪(path tracing)引擎。
- smartcrop star:1820 为任意图片寻找合适的位置进行图片裁剪。
- imagick star:1781 ImageMagick下MagickWand的C API的Go binding。
- gift star:1755 图像处理包。
- canvas star:1515 矢量图形到PDF, SVG或光栅图像。
- govips star:1304 闪电快速的图像处理和调整库的Go。
- geopattern star:1271 由字符串创建漂亮图案的图片生成器。
- stegify star:1207 Go实现的LSB隐写(LSB steganography),能够隐藏任何文件到一个图像中。
- image2ascii star:882 将图像转换为ASCII码。
- goimagehash star:750 图像哈希处理的Go语言包。
- govatar star:585 生成有趣头像的库和CMD工具。
- draft star:579 使用简单的YAML语法为GraphViz生成高级微服务架构图。
- go-qrcode star:568 Generate QR codes with personalized styles, allowing adjustments to color, block size, shape, and icons.
- mort star:509 Go语言实现的图像存储和处理服务器。
- go-nude star:413 Go语言实现的裸照检测工具。
- steganography star:318 纯Go实现的LSB隐写(LSB steganography)的库。
- gltf star:245 一个高效、健壮的glTF 2.0文件读取、写入和验证器。
- mergi star:233 用于图像处理(合并、裁剪、调整大小、水印、动画)的工具和Go库。
- transformimgs star:232 Transformimgs resizes and optimises images for Web using next-generation formats.
- go-webp star:228 为编码和解码webp图片的库,使用libwebp。
- darkroom star:226 An image proxy with changeable storage backends and image processing engines with focus on speed and resiliency.
- rez star:213 纯Go语言和SIMD实现的图像大小调整。
- img star:155 图像处理工具的集合。
- go-cairo star:146 cairo图形库的Go binding。
- cameron star:121 一个Go语言的头像生成器。
- color-extractor star:94 Dominant color extractor with no external dependencies.
- gridder star:77 一个基于网格的2D图形库。
- webp-server star:73 能够存储、调整大小、转换和缓存图像的简单和最小的图像服务器。
- go-gd star:59 GD库的Go binding。
- goimghdr star:40 Go语言实现的imghdr模块用于确定文件的图像类型。
- tga star:34 tga包是一个TARGA图像的解码、编码器。
- go-webcolors star:28 Python下webcolors库的Go语言调用。
- mpo star:17 MPO三维照片的解码和转换工具。
- scout star:15 Scout是一款独立的开源视频安全软件解决方案。
物联网
物联网设备编程库。 (翻译出错了? 试试 英文版 吧~)
- flogo star:2430 Flogo是一个面向物联网边缘应用和集成的开源框架。
- ekuiper star:1484 Lightweight data stream processing engine for IoT edge.
- shifu star:1290 Kubernetes native IoT development framework.
- gatt star:1142 Gatt是一个用于构建低能耗蓝牙外围设备的Go语言包。
- gobot Gobot是一个用于机器人、物理计算和物联网的框架。
- rulego star:876 RuleGo is a lightweight, high-performance, embedded, orchestrable component-based rule engine for IoT edge.
- connectordb star:407 自我量化和物联网的开源平台。
- devices star:264 一套用于物联网设备的库,实验性地用于x/exp/io。
- huego star:250 一个包含广泛的Philips Hue客户端的Go语言库。
- iot IoT是一个实现谷歌物联网核心设备的简单框架。
- sensorbee star:231 轻量级物联网流处理引擎。
- smart-home star:86 Software package for IoT automation.
- eywa star:64 Eywa是一个用于跟踪连接的设备连接管理器。
- mainflux star:42 工业物联网消息和设备管理服务器。
- periph 外围设备I/O与低级板(low-level board)设备接口。
作业调度器
用于作业调度的库。 (翻译出错了? 试试 英文版 吧~)
- gocron star:5664 熟练掌握Go工作调度。这是一个积极维护的分叉jasonlvhit/gocron。
- go-quartz star:1795 简单的,无依赖的Go调度库。
- JobRunner star:1049 智能和功能丰富的cron作业调度程序(包含任务队列和实时监控)。
- gron star:1031 使用简单的Go API定义基于时间的任务。 之后Gron的调度程序将运行它们。
- scheduler star:450 Cronjobs让调度变得很简单。
- gronx star:416 Cron表达式解析器、任务运行器和守护进程像任务列表一样使用crontab。
- goflow star:390 A simple but powerful DAG scheduler and dashboard.
- tasks star:303 一个易于使用的进程内调度器,用于Go中的重复任务。
- go-cron star:232 一个Go实现的简单的定时任务库。可以在不同的时间间隔(每秒一次到在每年在特定的日期执行)执行闭包或函数。主要用于web应用和长时间运行的守护进程。
- cheek star:164 一个简单的类似crontab的调度器,旨在为作业调度提供一种KISS方法。
- clockwerk star:157 使用简单、流畅的语法调度作业的Go语言库。
- leprechaun star:104 支持webhook、crons和经典调度的作业调度程序。
- cdule star:54 具有数据库支持的作业调度程序库
- sched star:28 具有快进时间能力的作业调度程序。
- cronticker star:16 支持cron调度的一个自动报价器实现。
JSON
用于JSON处理的库。 (翻译出错了? 试试 英文版 吧~)
- GJSON star:14378 使用一行代码获取JSON的值。
- gabs star:3472 For parsing, creating and editing unknown or dynamic JSON in Go.
- gojson star:2668 从JSON自动生成Go的结构(struct)定义。
- fastjson star:2293 用于Go的快速JSON解析器和验证器。没有自定义结构,没有代码生成,没有反射。
- OjG star:859 优化JSON for Go是一个高性能的解析器,具有多种额外的JSON工具,包括JSONPath。
- jsondiff star:528 Go的JSON diff库基于RFC6902 (JSON Patch)。
- marshmallow star:376 Performant JSON unmarshalling for flexible use cases.
- kazaam star:283 用于任意JSON文档转换的API。
- ajson star:245 为Go语言开发的包含JSONPath支持的抽象JSON。
- gojq star:191 Go语言实现的JSON请求。
- jsonvalue star:189 A fast and convenient library for unstructured JSON data, replacing
encoding/json
. - jettison star:174 Go的快速灵活的JSON编码器。
- json2go star:132 高级JSON去结构转换。提供一个包,该包可以解析多个JSON文档并创建结构体以适应所有这些文档。
- gjo star:128 用于创建JSON对象的小工具。
- jsongo star:109 使用Fluent API来更容易地创建Json对象。
- JayDiff star:106 用Go编写的JSON比对工具。
- jscan star:90 高性能零分配JSON迭代器。
- JSON-to-Go 将JSON转换为Go的结构(struct)。
- JSON-to-Proto 转换JSON到Protobuf在线。
- ujson star:76 快速和最小的JSON解析器和转换器,工作在非结构化JSON。
- jsonf star:65 用于高亮展示和查询JSON的控制台工具。
- go-respond star:55 用于处理常见的HTTP JSON响应的Go语言库。
- ask star:47 容易访问映射和片中的嵌套值。与encoding/json和其他将任意数据“解编组”为Go数据类型的包一起工作。
- mp star:47 简单的cli电子邮件解析器。它目前接受stdin并输出JSON。
- jsoncolor star:46 Drop-in替换' encoding/json ',输出彩色json。
- vjson star:41 用流畅API声明JSON模式来验证JSON对象的Go包。
- gojmapr star:22 Get simple struct from complex json by json path.
- mapslice-json star:20 去MapSlice的有序封送/解封的JSON地图。
- dynjson star:16 用于动态api的可定制的JSON格式。
- go-jsonerror star:16 Go-JsonError is meant to allow us to easily create json response errors that follow the JsonApi spec.
- epoch star:14 Contains primitives for marshaling/unmarshalling Unix timestamp/epoch to/from build-in time.Time type in JSON.
- jsonapi-errors star:14 基于JSON API错误引用的Go bindings。
- jsonhal star:14 让自定义结构(struct)转化为JSON兼容的HAL(Hypertext Application Language)返回数据的简单Go包。
- jsonic star:11 处理和查询JSON的实用程序,无需以类型安全的方式定义结构。
- jzon star:11 具有标准兼容API/行为的JSON库。
- ej star:10 简洁地编写和读取来自不同来源的JSON。
- htmljson star:7 Rich rendering of JSON as HTML in Go.
- omg.jsonparser star:6 简单的JSON解析器,通过golang结构字段标签进行条件验证。
- jsonhandlers star:2 JSON library to expose simple handlers that lets you easily read and write json from various sources.
日志记录
用于生成和处理日志文件的库。 (翻译出错了? 试试 英文版 吧~)
- logrus star:24763 Go的结构化日志操作 。
- zap star:22069 快速、结构化、多等级的日志记录。
- zerolog star:10665 Zero-allocation JSON日志记录。
- spew star:6092 为Go数据结构实现一个漂亮的printer用于帮助调试。
- lumberjack star:4870 简单的滚动日志,io.WriteCloser的实现。
- glog star:3550 为Go提供了多等级日志记录。
- tail star:2726 努力模拟实现BSD的tail的特性的Go包。
- pp star:1863 Colored pretty printer for Go language.
- seelog star:1639 具有灵活调度、过滤和格式化的日志功能。
- log star:1368 Go的结构化日志包。
- log15 star:1104 简单、强大的日志操作。
- tint star:781 A slog.Handler that writes tinted logs.
- phuslu/log star:684 High performance structured logging.
- onelog star:414 Onelog是一个非常简单但非常高效的JSON日志记录器。它是所有场景中最快的JSON记录器。而且,它是配置最低的记录器之一。
- slog star:401 Lightweight, configurable, extensible logger for Go.
- httpretty star:400 在终端上美化您的常规HTTP请求以便调试(类似于HTTP . dumprequest)。
- slog-multi star:390 Chain of slog.Handler (pipeline, fanout...).
- slogor A colorful slog handler.
- logutils star:369 Go的用于更好地进行日志操作的实用程序,继承了标准日志库。
- sqldb-logger star:363 A logger for Go SQL database driver without modify existing *sql.DB stdlib usage.
- logxi star:358 12-factor app的日志程序,快速且让人高兴地使用。
- rollingwriter star:295 RollingWriter是一个自动循环的io.Writer的实现,带有多种策略以提供日志文件循环(rotation)。
- log star:293 Go的简单、可配置和可伸缩的结构化日志。
- go-logger star:290 简单的日志程序的 Go 程序,与级别处理程序。
- logur star:204 一个固执的logger接口,集合了著名库的适配器和集成的日志最佳实践(logrus, go-kit log, zap, zerolog,等等)。
- glg star:190 glg是一个简单而快速的Go日志库。
- logger star:157 Go的精简日志库。
- xlog star:139 针对'net/context`实现的结构化的记录器,用于HTTP处理程序。
- slog-formatter star:124 Common formatters for slog and helpers to build your own.
- ozzo-log star:122 支持日志多等级、分类和过滤的高性能日志记录。可以发送过滤后的日志消息到各种目标(如控制台,网络,邮件)。
- log-voyage star:94 用Go编写的功能齐全的日志写入saas。
- go-cronowriter star:56 基于当前日期和时间的自动日志文件写入工具,类似cronolog。
- stdlog star:48 Stdlog是一个面向对象的库,提供了多等级日志记录。它对cron任务非常有用。
- noodlog star:44 参数化JSON日志记录库,允许您混淆敏感数据和封送任何类型的内容。不再打印指针代替值,也不再为JSON字符串输出转义字符。
- go-log star:43 Log4j的Go语言。
- logex star:43 由标准日志库封装的Go日志库,支持跟踪和多等级。
- journald star:41 Go实现systemd Journal的原生API用于日志记录。
- go-log star:35 支持多等级和多处理程序的日志库。
- mlog star:33 简单的go日志模块,有5个级别,可选循环(rotation)日志文件记录功能和stdout/stderr输出。
- distillog star:31 distilled日志记录(可以将其视为stdlib +日志)。
- logrusly star:28 logrus的插件,将错误信息发送到Loggly。
- log star:26 Go的结构化日志接口,清晰地将日志facade与其实现(implementation)分离开来。
- zkits-logger star:26 一个强大的零依赖JSON记录器。
- zax star:24 Integrate Context with Zap logger, which leads to more flexibility in Go logging.
- gomol star:19 为Go实现可多方式输出、结构化日志, 并可扩展日志输出方式。
- gone/log 快速、可扩展、功能齐全、std-lib源兼容的日志库。
- glo star:16 参照PHP的Monolog实现的具有相同日志等级的Go日志库。
- log star:16 Simple leveled logging wrapper around standard log package.
- logrusiowriter star:16 io。作者的实现使用logrus logger。
- xylog star:16 Leveled and structured logging, dynamic fields, high performance, zone management, simple configuration, and readable syntax.
- go-log star:14 Go实现的简单且可配置的日志工具,并带有多等级、日志格式化和日志写入工具。
- kemba star:13 一个小的调试日志工具,灵感来自debug,非常适合CLI工具和应用程序。
- logo star:12 Go的日志工具,可配置的日志写入器。
- logdump star:11 用于多等级级日志记录的包。
- go-log star:10 A logging library with stack traces, object dumping and optional timestamps.
- log star:10 一个O(1)日志系统,允许您将一个日志连接到多个日志写入(例如stdout、文件和TCP连接)。
- xlog star:8 插件架构和灵活的日志系统,带有多级别、多日志目标和自定义日志格式。
- zl star:6 High Developer Experience, zap based logger. It offers rich functionality but is easy to configure.
- structy/log star:5 一个简单易用的日志系统,极简但具有调试和区分消息的功能。
- log star:3 A simple logging framework out of the box.
- slf4g star:3 Simple Logging Facade for Golang: Simple structured logging; but powerful, extendable and customizable, with huge amount of learnings from decades of past logging frameworks.
- yell star:1 这是另一个极简的日志库。
机器学习
机器学习库。 (翻译出错了? 试试 英文版 吧~)
- GoLearn star:9297 通用机器学习库。
- gorse star:8620 基于协同过滤的离线推荐系统后端。
- gorgonia star:5566 基于图形(graph-based)的计算库,如Theano:它为构建各种机器学习和神经网络算法提供了基本框架。
- m2cgen star:2817 这是一个CLI工具,可以将经过训练的经典ML模型转换成零依赖的本地Go代码,使用Python编写,并支持Go语言。
- gosseract star:2725 使用c++的Tesseract库实现的OCR。
- tfgo star:2428 易于使用的Tensorflow bindings:简化了官方Tensorflow Go bindings的使用。在Go中定义计算图形,在Python中加载和执行训练的模型。
- goml star:1568 在线机器学习。
- eaopt star:889 一个进化优化(evolutionary optimization)库。
- bayesian star:805 Go的朴素贝叶斯分类。
- CloudForest star:739 快速、灵活、多线程集成的决策树,用于机器学习。
- onnx-go star:717 Go Interface, 用于开放式神经网络交换(Open Neural Network Exchange)。
- ocrserver star:704 一个简单的OCR API服务器,非常容易地使用Docker和Heroku部署。
- gobrain star:560 用 Go 编写的神经网络库。
- go-deep star:537 一个功能丰富的神经网络库 。
- GoMLX star:353 An accelerated Machine Learning framework for Go.
- regommend star:314 推荐和协同过滤引擎。
- hugot star:290 Huggingface transformer pipelines for golang with onnxruntime.
- Goptuna star:261 Bayesian optimization framework for black-box functions written in Go. Everything will be optimized.
- goga star:220 Go的遗传算法库。
- goRecommend star:206 用Go编写的推荐算法库。
- go-galib star:200 用Go编写的遗传算法库。
- shield star:158 贝叶斯文本分类器,具有灵活的tokenizers和存储后端。
- go-featureprocessing star:121 快速和方便的特征处理,低延迟机器学习在Go。
- go-fann star:116 快速人工神经网络(FANN)库的Go bindings。
- goscore star:99 为预言模型标记语言(PMML)实现的评分API。
- GoMind star:84 一个简单的神经网络库。
- fonet star:83 一个用Go编写的深度神经网络库。
- gonet star:82 基于go的神经网络。
- libsvm star:73 基于LIBSVM 3.14实现。
- neat star:72 即插即用的并行Go框架,用于增强拓扑的神经进化(NeuroEvolution of Augmenting Topologies)。
- neural-go star:70 多层感知器网络在Go中的实现,使用反向传播算法进行训练。
- go-pr star:66 Go编写的模式识别包。
- Varis star:55 Go实现的神经网络。
- randomforest star:46 容易使用随机森林库去。
- golinear star:45 Go实现的liblinear bindings。
- go-cluster star:43 Go实现的k-modes和k-prototypes聚类算法。
- godist star:40 各种概率分布,以及相关的method。
- ddt star:37 动态决策树,创建定义可定制规则的树。
- evoli star:33 遗传算法(Genetic Algorithm)和粒子群优化(Particle Swarm Optimization)库。
- probab star:20 概率分布函数。贝叶斯推理。使用Go写的。
消息
实现消息传递系统的库。 (翻译出错了? 试试 英文版 吧~)
- Asynq star:10026 一个简单、可靠、高效的基于Redis的分布式任务队列。
- Centrifugo star:8433 实时消息(Websockets或SockJS)服务器。
- gorush star:8072 使用APNs2和谷歌GCM推送通知服务器。
- machinery star:7562 基于分布式消息传递的异步任务/作业队列。
- go-socket.io star:5753 go的socket.io库,一个实时应用程序框架。
- NATS Go Client star:5573 Go client for the NATS
- Confluent Kafka Golang Client star:4660 confluent-kafka-go是Confluent为Apache Kafka和Confluent平台开发的Golang客户端。
- Mercure star:3978 使用Mercure协议分派服务器发送(server-sent)更新的服务器和库(构建在服务器发送事件之上)。
- melody star:3751 处理websocket session的极简框架,包括广播和自动ping/pong处理。
- APNs2 star:3009 HTTP / 2苹果消息推送provider——发送推送消息到iOS, tvOS, Safari和OSX应用。
- go-nsq star:2595 NSQ的官方Go包。
- gopush-cluster star:2084 gopush-cluster是一个gopush服务器集群。
- EventBus star:1752 具有异步兼容性的轻量级事件总线。
- amqp star:1554 进入RabbitMQ客户端库。
- Beaver star:1548 一个实时消息服务器,可用于在web和手机app端构建一个可伸缩的应用内通知,多人游戏,聊天应用。
- Chanify star:1273 推送通知服务器向你的iOS设备发送消息。
- dbus star:990 D-Bus的Go bindings。
- Gollum star:940 一个n:m多路复用器(n:m multiplexer),收集不同来源的消息并将其广播到一组目的地。
- mangos star:684 具有传输互操作性的Nanomsg(“可伸缩性协议”)的纯go实现。
- golongpoll star:657 HTTP longpoll服务器库,使web发布-订阅变得简单。
- emitter star:509 使用Go的方式发出事件, 带有通配符、谓词、取消可能性和许多其他优点。
- Glue star:417 健壮的Go和Javascript Socket库(替代Socket.io)。
- Bus star:336 内部通信的最小消息总线实现。
- messagebus star:273 messagebus是一个Go的简单异步消息总线,非常适合在执行事件sourcing、CQRS和DDD时用作事件总线。
- Go-MediatR star:213 A library for handling mediator patterns and simplified CQRS patterns within an event-driven architecture, inspired by csharp MediatR library.
- guble star:158 使用推送通知服务(谷歌Firebase云消息、苹果推送通知服务、SMS)的消息服务器, 支持websockets,REST API,并具有分布式操作和消息持久性。
- hub star:147 适用于Go应用程序的消息/事件中心,使用publish/subscribe模式,并支持别名(类似rabbitMQ exchanges)。
- go-mq star:92 具有声明式配置的RabbitMQ客户端。
- drone-line star:80 使用二进制、docker或Drone CI发送Line通知。
- go-notify star:69 原生的freedesktop通知规范实现。
- Commander star:66 高级事件驱动的消费者/生产者(consumer/producer),支持各种“方言”,如Apache Kafka。
- go-res star:63 用于构建REST/实时服务的包,其中客户端使用NATS和Resgate进行无缝同步。
- event star:58 观察者模式的实现。
- hare star:53 一个用户友好的库,用于发送消息和监听TCP套接字。
- ami star:28 基于Redis集群流的客户端到可靠队列。
- gosd star:24 一种用于调度何时将消息分派到通道的库。
- go-vitotrol star:23 用于Viessmann Vitotrol web服务的客户端库。
- hypermatch star:22 A very fast and efficient Go library for matching events to a large set of rules
- jazz star:18 一个简单的RabbitMQ抽象层,用于队列管理和消息的发布和消费。
- gaurun-client star:11 用Go编写的Gaurun客户端。
- go-eventbus star:5 Simple Event Bus package for Go. messaging system.
- sarama star:11573 Apache Kafka的Go库。
- Watermill star:7797 Working efficiently with message streams. Building event driven applications, enabling event sourcing, RPC over messages, sagas. Can use conventional pub/sub implementations like Kafka or RabbitMQ, but also HTTP or MySQL binlog.
- Uniqush-Push star:1539 Redis支持的统一推送服务, 用于服务端向移动设备的消息通知。
- zmq4 star:1180 ZeroMQ的Go interface第4版。也可用于第3版和第2版。
- pubsub star:427 简单的pubsub的go包。
- Quamina star:395 Fast pattern-matching for filtering messages and events.
- rabtap star:265 RabbitMQ的瑞士军刀cli应用。
- redisqueue star:129 基于Redis streams的队列的生产者和消费者。
- oplog star:112 用于REST api的通用oplog/replication系统。
- rabbitroutine star:110 Lightweight library that handles RabbitMQ auto-reconnect and publishing retries. The library takes into account the need to re-declare entities in RabbitMQ after reconnection.
- Ratus star:109 Ratus is a RESTful asynchronous task queue server.
- rabbus star:97 amqp exchanges和队列上的一个小工具。
- nsq-event-bus star:79 一个围绕NSQ topic和channel的小工具。
- RapidMQ star:68 RapidMQ是用于管理本地消息队列的轻量且可靠的库。
- rmqconn star:23 RabbitMQ重新连接。amqp.Connection和amqp.Dial之上的Wrapper。允许在强制调用Close()方法关闭连接之前重新连接。
微软办公软件
- unioffice star:4384 用于创建和处理Office Word (.docx)、Excel (.xlsx)和Powerpoint (.pptx)文档的纯go库。
Microsoft Excel
用于操作Microsoft Excel的库。 (翻译出错了? 试试 英文版 吧~)
- excelize star:18391 Golang图书馆阅读和写作微软Excel™(XLSX)文件。
- xlsx star:5881 用以简化在Go程序中读取使用最新版本Microsoft Excel的XML格式文件的库。
- go-excel star:194 一个简单轻便的阅读器,可以将类关系型数据库(relate-db-like)的excel作为表来读取。
- xlsx star:174 在Go程序以快速和安全的方式读取/更新现有的Microsoft Excel文件。
- exl star:30 Excel binding to struct written in Go.(Only supports Go1.18+)
- goxlsxwriter star:21 libxlsxwriter的Go binding, 用于编写XLSX (Microsoft Excel)文件。
Microsoft Word
Libraries for working with Microsoft Word. (翻译出错了? 试试 英文版 吧~)
- godocx star:108 Library for reading and writing Microsoft Word (Docx) files.
杂项
依赖注入
用于处理依赖项注入的库。 (翻译出错了? 试试 英文版 吧~)
- google/wire star:13096 Go中的自动初始化。
- fx star:5903 基于依赖注入的Go应用程序框架(构建在dig之上)。
- dig star:3943 一个基于反射的Go依赖注入工具包。
- do star:1876 A dependency injection framework based on Generics.
- GoLobby/Container star:565 GoLobby Container is a lightweight yet powerful IoC dependency injection container for the Go programming language.
- goioc/di star:362 受spring启发的依赖注入容器。
- di star:233 go编程语言的依赖注入容器。
- dingo star:182 基于Guice的Go依赖注入工具包。
- kod star:170 A generics based dependency injection framework for Go.
- alice star:50 Go的外挂的依赖注入容器。
- gontainer star:39 A dependency injection service container for Go projects.
- wire star:37 适用于Go的严格运行时依赖注入(Strict Runtime Dependency Injection)。
- linker star:36 A reflection based dependency injection and inversion of control library with components lifecycle support.
- nject star:29 用于库、测试、http端点和服务启动的类型安全、反射框架。
- componego star:26 A dependency injection framework based on components, allowing dynamic dependency replacement without duplicating code in tests.
- cosban/di A code generation based dependency injection wiring tool.
- gocontainer star:20 简单的依赖注入容器。
- gontainer/gontainer star:15 A YAML-based Dependency Injection container for GO. It supports dependencies' scopes, and auto-detection of circular dependencies. Gontainer is concurrent-safe.
- ore star:13 Lightweight, generic & simple dependency injection (DI) container.
- autowire star:10 Dependency injection using Generics and reflection.
- boot-go Component-based development with dependency injection using reflections for Go developers.
- kinit star:10 可定制的依赖注入容器,具有全局模式,级联初始化和紧急安全结束。
- HnH/di star:9 DI容器库,专注于干净的API和灵活性。
项目布局
非官方的模式的结构项目。 (翻译出错了? 试试 英文版 吧~)
- golang-standards/project-layout star:49609 golang生态系统中常见的历史和新兴项目布局模式。注意:尽管这个组织名称并不代表golang的官方标准,更多信息请参见本期。尽管如此,有些人可能会发现这种布局很有用。
- go-blueprint star:4969 Allows users to spin up a quick Go project using a popular framework.
- ardanlabs/service star:3599 用于构建产品级可扩展web服务应用程序的starter kit。
- goxygen star:3526 Generate a modern Web project with Go and Angular, React, or Vue in seconds.
- pagoda star:2206 Go内置快速、简单的全栈web开发入门工具包。
- nunu star:1942 Nunu is a scaffolding tool for building Go applications.
- modern-go-application star:1856 应用程序样板和应用现代实践的例子。
- cookiecutter-golang star:691 遵循生产最佳实践快速启动项目的Go应用程序样板模板。
- go-starter star:506 一个自以为是的面向生产的RESTful JSON后端模板,与VSCode DevContainers高度集成。
- golang-templates/seed star:482 Go应用程序GitHub存储库模板。
- go-todo-backend star:320 去Todo后端示例使用模块化项目布局的产品微服务。
- scaffold star:149 Scaffold生成一个starter Go项目布局。让您关注已实现的业务逻辑。
- go-sample star:130 带有实际代码的Go应用程序项目的示例布局。
- gobase star:61 一个简单的golang应用框架,带有真实golang应用程序的基本设置。
- go-module star:30 Template for a typical module written on Go.
- wangyoucao577/go-project-layout star:26 关于如何构造Go项目布局的一组实践和讨论。
- insidieux/inizio star:18 带有插件的Golang项目布局生成器。
字符串
处理字符串的库。 (翻译出错了? 试试 英文版 吧~)
- xstrings star:1402 从其他语言移植的有用字符串函数合集。
- sttr star:957 跨平台的cli应用程序,对字符串执行各种操作。
- gobeam/Stringy star:234 字符串操作库,可以将字符串转换为驼色,蛇色,烤肉色等。
- strutil star:206 字符串处理工具。
- caps star:54 A case conversion library.
- go-formatter 实现替换字段由大括号'{}'格式字符串包围。
- bexp 执行大括号扩展机制来生成任意字符串。
未分类的
这些库之所以放在这里,是因为不适合放在其他分类。 (翻译出错了? 试试 英文版 吧~)
- gopsutil star:10653 用于检索进程和系统利用率(CPU、内存、磁盘等)的跨平台的库。
- gatus star:6485 自动服务运行状况仪表板。
- gofakeit star:4584 用go编写的随机数据生成器。
- archiver star:4450 用于生成和解压.zip和.tar.gz文档的库和命令。
- go-resiliency star:2224 Go语言弹性模式(resiliency pattern)。
- base64Captcha star:2137 base64Captcha支持数字,字母,算术,音频和混合模式的验证码。
- gosms star:1452 Go编写的私人的本地短信网关,可以用来发送短信。
- go-commons-pool star:1225 Go语言的通用对象池。
- go-openapi 用于解析和使用开放api模式(open-api schemas)的包的集合。
- llvm star:1194 用于在纯Go中与LLVM IR交互的库。
- shoutrrr star:1026 通知库提供了对各种消息服务(如slack、mattermost、fy和smtp等)的轻松访问。
- stateless star:972 用于创建状态机的流畅库。
- shortid star:940 分布式地生成超短、唯一、非顺序、URL友好的id。
- health star:782 一个简单而灵活的Go健康检查库。
- xz star:484 纯golang包读和写xz压缩文件。
- health star:451 易于使用,可扩展的健康检查库。
- banner star:449 在Go应用程序中添加漂亮的横幅(banner)。
- gountries star:406 获取国家和细节数据的包。
- conv star:385 conv包提供了跨Go类型(Go types)的快速和直观的转换。
- lk star:372 一个简单的版权许可证库。
- ffmt star:306 美化数据,使其更适合人查看。
- go-unarr star:283 用于RAR、TAR、ZIP和7z文件的解压缩库。
- healthcheck star:269 用于RESTful服务的强制的(opinionated)并发健康检查HTTP处理程序。
- antch star:260 一个快速、强大和可扩展的web爬虫框架。
- battery star:249 跨平台、标准化的电池信息库。
- gtree star:246 Provide CLI, Package and Web for tree output and directories creation from Markdown or programmatically.
- bitio star:245 高度优化的位级读写器。
- stats star:170 Monitors Go MemStats + 诸如如内存,Swap和CPU的系统状态统计,并通过UDP发送到任何你想记录的地方
- turtle star:160 Go的Emojis库。
- captcha star:155 captcha包为验证码生成提供了一个易于使用的、unopinionated的API。
- gommit star:112 分析git提交消息,确保它们遵循已定义的格式。
- gotoprom star:109 为Prometheus客户端提供类型安全的指标(metric)构建工具库。
- indigo star:109 分布式唯一ID生成器, 使用Sonyflake并由Base58编码。
- faker star:92 随机假数据和结构生成器为Go。
- persian star:86 一些适用于波斯语的Go工具库。
- morse star:82 实现字符串与摩尔斯电码转换的库。
- pdfgen star:71 通过Json请求生成PDF的HTTP服务。
- xkg star:57 X Keyboard Grabber(键盘事件捕获)
- browscap_go star:49 GoLang库浏览器功能项目。
- datacounter star:49 用于readers/writer/http.ResponseWriter的计数器。
- url-shortener star:48 一个现代的、强大的、健壮的URL转短链接微服务,带有mysql支持。
- VarHandler 用于生成http输入和输出处理模板。
- sandid star:47 能沟让地球上的每一粒沙子都有自己的ID。
- xdg star:44 FreeDesktop.org (xdg)规范在Go中的实现。
- autoflags star:39 从struct字段自动定义命令行flag的Go包。
- gosh star:36 提供Go统计处理程序,结构和测量方法。
- numa star:31 NUMA是一个用go编写的实用程序库。它可以帮助我们编写一些NUMA-AWARED代码。
- metrics star:28 用于instrumentation和Prometheus exposition的库。
- shellwords star:24 一个Go库,实现了依照UNIX Bourne shell的关键词解析规则进行字符串操纵。
- avgRating star:17 根据威尔逊得分排序算法(Wilson Score Equation)计算平均分和评分。
- anagent star:15 Go语言的最小化,可插入的evloop/timer处理程序, 带有依赖注入。
- varint star:14 一个比标准库中提供的更快的变长整数编码器/解码器。
- go-commandbus star:12 一个微小的可插拔的Go命令总线。
- hostutils star:12 一个用于打包和解包FQDNs列表的go语言库。
- openapi star:11 OpenAPI 3。x解析器。
- faker star:10 假数据生成器。
- basexx star:5 转换为,从,和之间的数字字符串在不同的数字基数。
- common star:4 A library for server framework.
- sitemap-format star:4 A simple sitemap generator, with a little syntactic sugar.
自然语言处理
用于处理人类语言的库。 (翻译出错了? 试试 英文版 吧~)
See also Text Processing and Text Analysis.
语言检测
- lingua-go star:1190 An accurate natural language detection library, suitable for long and short text alike. Supports detecting multiple languages in mixed-language text.
- whatlanggo star:644 Go的自然语言检测包。支持84种语言和24种脚本(书写系统,如拉丁语、西里尔语等)。
- getlang star:171 快速自然语言检测包。
- guesslanguage star:58 通过一个 unicode 文本来猜测该文本使用的语言
- detectlanguage star:25 语言检测API Go客户端。支持批量请求,短短语或单字语言检测。
形态分析
- spaGO star:1752 Go中的独立机器学习和自然语言处理库。
- kagome star:827 JP形态学分析仪编写的纯Go。
- nlp star:450 支持LSA(潜在语义分析)的Go自然语言处理库。
- nlp star:387 从字符串中提取值并用nlp填充结构。
- RAKE.go star:117 快速自动关键字提取算法(RAKE)的Go端口。
- go-stem star:79 波特词干算法的实现。
- go2vec star:56 用于word2vec嵌入式的阅读器和实用程序函数。
- porter2 star:46 非常快的波特2史坦默。
- govader star:43 [VADER情绪分析]的Go实现(https://github.com/cjhutto/vaderSentiment)。
- snowball star:38 滚雪球柄端口(cgo包装)为 Go 。提供词干提取功能Snowball native。
- paicehusk star:29 Golang实现了Paice/外壳阻塞算法。
- golibstemmer star:20 Go 绑定斯诺鲍libstemmer库,包括波特2。
- libtextcat star:13 用于libtextcat C库的Cgo绑定。保证与版本2.2兼容。
- porter star:12 这是Martin Porter在C语言中实现的Porter词干分析算法的一个相当简单的移植。
- gosentiwordnet star:10 情绪分析器使用的多愁善感网词汇在Go。
- govader-backend star:6 Microservice implementation of GoVader.
- spelling-corrector star:2 西班牙语的拼写校正器或创建自己的。
鼻涕虫
- slug star:1173 URL 友好的 slug 化工具,支持多种语言
- go-slugify star:94 生成漂亮的固定链接地址(slug),支持多种语言
- Slugify star:33 字符串 slug 化的工具。
分词器
- prose star:3062 支持标记化、词性标记、命名实体提取等文本处理的库。只说英语。
- gse star:2586 高效的文本分割;支持英语、汉语、日语等。
- gojieba star:2437 这是一个Go实现的jieba,这是一个中文分词算法。
- sentences star:439 Sentence tokenizer: converts text into a list of sentences.
- segment star:89 Go库用于执行Unicode文本分割,如Unicode标准附件#29所述。
- textcat star:72 Go package支持基于n-gram的文本分类,支持utf-8和原始文本。
- MMSEGO star:63 这是一个 Go 实现的MMSEG,这是一个中文分词算法。
- stemmer star:53 用于Go编程语言的Stemmer包。包括英语和德语词根。
- gotokenizer star:21 一种基于字典和双字母格朗语言模型的记号赋予器。(现在只支持中文分割)
- shamoji star:13 shamoji是用Go编写的word过滤包。
翻译
- go-pinyin star:1633 中文汉字到汉语拼音的转换。
- gotext star:437 GNU gettext 工具
- ctxi18n Context aware i18n with a short and consise API, pluralization, interpolation, and
fs.FS
support. YAML locale definitions are based on Rails i18n. - go-i18n 软件包和用于处理本地化文本的附带工具。
- spreak star:56 Flexible translation and humanization library for Go, based on the concepts behind gettext.
- iuliia-go star:49 直译斯拉夫字母→拉丁以所有可能的方式。
- go-mystem star:33 CGo绑定到Yandex。Mystem -俄罗斯形态学分析仪。
- t star:20 另一个用于golang的i18n pkg,它遵循GNU gettext风格并支持.po/。mo文件:“t。T (gettext)”、“T。N (ngettext)”,等等。它包含一个cmd工具xtemplate,可以从文本/html模板中提取消息作为pot文件。
- go-words star:6 A words table and text resource library for Golang projects.
音译
- go-unidecode star:130 Unicode文本的ASCII音译。
- gounidecode star:80 用于Go的Unicode音译器(也称为unidecode)。
- transliterator star:43 提供单向字符串音译,并支持特定于语言的音译规则。
- enca star:16 最小的cgo绑定libenca,它检测字符编码。
网络
用于处理各种网络层的库。 (翻译出错了? 试试 英文版 吧~)
- fasthttp star:21915 一个快速HTTP实现,比net/http快10倍。
- kcptun star:13935 基于KCP协议的非常简单和快速udp隧道。
- webrtc star:13862 WebRTC API的纯Go实现。
- quic-go star:10140 在纯Go中实现了QUIC协议。
- gnet star:9678 “gnet”是一个用纯Go编写的高性能、轻量级、非阻塞、事件驱动的网络框架。
- cloudflared star:9340 Cloudflare Tunnel client (formerly Argo Tunnel).
- dns star:8076 用于 DNS 的库。
- gopacket star:6353 Go library for packet processing with libpcap bindings.
- kcp-go star:4114 快速可靠的ARQ协议。
- netpoll star:4059 一个高性能的非阻塞I/O网络框架,它专注于RPC场景,由字节跳动开发。
- HTTPLab star:4046 HTTPLabs 允许你检查 HTTP 请求和伪造响应。
- ssh star:3717 用于构建SSH服务器的高级API(封装密码/ SSH)。
- gobgp star:3656 基于 Go 的 BGP 实现。
- tun2socks star:3393 A pure go implementation of tun2socks powered by gVisor TCP/IP stack.
- fortio star:3364 负载测试库和命令行工具,高级的echo服务器和web UI。允许指定一组每秒查询的负载,并记录延迟直方图和其他有用的统计数据,并将它们作图。支持Tcp、Http、gRPC。
- nbio star:2230 纯Go 1000k+连接解决方案,支持tls/http1。X /websocket和基本兼容的net/http,具有高性能和低内存成本,无阻塞,事件驱动,易于使用。
- net This repository holds supplementary Go networking libraries.
- water star:1954 简单TUN / TAP图书馆。
- gev star:1729 gev是一个基于反应器模式的轻量级、快速的非阻塞TCP网络库。
- go-getter star:1661 通过URL来下载文件或目录。
- sftp star:1523 软件包sftp实现SSH文件传输协议,如https://filezilla-project.org/specs/draft-ietf-secsh-filexfer-02.txt所示。
- gws star:1429 High-Performance WebSocket Server & Client With AsyncIO Supporting .
- grab star:1406 用于管理文件下载。
- NFF-Go star:1386 用于快速开发云计算和裸机网络功能的框架(原YANFF)。
- ftp star:1309 Package ftp实现了RFC 959中描述的ftp客户端。
- mdns star:1195 简单mDNS(Multicast DNS)客户端/服务器库。
- mqttPaho Paho Go客户端提供了一个 MQTT 客户端库,用于通过TCP、TLS或WebSockets连接到MQTT代理。
- gosnmp star:1140 用于执行 SNMP 操作的原生 Go 库。
- gmqtt star:989 Gmqtt是一个灵活、高性能的MQTT代理库,它完全实现了MQTT协议V3.1.1。
- sdns star:963 A high-performance, recursive DNS resolver server with DNSSEC support, focused on preserving privacy.
- vssh star:963 Go库建立网络和服务器自动化的SSH协议。
- cidranger star:904 快速得 IP 到 CIDR 查找。
- gaio star:816 高性能异步io网络在proactor模式下的Golang。
- easytcp star:813 一个用Go (Golang)编写的轻量级TCP框架,与消息路由器一起构建。EasyTCP可以帮助您轻松、快速地构建TCP服务器,而且不那么痛苦。
- lhttp star:691 强大的websocket框架,可以让你更容易的构建IM服务器。
- go-stun star:679 实现了 STUN 客户端(RFC 3489和RFC 5389)。
- peerdiscovery star:645 基于UDP组播的跨平台本地对等点发现库。
- gotcp star:513 用于快速编写 tcp 应用程序。
- stun star:494 Go实现的RFC 5389 STUN协议。
- gopcap star:490 用 Go 实现了对 libpcap 的封装。
- tcp_server star:426 Go 图书馆建设tcp服务器更快。
- raw star:425 Package raw支持在设备驱动程序级别读取和写入网络接口的数据。
- winrm star:425 Go WinRM客户端远程执行Windows机器上的命令。
- ftpserverlib star:421 功能齐全的FTP服务器库。
- arp star:365 实现了arp协议,如RFC 826中所述。
- dnsmonster star:317 被动DNS捕获/监控框架。
- ethernet star:278 Package ethernet implements marshaling and unmarshalling of IEEE 802.3 Ethernet II frames and IEEE 802.1Q VLAN tags.
- gNxI star:261 一组基于 gNMI 和 gNOI 协议的网络管理工具。
- buffstreams star:254 通过TCP传输协议缓冲区数据。
- jazigo star:217 Jazigo是一个用Go编写的工具,用于检索多个网络设备的配置。
- tcpack star:174 tcpack is an application protocol based on TCP to Pack and Unpack bytes stream in go program.
- utp star:173 Go uTP微传输协议的实现。
- canopus star:155 CoAP客户端/服务器实现(RFC 7252)。
- xtcp star:154 TCP服务器框架,同时全双工通信,优雅的关机,和自定义协议。
- event star:153 Simple I/O event notification library written in Golang.
- sslb star:149 它是一个超级简单的负载平衡器,只是一个实现某种性能的小项目。
- iplib star:144 用于处理IP地址的库(net)。借鉴于python 的 ipaddress和ruby ipaddr
- gldap star:111 Gldap提供了一个ldap服务器实现,您可以为它的ldap操作提供处理程序。
- psql-wire star:107 PostgreSQL server wire protocol. Build your own server and start serving connections..
- go-powerdns star:88 Golang的PowerDNS API绑定。
- natiu-mqtt star:88 A dead-simple, non-allocating, low level implementation of MQTT well suited for embedded systems.
- ether star:80 一个用于发送和接收以太网帧的跨平台 Go 库。
- fullproxy star:79 A fully featured scriptable and daemon configurable proxy and pivoting toolkit with SOCKS5, HTTP, raw ports and reverse proxy protocols.
- packet star:79 通过TCP和UDP发送数据包。它可以缓冲消息和热交换连接。
- dhcp6 star:77 实现了一个DHCPv6服务器,如RFC 3315所述。
- fwdctl star:57 A simple and intuitive CLI to manage IPTables forwards in your Linux server.
- portproxy star:57 Simple TCP proxy which adds CORS support to API's which don't support it.
- linkio star:53 网络链路速度模拟,主要用于接口的读/写。
- webhooked star:37 A webhook receiver on steroids: handle, secure, format and store a Webhook payload has never been easier.
- graval star:28 FTP服务器框架。
- httpproxy star:28 HTTP代理处理程序和拨号。
- publicip star:28 包publicip返回面向公共的IPv4地址(internet出口)。
- gnet star:20
gnet
is a high-performance networking framework,especially for game servers. - goshark star:19 用于解码IP包,创建用于分析的数据结构包。
- llb star:15 一个非常简单、快速的代理服务器后端。可用于快速重定向到预定义域,具有零内存分配和快速响应。
- tspool star:14 TCP库使用工作池来提高性能并保护服务器。
- go-sse star:12 Go client and server implementation of HTML server-sent events.
- go-multiproxy star:6 Library for making HTTP requests through a pool of proxies offering fault tolerance, load balancing, automatic retries, cookie management, and more, via http.Get/Post replacement or http.Client RoundTripper drop-in
HTTP客户端
用于发出HTTP请求的库。 (翻译出错了? 试试 英文版 吧~)
- resty star:10189 简单的 HTTP 和 REST 客户端,受到 Ruby rest-client 的启发。
- req star:4303 简单的去HTTP客户端与黑魔法(更少的代码和更高的效率)。
- heimdall star:2633 一个增强的http客户端,具有重试和hystrix功能。
- grequests star:2143 一个 Go “克隆”的伟大和著名的请求库。
- go-retryablehttp star:1999 Go中可重试的HTTP客户端。
- sling star:1689 Sling是一个用于创建和发送API请求的Go HTTP客户端库。
- requests star:1519 gopher的HTTP请求。使用上下文。上下文,并且不隐藏底层的net/http。客户端,使其与标准Go api兼容。还包括测试工具。
- gentleman star:1083 功能齐全的插件驱动HTTP客户端库。
- pester star:649 使用重试、后退和并发执行HTTP客户机调用。
- go-cleanhttp star:374 很容易获得stdlib HTTP客户端,它不与其他客户端共享任何状态。
- request star:291 golang的HTTP客户端。如果您有关于axios或请求的经验,您会喜欢它。没有第三依赖性。
- go-otelroundtripper star:83 http。为HTTP请求发出开放遥测指标的RoundTripper。
- go-http-client star:80 简单而容易地进行http调用。
- go-zoox/fetch star:71 A Powerful, Lightweight, Easy Http Client, inspired by Web Fetch API.
- fast-shot star:68 Hit your API targets with rapid-fire precision using Go's fastest and simple HTTP Client.
- rq star:51 golang stdlib HTTP客户端更好的接口。
- httpretry star:47 用重试功能丰富默认的go HTTP客户端。
- go-req star:22 声明式golang HTTP客户端。
OpenGL
用于在Go中使用OpenGL的库。 (翻译出错了? 试试 英文版 吧~)
- glfw star:1577 GLFW 3 的 Go 接口实现。
- gl star:1093 OpenGL 的 Go 接口实现(通过glow生成)。
- mathgl star:561 完全基于 Go 实现的数学软件包,专门用于处理三维数学。借鉴于 GLM。
- goxjs/gl star:177 跨平台的OpenGL 接口实现(OS X, Linux, Windows,浏览器,iOS, Android)。
- goxjs/glfw star:83 跨平台 glfw 库,可用于创建 OpenGL 上下文并接收事件。
- go-glmatrix star:11 进入glMatrix库的端口。
ORM
Libraries that implement Object-Relational Mapping or datamapping techniques. (翻译出错了? 试试 英文版 吧~)
- GORM star:37015 一个出色的 ORM 库。主要目标是对开发人员友好。
- ent star:15670 一个用于Go的实体框架。用于建模和查询数据的简单而强大的ORM。
- SQLBoiler star:6765 ORM 生成器。根据数据库 schema 生成一个功能强大且运行速度快的ORM。
- bun star:3820 SQL-first Golang ORM. Successor of go-pg.
- gorp star:3740 基于 Go 的关系持久性 ORM-ish 库。
- upper.io/db star:3543 对外提供统一的接口用于访问不同的存储介质,例如PostgreSQL, MySQL, SQLite, MSSQL, QL、MongoDB.。
- XORM 简单而强大的ORM for Go。(支持:MySQL, MyMysql, PostgreSQL, Tidb, SQLite3, MsSql和Oracle)。
- gormt star:2364 Mysql数据库到golang gorm结构。
- Prisma star:2155 Prisma客户端Go,类型安全的数据库访问。
- go-sqlbuilder star:1468 一个灵活而强大的SQL字符串构建器库。
- pop/soda star:1444 数据库迁移、创建、ORM等。用于MySQL、PostgreSQL和SQLite。
- reform star:1444 基于非空接口和代码生成的 ORM。
- bob star:798 SQL query builder and ORM/Factory generator for Go. Successor of SQLBoiler.
- rel star:770 Golang的现代数据库访问层——可测试、可扩展,并精心设计成一个干净优雅的API。
- Zoom star:309 基于 Redis 的快速数据存储和查询引擎。
- go-sql star:176 一个简单的ORM为mysql。
- grimoire star:164 基于 golang 的数据库访问层和验证库。(支持: MySQL, PostgreSQL和SQLite3)。
- golobby/orm star:160 Simple, fast, type-safe, generic orm for developer happiness.
- go-store star:112 简单且快速的 Redis 键值存储库。
- go-firestorm star:52 一个轻量级的ORM。用于Google/Firebase Cloud Firestore。
- cacheme star:23 基于模式的,类型化的Redis缓存/记忆框架。
- CQL star:17 Built on top of GORM, adds compile-time verified queries based on auto-generated code.
- go-dbw star:15 A simple package that encapsulates database operations.
- lore star:14 Simple and lightweight pseudo-ORM/pseudo-struct-mapping environment for Go.
- marlow star:13 从项目结构生成ORM。
包管理
用于管理依赖和包的官方工具 (翻译出错了? 试试 英文版 吧~)
- go modules Modules 是源码的版本控制和交换的单位。go命令直接支持处理模块,包括记录和解决对其他模块的依赖关系。
包管理的官方实验工具 (翻译出错了? 试试 英文版 吧~)
用于包和依赖项管理的非官方库。 (翻译出错了? 试试 英文版 吧~)
- glide star:8146 轻松管理您的 golang 第三方包。受Maven、Bundler和Pip等工具的启发。
- syft star:6283 A CLI tool and Go library for generating a Software Bill of Materials (SBOM) from container images and filesystems.
- godep star:5536 godep是go的依赖工具,它通过修复包的依赖关系来帮助构建可重复的包。
- govendor star:4933 包管理器。使用 vendor 文件的 Go vendor 工具。
- gopm star:2470 包管理器。
- gom star:1382 Go Manager - bundle for Go。
- gpm star:1189 基本的 Go 依赖管理器。
- goop star:778 Go 的简单依赖管理器,灵感来自Bundler。
- modgv star:488 将'go mod graph'输出转换为Graphviz的点语言。
- gup star:347 Update binaries installed by "go install".
- johnny-deps star:213 使用Git的最小依赖版本。
- mvn-golang star:163 插件,为自动加载Golang SDK,依赖关系管理和启动Maven项目基础设施中的构建环境提供了方法。
- VenGO star:124 创建和管理可导出的隔离go虚拟环境。
- gop star:49 在GOPATH之外构建和管理Go应用程序。
性能
- jaeger star:20532 分布式跟踪系统。
- pixie star:5594 通过eBPF对Golang应用程序没有检测跟踪。
- statsviz star:3220 实时可视化您的Go应用程序运行时统计数据。
- profile star:2007 Go的简单分析支持包。
- go-instrument star:230 Automatically add spans to all methods and functions.
- mm-go star:150 Generic manual memory management for golang.
- tracer star:86 简单、轻量级的跟踪。
查询语言
- gqlgen star:9983 去生成基于graphql服务器库。
- graphql-go star:9937 为Go实现GraphQL。
- dasel star:7174 使用命令行中的选择器查询和更新数据结构。与jq/yq类似,但支持JSON、YAML、TOML和XML,运行时依赖关系为零。
- graphql star:4657 关注易用性的GraphQL服务器。
- gojsonq star:2192 一个用来查询JSON数据的Go包。
- rql star:343 用于REST API的资源查询语言。
- jsonql star:276 Golang中的JSON查询表达式库。
- jsonslice star:86 使用高级过滤器查询Jsonpath。
- rqp star:78 REST API的查询解析器。查询中直接支持筛选、验证、'和'或'操作。
- goven star:60 A drop-in query language for any database schema.
- graphql star:57 graphql解析器+工具集
- api-fu star:55 综合GraphQL实现。
- mql star:44 Model Query Language (mql) is a query language for your database models.
- straf star:38 轻松地将Golang结构转换为GraphQL对象。
- jsonpath star:24 一个基于JSONPath语法检索部分JSON的查询库。
- gws star:6 Apollos的“GraphQL over Websocket”客户端和服务器实现。
- grapher star:3 A GraphQL field builder utilizing Go generics with extra utilities and features.
Reflection
- Deepcopier star:452 结构体拷贝
- gotype star:61 Golang 源码解析,用法类似reflect(反射)。
- copy star:49 包快速复制不同类型的struct。
- gpath star:40 用于简化结构体域访问的库。
- go-deepcopy star:29 Fast deep copy library.
- goenum star:12 A common enumeration struct based on generics and reflection that allows you to quickly define enumerations and use a set of useful default methods.
- reflectutils star:8 处理反射的助手:结构标记解析;递归行走;从字符串填充值。
- objwalker star:3 走过带有反射的物体。
嵌入的资源
- statik star:3764 将静态文件嵌入到Go可执行文件中。
- packr star:3411 将静态文件嵌入到Go二进制文件中的简单方法。
- go.rice star:2419 走了。rice是一个Go包,它使得处理HTML、JS、CSS、图像和模板等资源非常容易。
- vfsgen star:983 生成一个vfsdata。静态实现给定虚拟文件系统的go文件。
- esc star:637 将文件嵌入到Go程序中并提供http文件系统接口。
- fileb0x star:635 一个可定制的工具用来在Go中嵌入文件
- go-resources star:176 嵌入到Go中的普通资源。
- statics star:67 将静态资源嵌入到go文件中,用于单个二进制编译+使用http。文件系统+符号链接。
- debme star:32 创建一个“嵌入。FS '从一个现有的'嵌入。FS的子目录。
- templify star:30 将外部模板文件嵌入到Go代码中,以创建单个文件二进制文件。
- rebed star:29 重新创建Go 1.16' embed中的文件夹结构和文件。FS的类型
- mule star:15 Embed external resources like images, movies ... into Go source code to create single file binaries using
go generate
. Focused on simplicity.
科学与数据分析
用于科学计算和数据分析的库。 (翻译出错了? 试试 英文版 吧~)
- gonum star:7638 Gonum是一组用于Go编程语言的数字库。它包含用于矩阵、统计、优化等的库。
- stats star:2927 包含Golang标准库中缺少的公共函数的统计软件包。
- gonum/plot star:2750 gonum/plot提供了一个API,用于在Go中构建和绘制绘图。
- gosl star:1833 提供线性代数,FFT,几何,NURBS,数值方法,概率,优化,微分方程,等等。
- streamtools star:1312 通用图形工具,用于处理数据流。
- dataframe-go star:1197 用于机器学习和统计的数据框架(类似于panda)。
- orb star:913 2D几何类型,支持剪切、GeoJSON和Mapbox矢量平铺。
- go-dsp star:859 Go数字信号处理。
- chart star:771 简单的图表绘制库。支持多种图形类型。
- goraph star:739 纯golang图论库(数据结构,算法可视化)。
- graph star:709 基本图形算法库。
- Poly star:676 A Go package for engineering organisms.
- ewma star:439 提供指数加权移动平均算法。
- calendarheatmap star:399 基于Github贡献活动的日历热图。
- go-hep star:231 A set of libraries and tools for performing High Energy Physics analyses with ease.
- TextRank star:205 TextRank在Golang中的实现,支持扩展特性(摘要、加权、短语提取)和多线程(goroutine)。
- gohistogram star:175 数据流的近似直方图。
- sparse star:159 Go 稀疏矩阵格式的线性代数支持科学和机器学习应用程序,兼容gonum矩阵库。
- go-estimate star:113 Go中的状态估计和滤波算法。
- pagerank star:85 加权 PageRank 算法在Go中的实现。
- jsonl-graph star:73 使用graphviz支持操作JSONL图形的工具。
- gograph star:68 A golang generic graph library that provides mathematical graph-theory and algorithms.
- geom star:56 Go 的二维几何。
- evaler star:51 简单的浮点算术表达式求值器。
- decimal star:41 Package decimal实现任意精度的十进制浮点运算。
- triangolatte star:36 二维三角库。允许将线和多边形(都基于点)转换为gpu语言。
- goent star:35 Go 实现熵度量。
- piecewiselinear star:26 微型线性插值库。
- godesim star:23 扩展/多变量ODE求解器框架,用于基于事件的模拟与简单的API。
- GoStats star:22 GoStats是一个开放源码的GoLang库,主要用于机器学习领域的数学统计,它涵盖了大多数统计度量函数。
- ode star:22 常微分方程(ODE)求解器,支持扩展状态和基于信道的迭代停止条件。
- PiHex star:20 实现了针对16进制数 Pi 的“bailee - borwein - plouffe”算法。
- assocentity star:15 assocentity 返回单词到给定实体的平均距离。
- bradleyterry star:11 为成对比较提供了一个 Bradley-Terry 模型。
- go-gt star:11 用“Go”语言编写的图论算法。
- rootfinding star:11 二次函数求根算法库。
- topk star:4 Sliding-window and regular top-K sketches, based on the HeavyKeeper algorithm.
安全
用于帮助您的应用程序更安全的库。 (翻译出错了? 试试 英文版 吧~)
- age star:17459 一个简单、现代和安全的加密工具(和Go库),具有小的显式密钥,没有配置选项,并且具有unix风格的可组合性。
- lego star:8053 纯 Go ACME 客户端库及命令行工具
- CertMagic star:5049 成熟、健壮和强大的ACME客户端集成,用于完全托管的TLS证书颁发和续签。
- Cameradar star:4111 工具和库,以远程入侵RTSP流从监控摄像头。
- memguard star:2552 一个用于处理内存中敏感值的纯Go库。
- secure star:2277 Go 语言 HTTP 中间件,为 Go 提供了一些安全功能
- Coraza star:2268 企业级、modsecurity和OWASP CRS兼容WAF库。
- acmetool star:2057 ACME(让我们用自动更新加密)客户端工具。
- acopw-go Small cryptographically secure password generator package for Go.
- themis star:1877 用于解决典型数据安全任务(安全数据存储、安全消息传递、零知识证明认证)的高级加密库,可用于14种语言,最适合多平台应用程序。
- acra star:1360 网络加密代理保护基于数据库的应用程序免受数据泄漏:强选择性加密,SQL注入预防,入侵检测系统。
- dongle star:903 一个简单的,语义和开发人员友好的golang包的编码和解码和加密和解密。
- beelzebub star:687 A secure low code honeypot framework, leveraging AI for System Virtualization.
- nacl star:544 Go 实现NaCL API的集合。
- booster star:504 Fast initramfs generator with full-disk encryption support.
- go-password-validator star:502 基于原始密码熵值的密码验证器。
- ssh-vault star:452 使用ssh密钥加密/解密。
- optimus-go star:365 使用Knuth的算法进行ID哈希和混淆。
- go-yara star:360 YARA的 Go 语言接口,号称是 “对于恶意软件研究者(以及其他人)来说是模式匹配的瑞士军刀”
- teler-waf star:357 teler-waf is a Go HTTP middleware that provide teler IDS functionality to protect against web-based attacks and improve the security of Go-based web applications. It is highly configurable and easy to integrate into existing Go applications.
- firewalld-rest star:337 用于动态更新linux服务器上的firewalld规则的rest应用程序。
- BadActor star:320 一个驻留在内存中的,应用驱动的监控程序,受 fail2ban 的启发
- passlib star:289 不过时的密码哈希库。
- go-peer star:266 A software library for creating secure and anonymous decentralized systems.
- simple-scrypt star:198 Scrypt 库,具有简单、易懂的 API,同时具有内置的自动校准功能
- argon2pw star:90 使用常量时间密码比较生成Argon2密码散列。
- autocert 让我们加密证书并启动TLS服务器。
- luks.go star:88 Pure Golang library to manage LUKS partitions.
- goSecretBoxPassword star:59 一个安全哈希和加密密码的偏执包。
- go-generate-password star:55 可以在cli上或作为库使用的密码生成器。
- passwap star:51 Provides a unified implementation between different password hashing algorithms
- go-htpasswd star:39 Apache htpasswd解析器。
- certificates star:38 用于生成tls证书的自定义工具。
- secureio star:33 一个密钥交换+认证+加密的包装和多路复用的' io。读写ecloser '基于XChaCha20-poly1305, ECDH和ED25519。
- secret star:28 Prevent your secrets from leaking into logs, std* etc.
- sslmgr star:26 使用围绕acme/autocert的高级包装器,SSL证书变得很容易。
- argon2-hashing star:20 轻包装周围的Go的argon2包,它与Go的标准库Bcrypt和simple-scrypt包密切镜像。
- goArgonPass star:18 Argon2密码散列和验证设计为与现有Python和PHP实现兼容。
- multikey star:6 An n-out-of-N keys encryption/decryption framework based on Shamir's Secret Sharing algorithm.
- Interpol star:5 基于规则的数据生成器,用于模糊和渗透测试。
- encid star:3 Encode and decode encrypted integer IDs.
序列化
用于二进制序列化的库和工具。 (翻译出错了? 试试 英文版 吧~)
- jsoniter star:13452 高性能,100% 兼容的“encoding/json” 替代品
- goprotobuf star:9792 通过库和协议编译器插件使 Go 语言支持 Google的 protocol buffers.
- mapstructure star:7921 用于对原生键值对进行解码生成 Go 语言结构体
- gogoprotobuf star:5665 Go 语言的 Protocol Buffer 库。
- go-codec star:1862 高性能、多功能、规范化编码解码以及 rpc 库, 用于 msgpack, cbor 和 json,支持基于运行时的 OR 码生成
- csvutil star:942 高性能、惯用的CSV记录编码和解码到本机Go结构。
- colfer star:746 为Colfer二进制格式生成代码。
- cbor star:741 小,安全,容易的CBOR编码和解码库。
- go-capnproto star:288 Go 语言用的 Cap'n Proto 库及解析器
- php_session_decoder star:164 用于协同 PHP session 格式数据和 PHP 序列化/反序列化函数工作的go语言库
- structomap star:144 用于从静态结构体简单、动态的生成键值对的库
- binstruct star:97 用于将数据映射到结构中的Golang二进制解码器。
- bambam star:65 用于 Go 语言生成 Cap'n Proto schemas 的生成器
- asn1 star:55 面向golang的BER和DER编码库。
- bel star:42 从Go structs/interface生成TypeScript接口。对JSON RPC很有用。
- fwencoder star:27 用于Go的固定宽度文件解析器(编码和解码库)。
- elastic star:23 在运行时跨不同类型转换片、映射或任何其他未知值
- gotiny star:20 Efficient Go serialization library, gotiny is almost as fast as serialization libraries that generate code.
- pletter star:19 A standard way to wrap a proto message for message brokers.
- go-csvlib star:16 High level and rich functionalities CSV serialization/deserialization library.
- fixedwidth star:9 固定宽度的文本格式(支持UTF-8)。
- unitpacking star:6 标准库将单元向量打包到尽可能少的字节中。
服务器应用程序
- Caddy star:58503 Caddy是另一种HTTP/2 web服务器,易于配置和使用。
- consul Consul 是一个用于服务发现、监控和配置的工具
- minio star:48378 Minio是一个分布式对象存储服务器。
- etcd star:47885 为共享配置和服务发现提供高可用的键值存储。
- pocketbase star:40869 PocketBase is a realtime backend in 1 file consisting of embedded database (SQLite) with realtime subscriptions, built-in auth management and much more.
- SFTPGo star:9459 完全功能和高度可配置的SFTP服务器与可选的FTP/S和WebDAV支持。它可以为本地文件系统和云存储后端(如S3和谷歌云存储)提供服务。
- RoadRunner star:7926 高性能PHP应用服务器,负载平衡器和进程管理器。
- Easegress star:5781 具有可观察性和可扩展性的云本地高可用性/性能流量编排系统。
- flipt star:3825 一个用Go和Vue.js编写的自包含特性标志解决方案
- Wish star:3637 制作SSH应用程序,就像这样!
- devd star:3440 为开发人员提供本地web服务器。
- Fider star:3036 Fider是一个收集和组织客户反馈的开放平台。
- algernon star:2831 内置支持Lua、Markdown、GCSS和Amber的HTTP/2 web服务器。
- Flagr star:2436 Flagr是一个开源特性标记和A/B测试服务。
- Trickster star:1996 HTTP反向代理缓存和时间序列加速器。
- discovery star:1779 用于弹性中间层负载平衡和故障转移的注册表。
- go-feature-flag star:1484 A simple, complete and lightweight self-hosted feature flag solution 100% Open Source.
- jackal star:1438 用Go编写的XMPP服务器。
- Euterpe star:537 自带web UI和REST API的自托管音乐流媒体服务器。
- dummy star:178 用一个命令运行基于API契约的模拟服务器。
- dudeldu star:143 一个简单的SHOUTcast服务器。
- go-proxy-cache star:133 简单的反向代理与缓存,写在Go,使用Redis。
- cortex-tenant star:111 Prometheus远程写代理,添加了基于度量标签的add Cortex租户ID头。
- lets-proxy2 star:96 Reverse proxy for handle https with issue certificates in fly from lets-encrypt.
- psql-streamer star:58 从PostgreSQL到Kafka的流数据库事件。
- nginx-prometheus star:40 Nginx日志解析器和Prometheus 导出。
- nsq 一个实时分布式消息平台。
- simple-jwt-provider star:38 展示JWTs的简单轻量级提供者,支持登录、密码重置(通过邮件)和用户管理。
- protoxy star:35 将JSON请求体转换为协议缓冲区的代理服务器。
- Moxy star:15 Moxy是一个简单的模拟和代理应用程序服务器,您可以创建模拟端点以及代理请求,以防端点不存在模拟。
- gondola star:7 A YAML based golang reverse proxy.
- riemann-relay star:2 传递到负载平衡Riemann事件并/或将其转换为 Carbon。
流处理
用于流处理和响应式编程的库和工具。 (翻译出错了? 试试 英文版 吧~)
- go-streams star:1914 流处理库。
- machine star:158 使用内置的度量和可跟踪性来编写和生成流工作人员。
- stream star:89 去流,像Java 8流:过滤器/地图/平面地图/Peek/排序/ForEach/减少…
- goio star:82 An implementation of IO, Stream, Fiber for Golang, inspired by awesome Scala libraries cats and fs2.
模板引擎
用于模板和词法分析的库和工具。 (翻译出错了? 试试 英文版 吧~)
- templ star:8361 A HTML templating language that has great developer tooling.
- quicktemplate star:3130 快速、强大且易用的模板引擎。将模板转化为 Go 语言并进行编译
- pongo2 star:2881 类似 DjanGo 的模板引擎
- maroto star:2222 创建pdf文件的maroto方法。Maroto的灵感来自于Bootstrap并使用gofpdf。快速和简单。
- jet star:1265 Jet模板引擎。
- Razor star:859 Go 语言的 Razor 视图引擎
- fasttemplate star:844 简单和快速的模板引擎。替换模板占位符的速度比text/template快10倍。
- gomponents HTML 5 components in pure Go, that look something like this:
func(name string) g.Node { return Div(Class("headline"), g.Textf("Hi %v!", name)) }
. - raymond star:609 使用 Go 语言实现的完整的 handlebars
- ego star:582 轻量级模板语言,允许您在Go中编写模板。模板被翻译成Go并编译。
- goview star:427 Goview是一个轻量级、极简的模板库,基于golang html/template构建Go web应用程序。
- htmgo build simple and scalable systems with go + htmx
- liquid star:287 Go 语言实现的 Shopify Liquid 模板.
- Soy star:172 Go 语言实现的谷歌闭包模板(也就是 Soy templates) ,遵循官方规范。
- sprout star:95 Go模板的有用模板函数。
- extemplate star:58 对 html/template 进行了简单的封装,支持基于文件的模板可以利用其他模板文件进行扩展
- got star:32 一个受Hero和Fasttemplate启发的Go代码生成器。包括文件,自定义标签定义,注入的Go代码,语言翻译,等等。
- tbd star:25 用占位符创建文本模板的一种非常简单的方法——暴露额外的Git repo元数据。
测试
用于测试代码库和生成测试数据的库。 (翻译出错了? 试试 英文版 吧~)
Testing Frameworks
- Testify star:23520 对标准测试包的扩展。
- apitest 基于REST的服务/HTTP处理程序的简单且可扩展的行为测试库,支持模拟外部HTTP调用和呈现序列图
- keploy star:5121 Generate Testcase and Data Mocks from API calls automatically.
- go-cmp star:4226 用于比较测试中的Go值的包。
- testcontainers-go star:3672 A Go package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers to programmatically define containers that should be run as part of a test and clean up those resources when the test is done.
- httpexpect star:2557 简洁的、声明式的、易用的端到端HTTP 及 REST API 测试
- godog star:2317 Cucumber BDD framework for Go.
- is star:1792 专业的Go轻量级测试迷你框架。
- gnomock star:1394 在Docker中运行与真实依赖项(数据库、缓存,甚至是Kubernetes或AWS)的集成测试,而不使用模拟。
- go-vcr star:1261 记录并回放HTTP交互,以便进行快速、确定和准确的测试。
- testfixtures star:1116 类似 Rails 的测试工具,用于测试数据库应用
- goblin star:887 Mocha like testing framework of Go.
- embedded-postgres star:867 作为另一个Go应用程序或测试的一部分,在Linux、OSX或Windows上本地运行一个真正的Postgres数据库。
- goc star:819 Goc是一个针对Go编程语言的全面覆盖测试系统。
- gocheck 更加高级的测试框架,用于替换 Gotest
- GoConvey BDD 风格的测试框架,具有 web 界面和计时刷新功能
- baloo star:778 表达性强、多功能的、端到端的HTTP API 测试工具
- go-mutesting star:643 变异测试的Go源代码。
- gotest.tools star:518 一组包,用于增强go测试包并支持公共模式。
- gofight star:442 对 Go 语言的路由框架进行 API 测试
- go-testdeep star:436 极具灵活性的golang深度比较,扩展了go测试包。
- testza star:418 功能齐全的测试框架,带有漂亮的彩色输出。
- cupaloy star:309 测试框架的简单快照测试插件。
- frisby star:278 REST API测试框架。
- endly star:266 声明性端到端功能测试。
- got star:265 一个有趣的golang测试框架。
- go-hit star:255 Hit是一个用golang编写的http集成测试框架。
- go-carpet star:246 在终端中查看测试覆盖率的工具。
- commander star:226 用于在windows、linux和osx上测试cli应用程序的工具。
- charlatan star:203 为测试生成假接口实现的工具。
- dbcleaner star:161 清空数据库用于测试,受到database_cleaner 的启发
- jsonassert star:127 用于验证JSON有效负载已正确序列化的包。
- testcase star:121 行为驱动开发的惯用测试框架。
- gocrest star:106 用于 Go 断言的可组合的类似 hamcrest 的 matchers。
- be star:102 The minimalist generic test assertion library.
- wstest star:102 用于单元测试Websocket http.Handler的Websocket客户机。
- Gont star:78 Go network testing toolkit for testing building complex network topologies using Linux namespaces.
- gherkingen star:77 BDD样板生成器和框架。
- ginkgo Go的BDD测试框架。
- testcerts star:69 Dynamically generate self-signed certificates and certificate authorities within your test functions.
- assert star:63 基础断言库,用于对 Go 语言程序进行测试,提供了一些用于自定义断言的代码块
- restit star:55 帮助编写 RESTful API 集成测试的 Go 语言微型框架.。
- gospecify star:52 支持 BDD 语法 。对于任何使用过 rspec 等库的人来说应该非常熟悉。
- gomatch star:47 为针对模式测试JSON而创建的库。
- gomega 类似 Rspec 的 matcher/assertion 库
- fluentassert star:46 Extensible, type-safe, fluent assertion Go library.
- dsunit star:45 用于SQL、NoSQL、结构化文件的数据存储测试。
- fixenv star:30 夹具管理引擎,灵感来自pytest夹具。
- Hamcrest star:30 用于声明性 Matcher 对象的连贯框架,当将其应用于输入值时,将产生自描述结果。
- schema star:21 快速、简单地匹配请求和响应中使用的JSON模式的表达式。
- flute star:19 HTTP客户端测试框架。
- testsql star:17 在测试前从SQL文件生成测试数据,并在测试完成后清除数据。
- dft star:15 Lightweight, zero dependency docker containers for testing (or more).
- gogiven star:15 类似于 YATSPEC 的Go BDD测试框架。
- biff star:14 分支测试框架,BDD兼容。
- gosuite star:12 轻量级测试套,为 Go1.7's Subtests 带来了setup/teardown 功能
- stop-and-go star:10 并发性测试助手。
- Tt star:8 简单而丰富多彩的测试工具。
- trial star:6 无需引入太多样板,即可快速轻松地扩展断言。
- envite star:5 Dev and testing environment management framework.
- go-testpredicate star:5 测试带有大量诊断输出的断言样式断言库。
- go-mysql-test-container star:3 Golang MySQL testcontainer to help with MySQL integration testing.
- go-snaps Jest-like snapshot testing in Golang.
- arch-go star:1 Architecture testing tool for Go projects.
- omg.testingtools star:1 用于更改用于测试的私有字段值的简单库。
Mock
- gomock star:9322 用于Go编程语言的mock框架。
- go-sqlmock star:6157 Mock SQL ,用于测试数据库交互
- mockery star:6157 生成Go界面的工具。
- hoverfly star:2360 使用可扩展中间件和易于使用的CLI记录和模拟REST/SOAP api的HTTP(S)代理。
- gock star:2109 多功能、易用 HTTP mock
- moq star:1998 Utility that generates a struct from any interface. The struct can be used in test code as a mock of the interface.
- httpmock star:1943 轻松模拟来自外部资源的HTTP响应。
- counterfeiter star:997 用于生成自包含 mock 对象的工具
- genmock 使用代码生成器构建接口方法的调用来模拟系统。
- go-txdb star:667 基于单事务的数据库驱动,主要用于测试目的
- minimock star:645 Go接口的模拟生成器。
- xgo star:368 A general pureposed function mocking library.
- govcr star:174 HTTP mock : 离线测试时记录和重放浏览器的动作
- go-localstack star:78 用于在AWS测试中使用localstack的工具。
- timex star:70 一个测试友好的本地“时间”包的替代品。
- mockhttp star:23 Go http.ResponseWriter的模拟对象。
- mooncake star:18 A simple way to generate mocks for multiple purposes.
Fuzzing and delta-debugging/reducing/shrinking
Selenium and browser control tools
- chromedp star:11087 用于驱动和测试 Chrome, Safari, Edge, Android Webviews, 以及其他支持 Chrome 调试协议的产品
- rod star:5409 一个Devtools驱动程序,使web自动化和抓取更加容易。
- selenoid star:2607 Selenium hub 服务器的替代品,在容器中启动浏览器
- playwright-go star:2241 浏览器自动化库控制铬,Firefox和WebKit与一个单一的API。
- cdp star:727 用于Chrome调试协议的类型安全绑定,可与实现该协议的浏览器或其他调试目标一起使用。
- ggr star:314 一个轻量级服务器,可以将 Selenium Wedriver 的请求路由或代理到多个 Selenium hubs
Fail injection
文本处理
用于解析和操作文本的库。 (翻译出错了? 试试 英文版 吧~)
See also Natural Language Processing and Text Analysis.
格式器
- go-humanize star:4365 格式化程序,用于将时间、数字和内存大小转换为可读格式。
- gotabulate star:334 使用 Go 语言简单、美观的打印表格数据
- align star:84 对文本进行对齐的通用应用程序。
- bytes 格式和解析数字字节值(10K、2M、3G等)。
- go-fixedwidth star:82 固定宽度的文本格式(带反射的编码器/解码器)。
- address star:73 处理地址表示、验证和格式。
- textwrap star:5 在行尾换行。从Python实现' textwrap '模块。
标记语言
- blackfriday star:5462 Markdown 解析器
- toml star:4593 TOML配置格式(带反射的编码器/解码器)。
- goldmark star:3703 A Markdown parser written in Go. Easy to extend, standard (CommonMark) compliant, well structured.
- html-to-markdown star:2333 将HTML转换成Markdown
- go-toml star:1737 使用带有查询支持和方便的cli工具的TOML格式库。
- htmlquery star:739 用于HTML的XPath查询包,允许您通过XPath表达式从HTML文档中提取数据或求值。
- mxj star:622 将XML编码/解码为JSON或map[string]接口{};使用点符号路径和通配符提取值。替换x2j和j2x包。
- goq star:261 Declarative unmarshalling of HTML using struct tags with jQuery syntax (uses GoQuery).
- bafi star:104 通用JSON, BSON, YAML, XML翻译到任何格式使用模板。
- go-output-format star:17 在你的命令行应用程序中将go结构输出为多种格式(YAML/JSON/etc)。
- bbConvert star:12 将bbCode转换为HTML,使您可以添加对自定义bbCode标记的支持。
- htmlyaml star:4 Rich rendering of YAML as HTML in Go
- htree star:4 Traverse, navigate, filter, and otherwise process trees of html.Node objects.
解析 器/Encoders/Decoders
- sh star:7323 Shell解析器和格式化工具。
- gofeed star:2595 在Go中解析RSS和Atom feeds。
- go-querystring star:1994 Go library for encoding structs into URL query parameters.
- when star:1402 带有可插入规则的自然EN和RU语言日期/时间解析器。
- commonregex star:895 一组用于Go的公共正则表达式。
- gographviz star:553 解析Graphviz DOT语言。
- go-nmea star:227 用于Go语言的NMEA解析器库。
- godump star:150 Pretty print any GO variable with ease, an alternative to Go's
fmt.Printf("%#v")
. - editorconfig-core-go star:141 Editorconfig文件解析器和Go操作器。
- sdp star:113 SDP:会话描述协议[RFC 4566]。
- go-vcard star:107 解析和格式化vCard。
- tokenizer star:100 Parse any string, slice or infinite buffer to any tokens.
- did star:91 DID(分散标识符)解析器和Stringer。
- allot star:59 用于CLI工具和机器人的占位符和通配符文本解析。
- normalize star:46 消毒,规范化和比较模糊的文本。
- vdf star:44 A Lexer and Parser for Valves Data Format (known as vdf) written in Go.
- gonameparts star:42 将人名解析为单独的名称部分。
- xj2go star:34 将xml或json转换为struct。
- go-fasttld star:32 High performance effective top level domains (eTLD) extraction module.
- codetree star:24 解析缩进代码(python、pixy、scarlet等)并返回树结构。
- doi star:10 文档对象标识符(doi)解析器。
- parseargs-go star:10 字符串参数解析器,能够理解引用及反斜杠。
- parth URL路径分割解析。
- encdec star:9 Package provides a generic interface to encoders and decoders.
- ltsv star:9 高性能LTSV(Labeled Tab Separated Value)。
- prattle star:7 Scan and parse LL(1) grammars simply and efficiently.
正则表达式
- rex star:196 Regular expressions builder.
- regroup star:147 使用结构标记和自动解析将正则表达式命名组匹配到go结构中。
- goregen star:90 根据正则表达式生成随机字符串
- go-wildcard star:82 简单而轻量级的通配符模式匹配。
- genex star:77 将正则表达式计数并展开为所有匹配的字符串。
环境卫生
- bluemonday star:3220 HTML 清理工具
- gofuckyourself star:66 一个基于 sanitization 的 Go 敏感词过滤器。
刮刀
- colly star:23344 快速和优雅的 Scraping 框架。
- GoQuery star:14079 GoQuery 为 Go 语言带来了一组类似 jQuery 的语法和功能
- xurls star:1188 从文本中提取url。
- dataflowkit star:661 Web抓取框架将网站转换为结构化数据。
- pagser star:105 Pagser是一个简单的,可扩展的,可配置的解析和反序列化的html页面结构,基于goquery和结构标签的golang爬虫。
- Tagify star:38 从给定源生成一组标记。
- go-recipe star:27 A package for scraping recipes from websites.
- walker star:11 Seamlessly fetch paginated data from any source. Simple and high performance API scraping included.
RSS
- podcast star:132 在Golang兼容iTunes和RSS 2.0播客生成器
实用程序/Miscellaneous
- w2vgrep star:1117 A semantic grep tool using word embeddings to find semantically similar matches. For example, searching for "death" will find "dead", "killing", "murder".
- go-runewidth star:609 函数获取字符或字符串的固定宽度。
- radix star:192 快速字符串排序算法。
- go-zero-width star:109 用于Go的零宽度字符检测和删除。
- petrovich star:47 彼得罗维奇是一个图书馆,它把俄语名字的词形变化成特定的语法格。
- kace star:20 通用大小写转换工具
- TySug star:18 关于键盘布局的其他建议。
第三方api
用于访问第三方api的库。 (翻译出错了? 试试 英文版 吧~)
- github star:10456 访问GitHub REST API v3的库。
- go-openai star:9270 OpenAI ChatGPT, DALL·E, Whisper API library for Go.
- discordgo star:5109 Discord Chat API的客户端。
- slack star:4688 Slack API。
- google star:4038 为Go自动生成谷歌api。
- google-cloud star:3783 谷歌云api Go 客户端库。
- aws-sdk-go star:2674 AWS 提供的官方go语言 SDK
- minio-go star:2510 用于Amazon S3兼容云存储的Minio Go库。
- stripe star:2165 Stripe API 的 Go 语言客户端
- go-twitter star:1589 Twitter v1.1 api 的客户端.
- go-jira star:1481 Go Atlassian JIRA的客户端库
- facebook star:1335 支持 Facebook Graph API 的库
- anaconda star:1144 Twitter 1.1 API 的 go 语言客户端
- githubql star:1123 访问GitHub GraphQL API v4的库。
- webhooks star:957 GitHub 和 Bitbucket 的Webhook接收器。
- twitter-scraper star:900 刮Twitter前端API没有认证和限制。
- paypal star:692 PayPal支付API的包装器。
- geo-golang star:517 Go Library to access Google Maps, MapQuest, Nominatim, OpenCage, Bing, Mapbox, and OpenStreetMap geocoding / reverse geocoding APIs.
- lark star:422 飞舒/Lark Go SDK开放API,支持所有开放API和事件回调。
- openaigo star:292 OpenAI GPT3/GPT3.5 ChatGPT API client library for Go.
- ethrpc star:268 Ethereum JSON RPC API的客户端。
- Trello star:219 Trello API的 Go 语言封装。
- go-lark star:206 一个易于使用的非官方SDK为飞书和Lark开放平台。
- go-marathon star:199 用于和 Mesosphere's Marathon PAAS 交互的 Go 语言库
- wit-go star:159 wit.ai HTTP API 客户端。
- simples3 star:155 使用REST和用Go编写的V4签名的AWS S3库非常简单。
- gosip star:145 Client library for SharePoint.
- pushover star:142 Go 包装的 Pushover API。
- go-trending star:141 在Github上访问trends repository和developers的库。
- Medium star:140 Medium的OAuth2 API 客户端。
- go-atlassian star:132 访问Atlassian Cloud服务(Jira, Jira Service Management, Jira Agile, Confluence, Admin Cloud)
- gostorm star:129 GoStorm是一个Go库,它实现了编写Storm spout和bolt所需的通信协议,这些协议用于与Storm shell通信。
- golang-tmdb star:124 电影数据库API v3的Golang包装器。
- hipchat (xmpp) star:111 一个用于通过XMPP与HipChat通信的golang包。
- hipchat star:104 这个项目为Hipchat API实现了一个golang客户端库。
- go-gerrit star:94 Go cient library for Gerrit Code Review.
- cachet star:91 使用客户端库Cachet(开源状态页系统)。
- disgo star:88 Go API Wrapper for the Discord API.
- go-postman-collection star:82 去模块工作与邮递员收集(兼容失眠)。
- gogtrends star:82 非官方的Google Trends API。
- google-play-scraper star:82 从谷歌播放存储获取数据。
- igdb star:81 Internet Game Database API 客户端。
- airtable star:77 去客户端库Airtable API。
- go-redoc star:74 Embedded OpenAPI/Swagger documentation ui for Go using ReDoc.
- go-unsplash star:74 使用Unsplash.com API的客户端库。
- ynab star:70 YNAB API 的 Go 语言封装。
- circleci star:65 CircleCI的API的客户端
- mixpanel star:61 Mixpanel是一个库,用于跟踪事件并将Mixpanel概要文件更新从go应用程序发送到Mixpanel。
- GoMusicBrainz star:58 Go MusicBrainz WS2客户端库。
- amazon-product-advertising-api star:57 Amazon Product Advertising API的客户端库。
- uptimerobot star:56 运行时Robot v2 API 的 Go 语言封装和命令行客户端。
- clarifai star:55 Clarifai API的客户端。
- megos star:54 用于访问Apache Mesos集群的客户端库。
- fcm star:51 Firebase Cloud Messaging 的 Go 语言库
- go-xkcd star:51 xkcd API 的客户端。
- go-yapla Go ypla v2.0 API的客户端库。
- spotify star:51 用于接入 Spotify WEB API 的 Go 语言库
- gads star:50 Google Adwords 非官方 API
- swag star:47 No comments, simple go wrapper to create swagger 2.0 compatible APIs. Support most routing frameworks, such as built-in, gin, chi, mux, echo, httprouter, fasthttp and more.
- golyrics star:42 Golyrics是一个从Wikia网站获取音乐歌词数据的Go库。
- patreon-go star:42 Go Patreon API库。
- go-myanimelist star:39 去访问[MyAnimeList API]的客户端库(https://myanimelist.net/apiconfig/references/api/v2)。
- GoFreeDB star:36 Golang library providing common and simple database abstractions on top of Google Sheets.
- lastpass-go star:35 使用LastPass API的客户端库。
- gami star:33 Asterisk Manager Interface 的 Go 语言库
- translate star:33 Go 在线翻译包。
- steam star:32 用于与Steam服务器进行交互的库。
- gcm star:31 Google Cloud Messaging 库
- go-salesforce star:30 Go client library for interacting with the Salesforce REST API.
- shopify star:25 一个用于通过 Shopify API 进行增删改查的 Go 语言库。
- device-check-go star:24 Go客户端库与iOS DeviceCheck API v1交互。
- go-imgur star:24 Go imgur的客户端库
- jokeapi-go star:24 去客户端JokeAPI。
- coinpaprika-go star:23 Coinpaprika API的客户端。
- textbelt star:20 textbelt.com txt messaging API 的go语言客户端。
- brewerydb star:19 用于访问 BreweryDB API的 Go 语言库
- codeship-go star:18 Codeship API v2的客户端。
- go-aws-news star:17 去应用程序和库获取AWS的新内容。
- go-hacknews star:17 HackerNews API的小型Go客户端。
- bqwriter star:16 High Level Go Library将数据写入谷歌BigQuery在高位贯穿。
- go-openproject star:16 去与OpenProject API交互的客户端库。
- gopaapi5 star:16 Go客户端库亚马逊产品广告API 5.0。
- google-analytics star:15 简单的包装,方便的谷歌分析报告。
- goami2 star:14 AMI v2 library for Asterisk PBX.
- go-here star:13 转到基于这里位置的api的客户端库。
- go-sophos star:12 无任何依赖的Sophos UTM REST API客户端
- gomalshare star:12 去图书馆MalShare API malshare.com
- rawg-sdk-go star:12 去RAWG视频游戏数据库 API库
- go-swagger-ui star:11 Go库包含预编译Swagger UI,用于服务Swagger json。
- go-telegraph Telegraph 发布平台 API 客户端。
- smite star:11 对 Smite game API 的封装。
- ip2location-io-go star:10 Go wrapper for the IP2Location.io API IP2Location.io.
- rrdaclient star:10 用于接入 statdns.com API 的库——RRDA API。通过HTTP协议进行 DNS查询。
- goagi star:9 Go library to build Asterisk PBX agi/fastagi applications.
- libgoffi star:9 用于本地libffi集成的库适配器工具箱
- go-chronos star:8 用于与Chronos作业调度程序进行交互的Go库
- google-email-audit-api star:8 谷歌G Suite Email Audit API 的客户端。
- tumblr star:8 Tumblr v2 API 的 Go 语言封装。
- newsapi-go star:7 去客户端NewsAPI。
- zooz star:7 Zooz API 的 Go 语言客户端。
- go-hibp star:6 Simple Go binding to the "Have I Been Pwned" APIs.
- appstore-sdk-go star:5 非官方的用于AppStore Connect API的Golang SDK。
- dusupay-sdk-go star:3 非官方的Dusupay支付网关API客户端
- go-restcountries star:3 Go library for the REST Countries API.
- fasapay-sdk-go star:2 Unofficial Fasapay payment gateway XML API Client for Golang.
- gopensky star:2 Go client implementation for OpenSKY Network live's API (airspace ADS-B and Mode S data).
- playlyfe star:2 Playlyfe Rest API Go SDK。
- TripAdvisor star:2 TripAdvisor API 的 Go 语言封装。
- vl-go star:2 使用客户端库中的VerifID身份验证层API。
公用事业公司
可以让你的生活变得更简单的实用工具.。 (翻译出错了? 试试 英文版 吧~)
- fzf star:65711 用Go编写的命令行模糊查找器。
- dive star:46445 A tool for exploring each layer in a Docker image.
- hub star:22835 封装了 git 命令,提供了额外的功能用于在终端中和 Github 进行交互。
- lo star:17960 一个基于Go 1.18的Lodash类库+泛型(map, filter, contains, find…)
- sqlx star:16296 为内建的数据库/sql 软件包提供一组扩展。
- ctop star:15593 Top-like接口(例如htop)用于容器度量。
- goreleaser star:13840 尽可能快速的发布 Go 语言二进制文件。
- wuzz star:10571 用于HTTP检查的交互式cli工具。
- usql star:9054 usql 是一个通用的命令行接口,用于操作 sql 数据库。
- peco star:7698 简单的交互过滤工具。
- go-funk star:4800 现代 Go 语言工具库,提供了很多有用的工具 (map, find, contains, filter, chunk, reverse, ...)
- lancet star:4723 A comprehensive, efficient, and reusable util function library of go.
- hystrix-go star:4249 实现 Hystrix 风格的、程序员预定义的 fallback 机制(熔断。
- godropbox star:4172 用于编写 Go 语言服务/应用的库,来自 Dropbox.。
- minify star:3745 用于HTML、CSS、JS、XML、JSON和SVG文件格式的快速缩小器。
- panicparse star:3533 将类似的协程分组并对调用栈进行着色
- goreporter star:3127 进行代码静态分析,单元测试,代码检视并生成代码质量报告的工具
- mergo star:2892 用于将结构体和map合并进 Go 语言的工具。对于配置默认值,避免杂乱的if语句很有帮助。
- mc star:2877 Minio Client 提供了一组工具,用于操作 Amazon S3 兼容云存储和文件系统。
- create-go-app star:2616 一个强大的CLI,用于通过运行一个命令创建一个后端服务(Golang),前端(JavaScript, TypeScript)和部署自动化(Ansible, Docker)的可生产项目。
- retry-go star:2460 Simple library for retry mechanism.
- EaseProbe star:2180 A simple, standalone, and lightWeight tool that can do health/status checking daemon, support HTTP/TCP/SSH/Shell/Client/... probes, and Slack/Discord/Telegram/SMS... notification.
- filetype star:2126 通过数字签名来推测文件类型。
- Storm star:2064 一个简单又强大的用于 BoltDB 的工具
- jump star:1799 通过学习你的习惯,可以帮助你更快地导航。
- boilr star:1727 非常快的CLI工具,用于从样板模板创建项目。
- mole star:1696 cli应用程序可以轻松创建ssh隧道。
- Failsafe-go star:1682 Fault tolerance and resilience patterns for Go.
- mimetype star:1678 用于基于神奇数字的MIME类型检测的包。
- gitbatch star:1540 manage your git repositories in one place.
- gitcs Git Commits Visualizer, CLI tool to visualize your Git commits on your local machine.
- scany star:1309 库扫描数据从数据库到Go structs和更多。
- bed star:1276 A Vim-like binary editor written in Go.
- circuitbreaker star:1127 接通断路器。
- hostctl star:1102 一个使用简单命令管理/etc/主机的CLI工具。
- git-time-metric star:978 git-time-metric - 。
- upterm star:859 A tool for developers to share terminal/tmux sessions securely over the web. It’s perfect for remote pair programming, accessing computers behind NATs/firewalls, remote debugging, and more.
- immortal star:806 *nix 跨平台 (与操作系统无关的)监控程序。
- circuit star:766 一个高效和功能齐全的 类似 Hystrix Go 实现断路器模式。
- changie star:697 自动化的变更日志工具,用于准备带有大量定制选项的版本。
- sesh star:673 Sesh is a CLI that helps you create and manage tmux sessions quickly and easily using zoxide.
- clockwork star:668 一个简单的假 clock 。
- delve star:636 Go 语言调试器
- clipboard star:629 📋跨平台剪贴板包中去。
- ergo star:626 管理运行在不同端口上的多个本地服务变得很容易。
- scan star:562 扫描golang的sql。行直接指向结构、片或基本类型。
- htcat star:554 并行及流水线的 HTTP GET 工具。
- koazee star:529 库的灵感来自于延迟计算和函数式编程,从而减少了使用数组的麻烦。
- remote-touchpad star:528 Control mouse and keyboard from a smartphone.
- godaemon star:492 用于编写守护进程的工具
- go-dry star:487 DRY(don't repeat yourself)库。
- gubrak star:482 带有语法糖的Golang实用工具,就像lodash。
- limiters star:461 Golang中的分布式应用程序速率限制器,具有可配置的后端和分布式锁。
- gopencils star:451 小而简单的包,可以轻松地使用REST api。
- mani star:447 CLI工具,帮助您管理多个存储库。
- request star:425 Go 语言版的 HTTP Requests for Humans™.。
- countries star:410 Full implementation of ISO-3166-1, ISO-4217, ITU-T E.164, Unicode CLDR and IANA ccTLD standards.
- go-rate star:397 Go 限速器。
- grofer star:356 一个用Golang编写的系统和资源监控工具!
- config-file-validator star:348 Cross Platform tool to validate configuration files.
- retry star:340 基于上下文的功能机制,反复执行命令直到成功。
- serve star:335 任何您需要的静态http服务器。
- rospo star:311 简单可靠的ssh隧道,嵌入式ssh服务器在Golang。
- gotenv star:300 从
.env
或者任何io.Reader
。 - util star:292 有用实用函数的集合。(字符串,并发,操作,…)
- wifiqr star:263 Wi-Fi QR Code Generator.
- gohper star:254 多种能够帮助你进行软件开发的工具和模块。
- go-trigger star:246 Go 语言全局事件触发器,通过 id 和触发器,在程序的任何地方注册事件。
- pattern-match star:245 Pattern matching library.
- go-sitemap-generator star:220 用Go编写的XML站点地图生成器。
- toolbox star:198 切片, map, multimap, 结构体, 函数,数据转换工具。服务路由,宏求值和标记器。
- Death star:196 利用信号管理应用程序的关闭。
- go-bind-plugin star:184 Go:generate 工具,用于构建 Go 语言插件(1.8 only),并对导出的符号进行包装。
- moldova star:169 基于输入目标生成随机数据的工具
- apm star:167 Go 语言进程管理工具具有HTTP API.。
- rerun star:167 当源代码发生更改时,重新编译和重新运行go应用程序。
- go-bsdiff star:161 纯Go bsdiff和bspatch库和CLI工具。
- goval star:159 在Go中计算任意表达式。
- robustly star:159 有弹性的执行函数,遇到错误时捕获并重新运行。
- chyle star:158 使用具有多种配置可能性的git存储库生成变更日志。
- cryptgo star:154 Crytpgo是一个基于TUI的应用程序,纯粹在Go中编写,实时监控和观察加密货币价格!
- cmd star:153 用于在osx、windows和linux上执行shell命令的库。
- filter star:151 提供Go数据的过滤、清理和转换。
- nostromo star:143 CLI用于构建强大的别名。
- onecache star:136 支持多个后端存储(Redis、Memcached、文件系统等)的缓存库。
- sorty star:133 快速并发/并行排序。
- mongo-go-pagination star:130 Mongodb Pagination for official mongodb/mongo-go-driver package which supports both normal queries and Aggregation pipelines.
- lrserver star:127 LiveReload 服务器。
- json-log-viewer star:125 Interactive viewer for JSON logs.
- go-lock star:117 go-lock是一个锁库,它实现了读写互斥锁和读写尝试锁,而不需要等待。
- goseaweedfs star:113 conseilSeaweedFS 客户端,几乎具有全部的特性。
- cookie star:111 Cookie struct parsing and helper package.
- mssqlx star:103 数据库客户端,用于主-从 (或主-主) 数据库,集成了简单的、轻量级的轮询调度负载均衡。
- xferspdy star:101 Xferspdy在golang中提供二进制diff和补丁库。
- mimemagic star:99 纯粹 Go 超性能MIME嗅探库/实用程序。
- go-health star:96 健康包简化了向服务中添加健康检查的方式。
- go-pattern-match star:93 A Pattern matching library inspired by ts-pattern.
- go-lambda-cleanup star:91 A CLI for removing unused or previous versions of AWS Lambdas.
- equalizer star:88 用Go实现的限流工具
- countries star:87 All you need when you are working with countries in Go.
- pgo star:86 用于PHP社区的 Convenient 函数。
- repeat star:85 执行不同的后 backoff 策略,这对重新尝试操作和心跳非常有用。
- handy star:80 许多实用程序和帮助程序,如字符串处理程序/格式化程序和验证器。
- pm star:79 进程(即goroutine)管理器与HTTP API。
- netbug star:72 远程对你的服务进行性能分析
- multitick star:70 用于 aligned tickers 的多路复用
- UNIS star:70 Go 语言字符串处理函数的通用架构 。
- goreadability star:69 网页摘要提取器使用Facebook开放图形和arc90的可读性。
- retry star:66 简单易用的重试机制包,为 Go 。
- backscanner star:64 类似 bufio 的扫描器,但它以相反的顺序读取和返回行,从给定的位置开始,然后返回。
- go-astitodo star:64 解析你 Go 语言代码中的 TODOs(待办事项)。
- scan star:63 Scan sql rows into any type powered by generics.
- dbt star:62 用于从中心可信存储库运行自更新签名二进制文件的框架。
- minquery star:62 MongoDB / mgo.v2, 支持高效分页查询(用于继续列出我们停止的文档的游标)。
- golog star:61 简单、轻量级的命令后工具,用于对你的计划任务进行跟踪。
- shutdown star:59 ' os的应用程序关闭挂钩。信号的处理。
- golarm star:52 告警(支持系统事件)。
- gofn star:51 High performance utility functions written using Generics for Go 1.18+.
- slice star:51 用于普通Go切片操作的类型安全函数。
- copy-pasta star:50 通用多工作站剪切板,使用类似 S3 的后端作为存储。
- retry-go star:50 对 Go 来说,重试变得简单而容易。
- goback star:49 一个 Go 语言的简单的指数补偿包。
- sshman star:49 用于多个远程服务器上的authorized_keys文件的SSH管理器。
- cvt star:48 简单而安全的将任何值转换为另一种类型。
- intrinsic star:47 不需要编写任何汇编代码就能使用 x86 SIMD。
- set star:47 性能和灵活的结构映射和松散的类型转换。
- go-httpheader star:46 用于将结构体编码进 http 头的 Go 语言库
- slicer star:46 使处理切片更容易。
- gostrutils star:45 字符串操作和转换函数的集合。
- ghokin star:44 没有外部依赖的gherkin (cucumber, behat…)并行格式化程序。
- yogo star:43 Check yopmail mails from command line.
- pointer star:42 包指针包含帮助程序,用于简化基本类型可选字段的创建。
- evaluator star:41 Evaluate an expression dynamically based on s-expression. It's simple and easy to extend.
- throttle star:38 Throttle是一个在每个持续时间内只执行一个动作的对象。
- rclient star:35 可读、灵活、易于使用的REST api客户端。
- tome star:35 Tome设计用于对简单的RESTful api进行分页。
- myhttp star:34 简单的API,使HTTP GET请求与超时支持。
- mimesniffer star:33 一个用于Go的MIME类型嗅探器。
- watchhttp star:33 Run command periodically and expose latest STDOUT or its rich delta as HTTP endpoint.
- go-qr star:32 A native, high-quality and minimalistic QR code generator.
- just star:32 Just a collection of useful functions for working with generic data structures.
- generate star:30 针对一个路径或环境变量,递归的执行 Go generate,可以通过正则表达式来进行过滤。
- goplaceholder star:28 一个小巧的 Go 语言库用于生成占位图片。
- ptr star:27 提供函数的包,用于从基本类型的常量简化指针的创建。
- ugo star:27 uGo 是一个切片工具箱,有着和 Go 语言一致的语法法。
- graterm star:26 Provides primitives to perform ordered (sequential/concurrent) GRAceful TERMination (aka shutdown) in Go application.
- ctxutil star:25 上下文工具。
- structs star:24 简单来讲就是 "Make" 的替代品。
- go-convert star:22 包go-convert使您能够将一个值转换为另一种类型。
- jsend star:21 JSend's implementation written in Go.
- go-type star:19 为ISO-4217、ISO-3166和其他类型的存储/验证和传输提供Go类型的库。
- filler star:18 使用“fill”标签填充结构的小工具。
- dlog star:17 编译时控制的日志,让你的 release 包变得更小而不需移除 debug 调用。
- go-problemdetails star:17 打包处理问题细节。
- contextplus star:16 Package contextplus provide more easy to use functions for contexts.
- okrun star:16 Go 运行错误 steamroller。
- rest-go star:16 一个包,它为使用rest api提供了许多有用的方法。
- go-actuator star:15 基于Go的web框架的生产就绪特性。
- silk star:14 阅读silk netflow文件。
- command star:13 命令模式,支持线程安全的串行、并行调度。
- go-clip star:13 Mac的一个极简的剪贴板管理器。
- go-countries star:13 对ISO-3166代码的轻量级查找。
- blank star:12 验证或删除字符串中的空白。
- go-tripper star:12 Tripper is a circuit breaker package for Go that allows you to circuit and control the status of circuits.
- retry star:12 一个相当简单的库,以确保您的工作可以完成。
- bleep star:11 在Go中对任意一组OS信号执行任意数量的操作。
- loncha star:11 A high-performance slice Utilities.
- nfdump star:11 读取nfdump netflow文件。
- statiks star:11 快速,零配置,静态HTTP文件服务器。
- retry star:10 一个简单但高度可配置的Go重试包。
- sliceconv star:10 基本类型之间的片转换。
- goctx star:9 获得高性能的上下文值。
- go-pkg star:7 一个工具包。
- lets-go star:7 Go模块,为云本地REST API开发提供公共工具。还包含AWS特定的实用程序。
- olaf star:5 Twitter Snowflake 在Go中实现。
- tik star:5 简单和容易的时间轮包去。
- go-events star:2 A go event and event'subscribe package, like wordpress hook functions.
UUID
用于处理uuid的库。 (翻译出错了? 试试 英文版 吧~)
- uuid star:5356 基于RFC 4122和DCE 1.1的uuid包:身份验证和安全服务。
- ulid star:4531 实现了ULID(普遍唯一的词典分类标识符)。
- uniq 没有麻烦,安全,快速的唯一标识符与命令。
- xid star:3960 Xid是一个全局唯一id生成器库,可以直接在服务器代码中安全地使用。
- uuid star:1586 通用唯一标识符(UUID)的实现。支持uuid的创建和解析。积极维护satori uuid的fork。
- wuid star:533 An extremely fast globally unique number generator.
- sno star:91 使用嵌入元数据的紧凑、可排序和快速的惟一id。
- nanoid star:61 一个小而有效的Go唯一字符串ID生成器。
- fastuuid Fast generate UUIDv4 as string or bytes.
- goid star:41 生成和解析RFC4122兼容的V4 uuid。
- gouid star:24 生成加密安全的随机字符串id,只有一个分配。
- uuid star:18 使用快速或加密质量的随机节点标识符生成、编码和解码UUIDs v1。
验证
库进行验证。 (翻译出错了? 试试 英文版 吧~)
- govalidator star:6051 用于字符串,数字,切片和结构的验证器和sanitizers。
- govalidator star:1324 用简单的规则验证Golang请求数据。深受Laravel请求验证的启发。
- checkdigit star:110 提供校验数字算法(Luhn, Verhoeff, Damm)和计算器(ISBN, EAN, JAN, UPC等)。
- gody star:85 :一个轻量级的结构验证器。
- govalid star:48 快速、基于标签的结构验证。
- go-validator star:17 Validation library using Generics.
- hvalid hvalid is a lightweight validation library written in Go language. It provides a custom validator interface and a series of common validation functions to help developers quickly implement data validation.
- validator star:16942 Go 结构体及域验证,包括:跨域、跨结构体, Map, 切片和数组。
- ozzo-validation star:3765 支持各种数据类型(结构、字符串、映射、片等)的验证,使用可配置和可扩展的验证规则,这些规则在通常的代码构造中指定,而不是在结构标签中指定。
- validate star:1077 Go 封装数据验证和过滤。支持验证映射、结构、请求(表单、JSON、url)。值,上载文件)数据和更多特性。
- jio star:112 jio是一个json模式验证器,类似于joi。
- validate star:94 这个包提供了一个框架,用于为Go应用程序编写验证。
- Validator star:7 一个用Go编写的轻量级模型验证器。包含VFs:Min、Max、MinLength、MaxLength、Length、Enum、Regex。
- valix Go package for validating requests
- Zog star:192 A Zod inspired schema builder for runtime value parsing and validation. ⬆ back to top
版本控制
用于版本控制的库。 (翻译出错了? 试试 英文版 吧~)
- go-git star:6003 纯Go中高度可扩展的Git实现。
- hercules star:2633 从Git存储库历史中获得高级见解。
- git2go star:1935 libgit2 的 Go 语言接口。
- cli 一个开源的GitLab命令行工具,将GitLab的酷特性带到您的命令行。
- githooks star:102 每回购和共享Git挂钩版本控制和自动更新。
- go-vcs star:79 在Go中操作和检查VCS存储库。
- froggit-go star:45 Froggit-Go是一个Go库,允许在VCS提供商上执行操作。
- hgo star:16 Hgo是一组Go包的集合,提供对本地Mercurial存储库的读取访问。
视频
用于操作视频的库。 (翻译出错了? 试试 英文版 吧~)
- goav star:2104 FFmpeg的全面Go绑定。
- m3u8 star:1234 苹果HLS的M3U8播放列表解析器和生成器库。
- gmf star:889 FFmpeg av* 库的 Go 语言接口。
- gortsplib star:702 纯Go RTSP服务器和客户端库。
- go-astisub star:594 使用 Go 语言操作字幕(.srt, .stl, .ttml, .webvtt, .ssa/.ass, teletext, .smi, etc.)。
- go-astits star:543 在GO中解析和演示MPEG传输流(.ts)。
- mp4ff star:468 Library and tools for working with MP4 files containing video, audio, subtitles, or metadata.
- libvlc-go star:434 Go绑定libvlc 2.X/3.X/4。X(由VLC媒体播放器使用)。
- go-astiav star:399 Better C bindings for ffmpeg in GO.
- v4l star:80 用于Linux的视频捕捉库,用Go编写。
- go-m3u8 star:28 Parser and generator library for Apple m3u8 playlists. Actively maintained version of quangngotan95/go-m3u8 with improvements and latest HLS playlist parsing compatibility.
- go-mpd star:23 MPEG-DASH清单文件的解析器和生成器库。
Web框架
全栈 web 框架。 (翻译出错了? 试试 英文版 吧~)
- Gin star:79083 Gin是一个用Go编写的web框架!它具有一个类似于martini的API,性能更好,速度快40倍。
- Fiber star:34023 一个灵感来自Express.js的web框架构建在Fasthttp上。
- Beego star:31627 beego是一种用于 Go 编程语言的开源高性能web框架。
- Buffalo 为 Go 语言带来堪比 Rails 的高生产效率!
- 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.
- Echo star:29931 高性能、极简的Go web框架。
- Revel star:13154 用于Go语言的高效web框架。
- GoFrame star:11757 GoFrame is a modular, powerful, high-performance and enterprise-class application development framework of Golang.
- Goa star:5702 Goa为在Go中开发远程api和微服务提供了一种全面的方法。
- Hertz star:5374 A high-performance and strong-extensibility Go HTTP framework that helps developers build microservices.
- Gizmo star:3766 《纽约时报》使用的微服务工具包。
- GoFr star:3594 Gofr is an opinionated microservice development framework.
- Macaron star:3515 Macaron 是一个高效的模块化设计的web框架
- go-json-rest star:3514 设置RESTful JSON API的快速简便方法。
- goravel star:2858 A Laravel-inspired web framework with ORM, authentication, queue, task scheduling, and more built-in features.
- utron star:2217 Go(Golang)的轻量级MVC框架。
- Goyave star:1632 功能完备的REST API框架,旨在干净的代码和快速的开发,具有强大的内置功能。
- REST Layer star:1255 框架,用于在数据库之上构建REST/GraphQL API,主要是通过代码进行配置。
- Atreugo star:1240 High performance and extensible micro web framework with zero memory allocations in hot paths.
- tigertonic star:994 用于构建 JSON web 服务的 Go 语言框架,受到 Dropwizard 的启发。
- Fuego star:915 The framework for busy Go developers! Web framework generating OpenAPI 3 spec from source code.
- tango star:831 微型的、支持插件的 web 框架。
- Gearbox star:758 一个用Go编写的web框架,专注于高性能和内存优化。
- Aero star:572 高性能的Go web框架,在Lighthouse中达到最高分。
- iWF star:539 iWF is an all-in-one platform for developing long-running business processes. It offers a convenient abstraction for utilizing databases, ElasticSearch, message queues, durable timers, and more, with a clean, simple, and user-friendly interface.
- rk-boot star:521 一个引导程序库,用于快速方便地使用Gin和gRPC构建企业微服务。
- Flamingo Commerce star:514 提供使用干净的体系结构(如DDD和端口和适配器)的电子商务功能,您可以使用这些功能来构建灵活的电子商务应用程序。
- gongular star:502 快速 Go web 框架,支持输入映射/验证以及依赖注入。
- Yokai star:471 Simple, modular, and observable Go framework for backend applications.
- Flamingo star:467 可插拔web项目的框架。包括模块的概念和提供DI、Configareas、i18n、模板引擎、graphql、可观察性、安全性、事件、路由和反向路由等功能。
- Air star:441 一个理想的精细化的Go web框架。
- neo star:420 Neo是一个非常简单且快速的Web框架API。
- mango star:372 ManGo 是一个模块化 web 应用框架,受到 Rack 和 PEP333 的启发。
- Fastschema star:343 A flexible Go web framework and Headless CMS.
- uAdmin star:343 受到 Sinatra 启发的 Go 语言 web 框架。
- Gondola star:314 web框架写的网站越快越好。
- WebGo star:303 A micro-framework to build web apps with handler chaining, middleware, and context injection. With standard library-compliant HTTP handlers (i.e.,
http.HandlerFunc
).. - Ginrpc star:290 Gin参数自动绑定工具,Gin rpc工具。
- Golf star:269 Golf 是一个快速、简单、轻量级的 Go 语言微型 web 框架。具有强大的功能且没有标准库以外的依赖。
- hiboot star:180 hiboot是一个高性能的web应用程序框架,支持自动配置和依赖注入。
- Huma 内置OpenAPI 3的现代REST/GraphQL api框架,生成文档和CLI。
- appy star:132 一个固执己见的高效web框架,有助于更容易地扩展业务。
- Gone star:130 A lightweight dependency injection and web framework inspired by Spring.
- go-rest star:128 小型的 REST 框架。
- patron star:123 Patron是一个遵循最佳云实践的微服务框架,专注于提升开发效率。
- Pnutmux Pnutmux is a powerful Go web framework that uses regex for matching and handling HTTP requests. It offers features such as CORS handling, structured logging, URL parameters extraction, middlewares, and concurrency limiting.
- Microservice star:114 创建微服务的框架,用Golang编写。
- rux star:98 简单而快速的web框架,可用于构建golang HTTP应用程序
- vox star:84 一个面向人类的golang web框架,深受Koa的启发。
- aah 可伸缩、高性能、快速开发的Go Web框架。
- Golax star:75 一个非Sinatra快速HTTP框架,支持谷歌自定义方法、深度拦截器、递归等。
- YARF star:68 快速微框架,旨在以快速和简单的方式构建REST api和web服务。
- Fireball star:60 感觉更加自然的 web 框架。
- Don star:53 A highly performant and simple to use API framework.
- goa star:49 goa就像golang中的koajs一样,是一个灵活、轻量级、高性能和可扩展的基于中间件的web框架。
- GoTuna star:48 具有mux路由器、中间件、会话、模板、嵌入式视图和静态文件的Go的极简web框架。
- goweb star:36 具有路由、websockets、日志、中间件、静态文件服务器(可选gzip)和自动TLS的Web框架。
- Pulse star:36 Pulse is an HTTP web framework written in Go (Golang)
- Resoursea star:35 用于快速编写基于资源的服务的REST框架。
- rex star:33 Rex 是一个用于进行模块化开发的库,基于Gorilla/mux 完全兼容大多数的 net/HTTP.
- Lit star:25 Highly performant declarative web framework for Golang, aiming for simplicity and quality of life.
- Banjo star:24 非常简单和快速的网络框架 Go 。
- golamb star:7 Golamb makes it easier to write API endpoints for use with AWS Lambda and API Gateway.
- anoweb star:5 轻量级和强大的web框架使用了新的Go方式。另一个走了。
中间件
仿真中间件
- Tollbooth star:2696 限制速率的 HTTP 请求处理程序。
- CORS star:2682 轻松地向API添加CORS功能。
- Limiter star:2105 简单的速度限制中间件。
- go-server-timing star:862 添加/解析Server-Timing头。
- go-fault star:506 Go的故障注入中间件。
- ln-paywall star:151 使用Lightning Network(比特币)实现基于每个请求的api货币化中间件。
- XFF star:98 处理 X-Forwarded-For 头的中间件。
- rk-grpc star:75 中间件为gRPC与日志,指标,认证,跟踪等。
- rk-gin star:46 用于Gin框架的中间件,具有日志记录、度量、认证、跟踪等功能。
- formjson star:39 透明地将JSON输入作为标准表单POST处理。
- client-timing star:24 用于服务器定时报头的HTTP客户机。
- echo-middleware star:15 Middleware for Echo framework with logging and metrics.
- mid star:9 其他HTTP中间件特性:从处理程序返回惯用错误;接收/响应JSON数据;请求跟踪;和更多。
用于创建HTTP中间件的库
- negroni star:7470 符合语言习惯的 HTTP 中间件库。
- alice star:3124 用于连接中间件的库,简单无痛苦。
- render star:1940 Go package用于方便地呈现JSON、XML和HTML模板响应。
- stats star:594 使用中间件来存储关于web应用程序的各种信息。
- interpose star:294 golang的极简网络/http中间件。
- renderer star:263 简单、轻量级和更快的响应(JSON、JSONP、XML、YAML、HTML、文件)。
- muxchain star:207 用于net/http的轻量级中间件。
- gores star:104 处理HTML、JSON、XML等响应的Go包。对于RESTful api非常有用。
- rye star:102 支持JWT、CORS、Statsd和Go 1.7上下文的小型Go中间件库(带有罐装中间件)。
- mediary star:88 在http中添加拦截器。客户端允许转储/成型/跟踪/…的请求/响应。
- chain star:63 带有范围数据的处理程序包装器链接(基于网络/上下文的“中间件”)。
- catena star:9 HTTP.Handler wrapper catenation (和chain具有相同的 API ).。
路由器
- mux star:20906 强大的URL路由器和调度器为golang。
- chi star:18611 小巧、快速、具有丰富表达力的 HTTP 路由,基于net/context.。
- httprouter star:16640 高性能路由。使用这个库和标准http处理工具可以构建一个非常高性能大web框架。
- gocraft/web star:1511 Mux和中间件包在Go中。
- Bone star:1288 闪电快速HTTP多路复用器。
- Goji star:967 枸杞是一种简约的和灵活的与支持'net/context` HTTP请求多路复用器。
- fasthttprouter star:872 高性能路由器分叉从
httprouter
。第一个路由器适合fasthttp
。 - httptreemux star:616 高速,灵活,基于树的 HTTP 路由。受到了 httprouter 的启发。
- xujiajun/gorouter star:533 一个简单和快速的HTTP路由器 Go 。
- ozzo-routing star:455 一个非常快的Go (golang) HTTP路由器,支持正则表达式路由匹配。完全支持构建RESTful api。
- lars star:385 是一个轻量级、快速、可扩展、零分配的HTTP路由,用于创建定制化的框架。
- Siesta star:349 编写中间件和处理程序的可组合框架。
- vestigo star:268 高性能,独立,HTTP兼容的URL路由器的go web应用程序。
- gowww/router star:185 超快的HTTP 路由,完全兼容 net/HTTP.Handler 接口.。
- GoRouter star:154 GoRouter是一个服务器/API微框架,HTTP请求路由器,多路复用器,mux,它为请求路由器提供了支持“net/context”的中间件。
- pure star:149 是一个轻量级HTTP路由器,它坚持net/ HTTP“实现”的std。
- alien star:132 轻量级和快速http路由器从外层空间。
- violetear star:107 HTTP路由器。
- Bxog star:102 简单和快速的HTTP路由器 Go 。它可以处理不同难度、长度和嵌套的路径。他还知道如何根据接收到的参数创建URL。
- xmux star:98 高性能mux基于httprouter 'net/context`支持。
- goblin star:78 一种基于树的golang http路由器。
- ngamux star:67 简单的HTTP路由器为Go。
- bellt star:54 一个简单的Go HTTP路由器。
- FastRouter star:23 一个快速,灵活的HTTP路由器写在Go。
- GoLobby/Router star:22 GoLobby路由器是一款轻量级但功能强大的Go编程语言HTTP路由器。
- nchi star:13 Chi-like路由器构建在httprouter上,带有基于依赖注入的中间件包装器
- goroute star:9 简单但功能强大的HTTP请求多路复用器。
WebAssembly
- tinygo star:15491 去编译小地方。微控制器、网络组装和命令行工具。基于LLVM。
- dom star:490 DOM库。
- go-canvas star:245 库使用HTML5画布,与所有绘画内的go代码。
- wasmbrowsertest star:191 在浏览器中运行Go WASM测试。
- webapi star:176 从WebIDL生成的DOM和HTML的绑定。
- vert star:101 Go和JS值之间的互操作。
- Extism Go SDK star:87 Universal, cross-language WebAssembly framework for building plug-in systems and polyglot apps.
Windows
- go-ole star:1169 为 Go 语言实现的 Win32 OLE。
- d3d9 star:159 Direct3D9 的 Go 语言接口。
- gosddl star:11 从SDDL-string到用户友好的JSON的转换器。SDDL由四个部分组成:所有者、主群、DACL、SACL。
Workflow Frameworks
Libraries for creating Workflows. (翻译出错了? 试试 英文版 吧~)
- Dagu star:1659 No-code workflow executor. it executes DAGs defined in a simple YAML format.
- Cadence-client star:351 A framework for authoring workflows and activities running on top of the Cadence orchestration engine made by Uber.
- go-taskflow star:309 A taskflow-like General-purpose Task-parallel Programming Framework with integrated visualizer and profiler.
- workflow star:119 A tech stack agnostic Event Driven Workflow framework.
- go-dag star:22 A framework developed in Go that manages the execution of workflows described by directed acyclic graphs.
XML
用于操作XML的库和工具。 (翻译出错了? 试试 英文版 吧~)
- zek star:750 从XML生成Go结构。
- xpath star:695 Go的XPath包。
- xquery star:158 XQuery允许您使用XPath表达式从HTML/XML文档中提取数据。
- xml2map star:62 XML来映射转换器编写的Golang。
- xmlwriter star:28 基于libxml2的xmlwriter模块的过程性XML生成API。
- XML-Comp star:21 简单的命令行XML比较器,生成文件夹、文件和标记的差异。
零信任
实现零信任架构的库和工具。 (翻译出错了? 试试 英文版 吧~)
- Cosign star:4524 在OCI注册中心中的容器签名、验证和存储。
- OpenZiti star:2845 A full, open source zero trust overlay network. Including numerous SDKs for numerous languages such as golang allowing you to embed zero trust principles directly into your applications. The OpenZiti Test Kitchen has numerous examples to draw inspiration from including a zero trust ssh client - zssh
- Spire star:1806 SPIRE (SPIFFE Runtime Environment)是一个api工具链,用于跨各种托管平台在软件系统之间建立信任。
- in-toto star:131 实现in-toto(提供一个框架来保护软件供应链的完整性)python参考实现。
- Spiffe-Vault star:85 利用Spiffe JWT认证和Hashicorp Vault实现无秘密认证。
代码分析
源代码分析工具,也称为静态应用程序安全测试(SAST)工具。 (翻译出错了? 试试 英文版 吧~)
- errcheck star:2359 Errcheck是一个用于检查Go程序中未检查错误的程序。
- go-critic star:1857 源代码检查工具。
- gcvis star:1101 实时可视化跟踪 GC 数据。
- go-cleanarch star:878 go-cleanarch 的创建是为了验证 Clean 体系结构规则,比如 Go 项目中的依赖关系。
- goast-viewer star:772 基于 Web 的 Golang AST 可视化工具。
- goimports 来修复(添加,删除) Go 中自动导入的工具。
- go-mod-outdated star:651 找出项目中过期的依赖项。
- Chronos star:429 Detects race conditions statically
- dupl star:346 用于代码克隆检测的工具。
- apicompat star:179 检查 Go 项目最近的向下不兼容修改。
- go-checkstyle star:129 checkstyle是一个类似于java checkstyle的检查工具。
- asty star:81 Converts golang AST to JSON and JSON to AST.
- blanket blanket is a tool that helps you catch functions which don't have direct unit tests in your Go packages.
- ChainJacking star:57 找到你的Go lang直接的GitHub依赖中哪个容易受到链劫持攻击。
- go-outdated star:43 显示过期包的终端应用。
- golang-ifood-sdk star:12 好
- fatcontext star:10 Fatcontext detects nested contexts in loops or function literals.
- golangci-lint – A fast Go linters runner. It runs linters in parallel, uses caching, supports
yaml
config, has integrations with all major IDE and has dozens of linters included. - GoPlantUML star:1863 生成文本plantump类图的库和CLI,其中包含关于结构和接口的信息,以及它们之间的关系。
- php-parser star:941 用 Go 编写的 PHP 解析器。
- golines star:933 格式化程序,它自动缩短Go代码中的长行。
- goreturns star:531 添加 zero 返回声明,以匹配 func 返回类型。
- gostatus star:243 用于显示包含 Go 包的存储库的状态的命令行工具,。
- lint star:67 将 linters 作为测试的一部分。
- revive – ~6x faster, stricter, configurable, extensible, and beautiful drop-in replacement for
golint
. - staticcheck 用于大量静态分析检查,您可能已经从 c# 的 ReSharper 等工具中习惯了这些检查。
- testifylint – A linter that checks usage of github.com/stretchr/testify.
- vacuum star:622 An ultra-super-fast, lightweight OpenAPI linter and quality checking tool.
- todocheck star:427 静态代码分析器连接TODO注释代码有问题在你的问题跟踪器。
- unconvert star:378 在源码中删除不必要的类型转换。
- tickgit star:324 CLI和go包用于显示代码注释TODOs(以任何语言)并应用“git blame”来识别作者。
- wrapcheck star:309 A linter to check that errors from external packages are wrapped.
- validate star:61 使用 tags 自动验证结构体字段。
- usestdlibvars star:43 A linter that detect the possibility to use variables/constants from the Go standard library.
编辑器插件
文本编辑器和ide插件。 (翻译出错了? 试试 英文版 吧~)
- vim-go star:16028 Go 开发会用到的 Vim 插件。
- gocode star:5013 Autocompletion daemon for the Go programming language.
- vscode-go star:3900 Visual Studio代码的扩展(VS代码),它提供了对Go语言的支持。
- GoSublime star:3418 包含了可为文本编辑器 SublimeText 3 提供代码自动填充和其他类似IDE的功能的 Golang IDE 插件集合。
- go-plus star:1509 在 Atom 中添加自动完成,格式化,语法检查,高亮和审查。
- go-mode star:1388 在 GNU/Emacs 支持 GO。
- goimports-reviser star:604 用于导入的格式化工具。
- goprofiling 在 VS Code 中支持 Go 的基准分析。
- coc-go language server extension for Vim/Neovim star:567 这个插件添加gopls功能到Vim/Neovim。
- Watch star:202 Runs a command in an acme win on file changes.
- vim-compiler-go star:89 在保存时突出显示语法错误的 Vim 插件。
- go-language-server star:32 A wrapper to turn the VSCode go extension into a language server supporting the language-server-protocol.
- gounit-vim star:24 基于函数或方法的签名生成Go测试的Vim插件。
- theia-go-extension star:15 在 Theia IDE中支持 Go。
- Go Doc star:8 一个Visual Studio Code扩展,用于在输出中显示定义和生成go doc。
- Go plugin for JetBrains IDEs JetBrains IDEs 的 Go 插件。
Go 生成工具
- gotests star:4965 从源代码生成测试用例。
- genny star:1710 优雅的 Go 泛型。
- xgen star:338 XSD (XML模式定义)解析器和Go/C/Java/Rust/TypeScript代码生成器。
- hasgo star:141 可生成用于切片的 Haskell。
- gonerics star:114 Go中的易用的泛型。
- gocontracts star:111 通过同步代码和文档来实现 design-by-contract 设计。
- sqlgen star:82 Generate gorm, xorm, sqlx, bun, sql code from SQL file or DSN.
- TOML-to-Go 在浏览器中将 TOML 转换为 Go 类型。
- gounit star:80 使用您自己的模板生成Go测试用例。
- options-gen star:78 Functional options described by Dave Cheney's post "Functional options for friendly APIs".
- re2dfa 将正则表达式转换为有限状态机,并输出 Go 源代码。
- envdoc star:61 generate documentation for environment variables from Go source files.
- generic star:48 灵活的 Go 数据类型。
- godal star:18 通过指定可被gorm使用的sql ddl文件,生成golang对应的orm模型。
Go 工具
- go-swagger star:9553 基于 Go 的Swagger 2.0实现。
- go-callvis star:5991 使用 dot format 可视化 Go 程序的调用图。
- OctoLinker star:5284 借助的 OctoLinker 浏览器扩展,可以高效的地浏览 GitHub go文件。
- go-size-analyzer star:1242 Analyze and visualize the size of dependencies in compiled Golang binaries, providing insight into their impact on the final build.
- depth star:934 通过分析导入,将包依赖关系树可视化输出。
- richgo star:851 用文本装饰丰富 go test 的输出。
- rts star:248 从服务器响应生成Go结构。
- MoniGO star:238 A performance monitoring library for Go applications. It provides real-time insights into application performance! 🚀
- godbg star:202 实现了 Rusts 的 dbg! 宏,可以方便的在开发过程中快速、容易地调试。
- gomodrun 执行并缓存Go中包含的二进制文件的Go工具。国防部文件。
- gotemplate.io Online tool to preview
text/template
templates live. - typex star:201 检查Go类型及其传递依赖关系,或者将结果导出为TypeScript值对象(或类型)声明。
- roumon star:188 通过命令行接口监控所有激活goroutines的当前状态。
- gothanks star:126 GoThanks自动帮你开始。mod github依赖,以这种方式发送一些爱给他们的维护者。
- gotestdox star:121 Go测试结果显示为可读的句子。
- colorgo star:113 将 go 命令包装成彩色的 go build 输出。
- igo star:66 一个igo to go transpiler (go语言的新语言功能!)
- docs star:41 自动为GO项目生成RESTful API文档-与开放API规范标准一致。
- decouple star:22 Find “overspecified” function parameters that could be generalized with interface types.
- modver star:19 根据semver规则,比较Go模块的两个版本,以检查所需的版本号更改(主要、次要或patchlevel)。
- textra star:6 Extract Go struct field names, types and tags for filtering and exporting.
软件包
用Go编写的软件。 (翻译出错了? 试试 英文版 吧~)
DevOps 工具
- kubernetes star:111238 来自谷歌的容器集群管理器。
- Moby star:68782 Collaborative project for the container ecosystem to assemble container-based systems.
- traefik star:51474 反向代理和负载均衡器,支持多个后端。
- Gitea star:45230 从 Gogs fork,完全由社区驱动。
- gitea-github-migrator 将所有GitHub repositories、issues、milestones 和 labels 都迁移到 Gitea。
- minikube star:29528 Run Kubernetes locally.
- k3s star:28120 Lightweight Kubernetes.
- k6 star:26089 A modern load testing tool, using Go and JavaScript.
- Vegeta star:23625 HTTP负载测试工具和库。超过9000 !
- Hey star:18208 压力测试工具,可用来代替 ApacheBench (ab)。
- Packer star:15123 用于从一个源配置为多个平台创建相同的机器图像。
- kind star:13513 Kubernetes IN Docker - local clusters for testing Kubernetes.
- kubeshark star:11047 API traffic analyzer for Kubernetes, inspired by Wireshark, purposely built for Kubernetes.
- webhook star:10414 允许用户创建在服务器上执行命令的 HTTP hooks。
- Wide 为使用 Golang 的团队提供基于 web 的 IDE。
- GVM star:10355 GVM 提供了一个接口来管理 Go 版本。
- Flannel star:8825 Flannel is a network fabric for containers, designed for Kubernetes.
- Ddosify star:8438 高性能负载测试工具,用Golang编写。
- ko star:7655 命令行工具,用于在Kubernetes上构建和部署Go应用程序
- KubeVela star:6454 Cloud native application delivery.
- bombardier star:6036 快速跨平台 HTTP 基准测试工具。
- script star:5551 让DevOps编写类shell和系统管理任务变得更加容易。
- k3d star:5464 Little helper to run CNCF's k3s in Docker.
- podinfo star:5426 Podinfo is a tiny web application made with Go that showcases best practices of running microservices in Kubernetes. Podinfo is used by CNCF projects like Flux and Flagger for end-to-end testing and workshops.
- gaia star:5200 可用于任何编程语言来构建强大的管道。
- gox star:4596 非常简单,没有多余的跨平台编译工具。
- Pomerium star:4059 Pomerium是一个可识别身份的访问代理。
- tau star:3553 Easily build Cloud Computing Platforms with features like Serverless WebAssembly Functions, Frontend Hosting, CI/CD, Object Storage, K/V Database, and Pub-Sub Messaging.
- bosun star:3403 按照时间轴发出告警的框架。
- Fleet device management star:3141 Lightweight, programmable telemetry for servers and workstations.
- s5cmd star:2702 非常快的S3和本地文件系统执行工具。
- kubeblocks star:2162 KubeBlocks is an open-source control plane that runs and manages databases, message queues and other data infrastructure on K8s.
- kala star:2137 简单、现代和高性能的作业调度程序。
- fac star:1840 修复 git 合并冲突。
- goxc star:1676 专注于跨平台编译和打包的 Go 构建工具。
- StatusOK star:1625 监视您的网站和REST api。当服务器宕机或响应时间超过预期时,通过Slack、电子邮件获得通知。
- ghorg star:1586 支持GitHub, GitLab, Gitea和Bitbucket。
- go-selfupdate star:1531 允许你的 Go应用程序 进行自我更新。
- tlm star:1234 Local cli copilot, powered by CodeLLaMa
- uTask star:1208 对yaml中声明的业务流程进行建模和执行的自动化引擎。
- s3gof3r star:1144 小型实用程序/库,针对大型对象在Amazon S3中的高速传输进行了优化。
- PipeCD star:1091 A GitOps-style continuous delivery platform that provides consistent deployment and operations experience for any applications.
- kwatch star:964 立即监视和检测Kubernetes(k8)集群中的崩溃。
- skm star:954 SKM是一个简单而强大的SSH密钥管理器,它可以帮助您轻松地管理多个SSH密钥!
- KusionStack star:897 A unified programmable configuration techstack to deliver modern app in 'platform as code' and 'infra as code' approach.
- Scaleway-cli star:888 从命令行管理 BareMetal 服务器(与使用Docker一样容易)。
- cassowary star:773 用Go编写的跨平台HTTP负载测试工具。
- kool star:667 命令行工具管理Docker环境作为一种简单的方式。
- alaz star:655 Effortless, Low-Overhead, eBPF-based Kubernetes Monitoring.
- aurora star:601 基于web的跨平台 Beanstalkd 队列服务器控制台。
- KubeVPN star:560 KubeVPN offers a Cloud-Native Dev Environment that seamlessly connects to your Kubernetes cluster network.
- govvv star:539 可轻松地添加版本信息到 Go 二进制文件。
- Pewpew star:422 灵活的 HTTP 命令行压测工具。
- jcli star:390 詹金斯CLI允许你管理你的詹金斯作为一个简单的方法。
- gobrew star:379 Go version manager. Super simple tool to install and manage Go versions. Install go without root. Gobrew doesn't require shell rehash.
- gonative star:340 用原生 Go 创建一个跨平台的 Go 工具链。
- trubka star:334 一个CLI工具,用于管理和故障排除Apache Kafka集群,具有通用发布/使用协议缓冲区和与Kafka之间的纯文本事件的能力。
- lstags star:329 提供了工具和API,可用来同步不同注册中心的Docker图像。
- easyssh-proxy star:323 Golang package for easy remote execution through SSH and SCP downloading via
ProxyCommand
. - Mora star:315 用于访问 MongoDB 文档和元数据的 REST 服务器。
- s3-proxy star:309 具有GET、PUT和DELETE方法和身份验证(OpenID连接和基本身份验证)的S3代理。
- Balerter star:301 一个自托管的基于脚本的警报管理器。
- manssh star:298 manssh是一个命令行工具,可以方便地管理ssh别名配置。
- terraform-provider-openapi star:275 Terraform provider plugin,它根据OpenAPI文档(以前称为swagger文件)在运行时动态配置自身,该文档包含了公开的api的定义。
- dogo star:268 监视源文件中的更改并自动编译和运行(restart)。
- godbg star:228 基于 web 的 gdb 前端应用程序。
- Gogs 自托管的Git服务。
- abbreviate star:220 abbreviate is a tool turning long strings in to shorter ones with configurable separators, for example to embed branch names in to deployment stack IDs.
- Blast star:218 一个用于API负载测试和批处理作业的简单工具。
- kcli star:216 用于检查kafka主题/分区/消息的命令行工具。
- gobrew star:192 gobrew 允许您轻松地在 go 的多个版本之间切换。
- ostent star:179 收集和显示系统指标,并可选 Graphite and/or fluxdb作为依赖。
- Dockerfile-Generator star:171 一个go库和一个可执行文件,它使用各种输入通道生成有效的Dockerfiles。
- grapes star:168 旨在轻松地通过ssh分发命令的轻量级工具。
- winrm-cli star:163 在Windows机器上远程执行命令的Cli工具。
- tf-profile star:156 Profiler for Terraform runs. Generate global stats, resource-level stats or visualizations.
- drone-scp star:145 通过 SSH 进行文件拷贝。其中 SSH 通过二进制文件、docker 或 Drone CI触发。
- Mantil star:109 使用特定的框架在AWS上构建无服务器应用程序,使您能够专注于纯Go代码,而Mantil负责基础设施。
- go-rocket-update star:103 A simple way to make self updating Go applications - Supports Github and Gitlab.
- go-furnace star:98 用Go编写的托管解决方案,可轻松地在AWS、GCP或DigitalOcean上部署应用程序。
- decompose star:86 tool to generate and process Docker containers connections graphs.
- Dropship star:64 通过 cdn 部署代码的工具。
- docker-go-mingw star:46 使用MinGW工具链在Windows上构建Go二进制文件的Docker图像。
- drone-jenkins star:39 使用二进制文件、docker或 Drone CI 来触发下游Jenkins作业。
- httpref star:38 httpref是一个方便的CLI参考,用于HTTP方法、状态码、头以及TCP和UDP端口。
- awsenv star:35 可以为 profile 加载Amazon (AWS)环境变量的轻量二进制文件。
- Rodent star:33 管理Go版本、项目和跟踪依赖项。
- lwc star:32 UNIX wc命令的实时更新版本。
- DepCharge star:23 Helps orchestrating the execution of commands across the many dependencies in larger projects.
- Docker 面向开发人员和系统管理员的分布式应用程序的开放平台。
- wait-for star:17 Wait for something to happen (from the command line) before continuing. Easy orchestration of Docker services and other things.
- aptly star:13 Debian存储库管理工具。
- sg star:8 可测试一组HTTP极限(如ab),可以在每个调用之间使用响应代码和数据,根据之前的响应来确定特定的服务器压力。
其他软件
- croc star:28184 轻松、安全地将文件或文件夹从一台计算机发送到另一台计算机。
- restic star:26664 消除重复项备份程序。
- Seaweed File System star:22980 快速、简单、可伸缩的分布式文件系统,采用了O(1)磁盘查找。
- Gor star:18662 Http 流量复制工具,用于实时回放从生产环境到阶段/开发环境的流量。
- JuiceFS star:10940 Distributed POSIX file system built on top of Redis and AWS S3.
- Juju Cloud-agnostic的服务部署和编制 —— 支持EC2、Azure、Openstack、MAAS等。
- toxiproxy star:10840 为自动化测试模拟网络和系统条件的代理。
- tsuru Extensible and open source Platform as a Service software.
- Comcast star:10315 模拟坏的网络连接。
- confd star:8354 使用 etcd 或 consul 的模板和数据管理本地应用程序配置文件。
- LiteIDE star:7599 简单的、开源的、跨平台的Go IDE。
- scc star:6787 一个非常快速准确的代码计数器,采用了复杂的计算和 COCOMO 预估。
- drive star:6686 基于命令行的谷歌驱动器客户端。
- nes star:5452 任天堂娱乐系统(NES)模拟器。
- Duplicacy star:5255 跨平台网络和云备份工具。
- blocky star:4812 快速和轻量级的DNS代理作为广告拦截器,为本地网络具有许多功能。
- myLG star:2696 命令行网络诊断工具。
- GoBoy star:2610 用 Go 编写的任天堂Game Boy彩色模拟器。
- Stack Up star:2487 Stack Up 是一个超级简单的部署工具 — 只面向Unix。
- lgo star:2440 与 Jupyter 可进行交互 Go 程序。它支持代码完成、代码检查以及与Go 100% 兼容性。
- limetext 一个强大而优雅的文本编辑器。
- Documize star:2167 集成了SaaS工具数据的现代wiki软件。
- sonic star:2019 Sonic is a Go Blogging Platform. Simple and Powerful.
- Circuit star:1984 Circuit 是一个可编程平台即服务(PaaS)和/或基础设施即服务(IaaS),用于管理、发现、同步和编排包含云应用程序的服务和主机。
- Gokapi star:1712 Lightweight server to share files, which expire after a set amount of downloads or days. Similar to Firefox Send, but without public upload.
- GoLand 功能齐全的跨平台 Go IDE。
- borg star:1602 基于终端的bash代码段搜索引擎。
- portal star:1499 Portal is a quick and easy command-line file transfer utility from any computer to another.
- Plik star:1487 Plik是Go中的临时文件上传系统(类似于Wetransfer)。
- shell2http star:1354 通过http服务器执行shell命令(用于原型或远程控制)。
- vFlow star:1104 高性能、可伸缩和可靠的 IPFIX、sFlow和 Netflow 收集器。
- Wave Terminal Wave is an open-source, AI-native terminal built for seamless developer workflows with inline rendering, a modern UI, and persistent sessions.
- peg star:1021 解析表达式语法,是Packrat解析器生成器的实现。
- Go Package Store star:899 App that displays updates for the Go packages in your GOPATH.
- Leaps star:753 使用操作转换的成对编程服务。
- gfile star:743 通过WebRTC在两台计算机之间安全地传输文件,不需要任何第三方依赖。
- yai star:680 AI powered terminal assistant.
- zs an extremely minimal static site generator.
- GoNB star:677 Interactive Go programming with Jupyter Notebooks (also works in VSCode, Binder and Google's Colab).
- Guora star:670 一个用Go编写的类似Quora的自托管web应用程序。
- sake star:657 sake is a command runner for local and remote hosts.
- Gebug star:634 一个工具,通过启用调试器和热重新加载特性,使docker化的Go应用程序的调试非常容易,无缝。
- gocc star:616 Gocc是一个用Go编写的编译器工具包。
- mockingjay star:562 一份配置文件中便可伪造HTTP服务器与用户之间的行为。您还可以使服务器随机宕机,以帮助进行更实际的性能测试。
- go-peerflix star:472 视频流 torrent 客户端。
- goblin 戈朗双星在一个卷曲,由地精建造。
- woke star:457 检测源代码中不包含的语言。
- ipe star:367 Open source Pusher server implementation compatible with Pusher client libraries written in GO.
- ide star:359 基于浏览器的IDE
- hotswap star:357 A complete solution to reload your go code without restarting your server, interrupting or blocking any ongoing procedure.
- hugo 快速、现代的静态网站引擎。
- tcpprobe star:354 用于网络性能和路径监控的TCP工具,包括套接字统计信息。
- Neo-cowsay star:317 🐮cowsay重生。一个新时代。
- wellington star:303 Sass 项目管理工具,使用sprite函数(如Compass)扩展语言。
- Cherry star:301 微型网络聊天服务器。
- crawley star:265 网刮板/爬虫为cli。
- tcpdog star:255 基于eBPF的TCP可观测性。
- joincap star:211 用于合并多个pcap文件的命令行实用程序。
- stew star:193 一个独立的编译二进制文件的包管理器。
- syncthing 开放,分散的文件同步工具和协议。
- Orbit star:183 一个根据模板来运行命令和生成文件的简单小工具。
- Better Go Playground 使用语法高亮显示、代码完成和其他功能。
- vaku star:152 用于库中基于文件夹的函数(如复制、移动和搜索)的CLI和API。
- fjira star:145 A fuzzy-search based terminal UI application for Attlasian Jira
- dp star:81 通过SDK与区块链进行数据交换,开发人员可以轻松访问DAPP开发。
- boxed star:79 基于Dropbox的博客引擎。
- term-quiz star:26 测试你的终端。
- naclpipe star:23 基于加密管的简单的NaCL EC25519工具。
- Snitch star:17 当有人通过 Tsuru 部署任何应用程序时,会通知您的团队以及其他工具。
- GoDocTooltip star:13 包含了 Go 使用手册文档的 Chrome 扩展。
- hoofli star:8 从Chrome或Firefox网络检查生成PlantUML图表。
- protoncheck star:6 ProtonMail模块的waybar/polybar/yabar/i3blocks。
资源
在哪里可以找到新的Go库。 (翻译出错了? 试试 英文版 吧~)
基准
- go-web-framework-benchmark star:2077 web框架基准测试。
- go-http-routing-benchmark star:1651 HTTP请求路由器基准测试和比较。
- go_serialization_benchmarks star:1571 Go序列化方法的基准测试。
- skynet star:1046 天网 1M 线程微基准测试。
- speedtest-resize star:239 对比各种图像大小调整算法性能。
- go-benchmarks star:147 Few miscellaneous Go microbenchmarks. Compare some language features to alternative approaches
- golang-benchmarks star:132 a collection of golang benchmarks.
- gospeed star:121 计算语言结构的速度的微观基准测试。
- autobench star:99 用来来比较不同Go版本之间的性能的框架。
- golang-sql-benchmark star:65 为流行的 Go 数据库/SQL实用程序收集基准测试。
- gocostmodel star:61 Go语言常用基本操作的基准测试。
- go-ml-benchmarks star:30 机器学习推理基准。
- go-benchmark-app star:27 强大的HTTP基准测试工具,包含了Аb,Wrk,Siege工具。收集统计和各种参数指标,并比较相关结果。
- kvbench star:26 K / V 类型数据库基准测试。
- go-json-benchmark star:9 JSON的基准。
会议
- GoCon 东京,日本。
- GoDays 德国柏林。
- GoLab 佛罗伦萨,意大利。
- GopherChina 上海,中国。
- GopherCon 美国丹佛。
- GopherCon Australia 澳大利亚悉尼。
- GopherCon Brazil 弗洛,巴西。
- GopherCon Europe 德国柏林。
- GopherCon India 印度浦那。
- GopherCon Israel 特拉维夫,以色列。
- GopherCon Russia 莫斯科,俄罗斯。
- GopherCon Singapore 新加坡枫树商贸城。
- GopherCon UK 伦敦,英国。
- GopherCon Vietnam 越南胡志明市。
- GoWest Conference 利希、美国。
E-Books
电子书购买
- 100 Go Mistakes: How to Avoid Them
- Black Hat Go Go programming for hackers and pentesters.
- Build an Orchestrator in Go
- Continuous Delivery in Go 这篇关于持续交付的实用指南向您展示了如何快速建立一个自动化管道,以改进您的测试、代码质量和最终产品。
- Creative DIY Microcontroller Project With TinyGo and WebAssembly An introduction into the TinyGo compiler with projects involving Arduino and WebAssembly.
- Effective Go: Elegant, efficient, and testable code Unlock Go’s unique perspective on program design, and start writing simple, maintainable, and testable Go code.
- For the Love of Go 为golang初学者准备的入门书。
- Go in Practice, Second Edition - Your practical guide on the ins-and-outs of Go development, covering the standard library and the most important tools from Go’s powerful ecosystem.
- Know Go: Generics 在Go中理解和使用泛型的指南。
- Lets-Go A step-by-step guide to creating fast, secure and maintanable web applications with Go.
- Lets-Go-Further Advanced patterns for building APIs and web applications in Go.
- The Power of Go: Tests A guide to testing in Go.
- The Power of Go: Tools 在Go中编写命令行工具的指南。
- Writing A Compiler In Go
- Writing An Interpreter In Go 这本书介绍了编写习惯的,表达的,高效的Go代码的技巧,避免了常见的陷阱。
免费电子书
- A Go Developer's Notebook
- An Introduction to Programming in Go
- Build a blockchain from scratch in Go with gRPC star:255 The foundational and practical guide for effectively learning and progressively building a blockchain from scratch in Go with gRPC.
- Build Web Application with Golang
- Building Web Apps With Go
- GoBooks star:17140 一份精选的 Go 书籍清单。
- How To Code in Go eBook 600页的Go介绍针对的是第一次开发人员。
- Go AST Book (Chinese) star:5385 A book focusing on Go
go/*
packages. - Go Faster This book seeks to shorten your learning curve and help you become a proficient Go programmer, faster.
- Go 101 一本关注 Go 语法/语义和各种细节的书。
- Go Succinctly star:22 in Persian.
- Go with the domain A book showing how to apply DDD, Clean Architecture, and CQRS by practical refactoring.
- Learning Go
- Network Programming With Go
- Practical Go Lessons
- Spaceship Go A Journey to the Standard Library
- The Go Programming Language
- The Golang Standard Library by Example (Chinese)
- Web Application with Go the Anti-Textbook
Gophers
- Free Gophers Pack star:3491 由 Maria Letta 提供的与 Gopher 有关的图片包,其中包含了插图,表情文字。
- gopher-logos star:125 可爱的 gopher 标识。
- Go-gopher-Vector star:69 与 Go gopher 相关的媒介数据[。ai . svg)。
- gopher-stickers
- gophericons
- gophers star:3508 Free gophers.
- gophers star:2966 阿什莉·麦克纳马拉的歌斐艺术品。
- gopherize.me star:712 Gopherize自己。
- gophers star:146 Gopher amigurumi玩具图案。
- gophers star:58 随机gopher图形。
- gophers star:34 Gophers by Aurélie Vache.
聚会
- Basel Go Meetup
- Belfast Gophers
- Belgrade Golang Meetup
- Berlin Golang
- Brisbane Gophers
- Bärner Go Meetup - Berne, Switzerland
- Go Language NYC
- Go London User Group
- Go Remote Meetup
- Go Toronto
- Go User Group Atlanta
- GoBandung
- GoBridge, San Francisco, CA
- GoCracow - Krakow, Poland
- GoJakarta
- Golang Amsterdam
- Golang Argentina
- Golang Athens
- Golang Baltimore, MD
- Golang Bangalore
- Golang Belo Horizonte - Brazil
- Golang Boston
- Golang Bulgaria
- Golang Cardiff, UK
- Golang Copenhagen
- Golang Curitiba - Brazil
- Golang DC, Arlington, VA
- Golang Dorset, UK
- Golang Estonia
- Golang Gurgaon, India
- Golang Hamburg - Germany
- Golang Israel
- Golang Kathmandu
- Golang Lima - Peru
- Golang Lyon
- Golang Marseille
- Golang Melbourne
- Golang North East
- Golang Paris
- Golang Poland
- Golang Pune
- Golang Rotterdam
- Golang Singapore
- Golang Stockholm
- Golang Sydney, AU
- Golang São Paulo - Brazil
- Golang Taipei
- Golang Thessaloniki
- Golang Turkey
- Golang Vancouver, BC
- Golang Vienna, Austria
- Golang Москва
- GoSF - San Francisco, CA
- Istanbul Golang
- Lagos Gophers
- Nairobi Gophers
- Seattle Go Programmers
- Ukrainian Golang User Groups
- Utah Go User Group
- Women Who Go - San Francisco, CA
- Zürich Gophers - Zurich, Switzerland
在这里添加您所在城市/国家的群组(发送PR) (翻译出错了? 试试 英文版 吧~)
风格指南
社交媒体
网站
- Awesome Remote Job star:34829 Curated list of awesome remote jobs. A lot of them are looking for Go hackers.
- awesome-awesomeness star:32100 其他 awesome 系列的列表。
- Awesome Golang Workshops star:511 一个令人敬畏的戈朗工作室的策划列表。
- golang-graphics star:142 收藏的 Go 图像,图形和艺术作品。
- golang-nuts Go 邮件列表。
- Google Plus Community Google+社区 golang爱好者聚集地。
- Gopher Community Chat 加入我们为Gophers设立的全新Slack社区(了解它是如何产生的)。
- Gophercises 为 Go 初学者提供免费的代码训练。
- json2go 高级JSON去结构转换-在线工具。
- justforfunc Youtube channel dedicated to Go programming language tips and tricks, hosted by Francesc Campoy @francesc.
- Learn Go Programming 学习Go概念与插图。
- gocryforhelp star:41 专门收集需要帮助的Go项目,这是你开启开源之路的好去处。
- Golang Developer Jobs Developer Jobs exclusively for Golang related Roles.
- Golang News 关于 Go 编程的链接和新闻。
- Golang Nugget A weekly roundup of the best Go content, delivered to your inbox every Monday.
- Golang Resources 一个最佳示范,包含文章,练习,讨论和视频学习。
- Golang Weekly Each monday projects, tutorials and articles about Go.
- Awesome Go @LibHunt 属于你的 Go 工具箱。
- awesome-go-extra star:23 解析awesome-go README文件并生成一个新的README文件与repo信息。
- Code with Mukesh Software Engineer and Blogs @ codewithmukesh.com.
- Coding Mystery 使用golang解决令人兴奋的逃脱室启发的编程挑战。
- CodinGame 以小游戏互动完成任务的形式来学习 Go。
- Go Blog 官方 Go 博客。
- Go Code Club 一群地鼠每周阅读和讨论一个不同的Go项目。
- Go Community on Hashnode Hashnode上的Go社区。
- Go Forum 讨论 Go 的论坛。
- Go Projects wiki上的 Go 社区项目列表。
- Go Proverbs 罗伯·派克的箴言。
- Go Report Card 为你的 Go 包生成一份报告单。
- go.dev 一个 go 开发者的中心。
- Made with Golang
- pkg.go.dev 开源 Go 包的文档。
- r/Golang 与 Go 有关的新闻。
- studygolang Go语言中文网
- Trending Go repositories on GitHub today 寻找最新的 Go库 的好地方。
- TutorialEdge - Golang
教程
- Build web application with Golang star:43328 Golang电子书,主要讲述如何用 Golang 建立一个web应用程序。
- Building and Testing a REST API in Go with Gorilla Mux and PostgreSQL 我们会写一个API的帮助下强大的大猩猩Mux。
- 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.
- Caching Slow Database Queries 如何缓存数据库的慢查询。
- Canceling MySQL 如何取消MySQL查询。
- 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 Cheat Sheet star:8424 Go's reference card。
- Go database/sql tutorial 数据库概论/ sql。
- Ethereum Development with Go star:1742 一本讲述如何用 Go 进行以太开发的小册。
- Games With Go 关于编程和游戏开发系列教学视频。
- Go By Example 手把手教你 如何在 Go 应用程序中使用注释。
- Go in 7 days star:143 Learn everything about Go in 7 days (from a Nodejs developer).
- Go Language Tutorial 学习Go语言教程。
- Go Tutorial 学习编程。
- 50 Shades of Go Go 初学者经常遇到的陷阱、误区、错误
- A Comprehensive Guide to Structured Logging in Go Delve deep into the world of structured logging in Go with a specific focus on recently accepted slog proposal which aims to bring high performance structured logging with levels to the standard library.
- A Guide to Golang E-Commerce 教你如何用 Go 搭建一个电商平台 (包括demo)。
- A Tour of Go 互动的 Go 之旅。
- Build a Database in 1000 lines of code Build a NoSQL Database From Zero in 1000 Lines of Code.
- Design Patterns in Go star:119 在Go中实现的编程设计模式的集合。
- Go WebAssembly Tutorial - Building a Simple Calculator
- go-patterns star:25519 策划的清单去设计模式,食谱和习惯用法。
- Learn Go with TDD star:22226 学习使用测试驱动开发。
- Learning Go by examples Series of articles in order to learn Golang language by concrete applications as example.
- Microservices with Go Dive deep into building microservices using Go, including gRPC.
- package main 关于 Go 编程的YouTube频道。
- Programming with Google Go Coursera的专业学习可以从零开始。
- Scaling Go Applications Everything about building, deploying and scaling Go applications in production.
- Learn Go with 1000+ Exercises star:18912 通过成千上万的例子、练习和测验来学习Go。
- go-clean-template star:6339 Golang服务的Clean Architecture模板。
- Golang for Node.js Developers star:4625 引入示例讲述 Golang 与Node.js在学习上的差异。
- Golang Tutorial Guide 学习Go编程语言的免费课程列表。
- golang-examples star:1581 Many examples to learn Golang.
- Golangbot Go 编程教程。
- GopherCoding 收集代码片段和教程,以帮助处理日常问题。
- GopherSnippets 带有测试和可测试示例的代码片段,用于Go编程语言。
- Gosamples 让您解决日常代码问题的代码片段集合。
- GraphQL with Go Learn how to create a Go GraphQL server and client with code generation. Also includes creating REST endpoints.
- Hackr.io Go社区投票选举出来的最好的在线 Go 教程。
- goapp star:913 关于构建和开发Go web应用/服务的指南。
- Hex Monscape star:69 Getting started guidelines in writing maintainable code using Hexagonal Architecture.
- How to Benchmark: dbq vs sqlx vs GORM 学习如何在Golang中进行基准测试。作为案例研究,我们将对dbq、sqlx和GORM进行基准测试。
- How To Deploy a Go Web Application with Docker 学习如何使用Docker进行Go开发,以及如何构建Docker生产镜像。
- How to Use Godog for Behavior-driven Development in Go 快速使用Godog —— 一个行为驱动开发的构建和测试应用程序框架。
- The world’s easiest introduction to WebAssembly with Golang
- Understanding Go in a visual way Learn Go visually
- W3basic Go Tutorials W3Basic provides an in-depth tutorial and well-organized content to learn Golang programming.
- Working with Go star:1152 由一个经验丰富的Go程序员群体编写的一系列Go学习范例。
- Your basic Go 如何收集大量的教程。
Guided Learning
- The Go Developer Roadmap A visual roadmap that new Go developers can follow through to help them learn Go.
- The Go Learning Path A guided learning path containing a mix of free and premium resources.
- The Go Skill Tree A structured learning path that combines both free and premium resources.