go语言开发的程序有:1、GraphJin,用于Postgres的即时GraphQL API;2、go-fits,FITS格式图像和数据读取器;3、goenv,可提供Go版本和Go工作区管理工具;4、go-server,敏捷服务器框架;5、gows,Go工作区管理器;6、GVM,提供了一个管理Go版本的接口;7、oh,使用Go编写的Unix shell;8、automi等等。
本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。
go语言开发的程序(项目)有哪些?下面本篇文章给大家分享一些Go语言的开源项目,下面一起看看:
API 服务和工具
图形语言
- GraphJin - 用于 Postgres 的即时 GraphQL API。无需代码,将 GraphQL 编译为 SQL。
MTProto
- MTProto - 在纯 Go 上编写的 Telegram API 的完整本机实现。
天文学
- go-fits - FITS(灵活图像传输系统)格式图像和数据读取器
- astrogo/fitsio - Pure Go FITS(灵活图像传输系统)格式图像和数据读取器/写入器
- cosmo - 常见宇宙学的宇宙距离和时间计算(Friedmann-Lemaître-Robertson-Walker 度量)。
- gonova - libnova的包装器 -- 天体力学、天体测量学和天体动力学库
- meeus - Jean Meeus 的“天文算法”的实现
- novas - 与海军天文台矢量天文测量软件 (NOVAS) 的接口
- utdfgo - 航天器 UTDF 数据包读取器和解码器
构建工具
- beku - 在用户环境(GOPATH 或供应商目录)中管理包的库和程序
- colorgo -着色go 构建输出
- dogo - 监控源文件的变化并自动编译和运行(重启)
- fileembed-go - 这是一个命令行实用程序,用于获取大量源文件,并将它们嵌入到 Go 包中
- gb - Go 的(另一个)构建工具,重点是多包项目
- gg - 一个小型的多 golang 项目 env/make 管理工具。
- GG - Go in Go 的构建工具
- Godag - Go 编译器集合的前端
- goenv - goenv 提供 Go 版本和 Go 工作区管理工具
- gopei - 适用于 Unix / Linux 的简单 Go 编译器和 LiteIDE 安装程序,它添加了许多功能,如 github 支持和演示器。
- go-pkg-config - pkg-config 的轻量级克隆
- goscons - Go 的另一组 SCons 构建器
- go-server - 敏捷服务器框架。
- gotgo - 实现“泛型”的实验性预处理器
- gows - Go 工作区管理器
- goxc - 一个专注于交叉编译、打包、版本控制和分发的构建工具
- GVM - GVM 提供了一个管理 Go 版本的接口
- Realize - 具有文件观察器、输出流和实时重新加载的 Go 构建系统。使用自定义路径运行、构建和观察文件更改。
- SCons Go Tools - 一组构建器,可以轻松地在 SCons 中编译 Go 项目
- Task - 一个任务运行器 / Make 的简单替代方案
缓存
- cache2go - 具有过期功能和访问计数器的并发安全缓存库
- cache - Go 的 LevelDB 风格 LRU 缓存,支持非 GC 对象缓存。
- go-cache - Go 的内存键:值存储/缓存(类似于 Memcached)库,适用于单机应用程序
- golibs/cache - 一个很小的缓存包
- gomemcached - go 中的 memcached 服务器
- gomemcache - 一个 memcached 客户端
- go-slab - go 的Slab 分配器。
- groupcache - 缓存和缓存填充库,旨在在许多情况下替代 memcached
- libmemcache - 使用 memcache 协议的快速客户端和服务器库
- memcached-bench - 内存缓存服务器的基准工具
- memcached - 快速的 memcache 服务器,支持超过可用 RAM 的持久性和缓存大小
- memcache - 转到 memcached 客户端,从 YouTube Vitess 分叉
- rend - 管理数据分块和 L1/L2 缓存的 memcached 代理
- YBC 绑定- YBC 库的绑定为快速进程内 blob 缓存提供 API
- g2cache - 协调的本地和外部两级缓存方案
云计算
- aws-sdk-go - 适用于 Go 编程语言的 AWS 开发工具包。
- Docker - Linux 容器运行时。由 dotCloud 开发。
- 适用于 Go 的Enduro/X ASG应用服务器。为分布式事务处理提供应用服务器和中间件设施。支持基于微服务的应用架构。由 ATR Baltic 开发。
- Flamingo - 轻量级云实例上下文化器。
- gocircuit - 一种分布式操作系统,位于数据中心部署中多台机器上的传统操作系统之上。它提供了一个干净统一的抽象,将整个硬件集群视为一个单一的、单一的计算资源。由 Tumblr 开发。
- gosync - 用于将数据同步到 S3 和从 S3 同步数据的包。
- juju - 由 Canonical 开发的编排工具(部署、配置和生命周期管理)。
- Kubernetes - 来自 Google 的容器集群管理器。
- 基于 liblxc 的LXD守护进程提供 REST API 来管理容器
- mgmt - 由@purpleidea(红帽员工)和 mgmt 社区开发的下一代配置管理工具(并行、事件驱动、分布式系统)。
- rclone - “用于云存储的 rsync” - Google Drive、Amazon Drive、S3、Dropbox、Backblaze B2、One Drive、Swift、Hubic、Cloudfiles、Google Cloud Storage、Yandex Files
- ShipBuilder - ShipBuilder 是一个极简的开源平台即服务,由 Jay Taylor 开发。
- swift - Swift / Openstack Object Storage / Rackspace 云文件的 Go 语言接口
- Tsuru - Tsuru 是由 Globo.com 开发的开源多语言云计算平台即服务 (PaaS)。
命令行选项解析器
mellium.im/cli
命令行工具
lsgo generategrep
压缩
dictzip
并发和 Goroutines
- grpool - 轻量级 Goroutine 池。
- pool - Go 消费者 goroutine 池,可轻松处理 goroutine + 节省时间。
- tunny - 一个 goroutine 池。
- worker - 一个简单轻量级的并发作业框架。
配置文件解析器
code.soquee.net/env.envio.Reader
- uConfig - 一种无偏见、可扩展和可插入的配置管理。支持 YAML、TOML、JSON、Env vars、K8s DAPI 等。
- viper - 一个完整的配置解决方案,支持 YAML、TOML 和 JSON 以及与命令行标志的集成
- 亚姆:
- yaml - 由 Canonical 提供的对 Go 语言的 YAML 支持
- goyaml - LibYAML to Go 的一个端口
- go-yaml - 对 Go 语言的 YAML 支持
控制台用户界面
- ansi - 轻松创建 ansi 转义代码字符串和闭包以格式化、着色控制台输出
- ansiterm - pkg 驱动响应 ANSI 转义序列的纯文本控制台
- cons - 用于构建交互式控制台工具的简单包。
- gnureadline - GNU Readline 绑定
- go-ansiout - 另一个用于命令行应用程序的 ANSI 转义码序列工具。
- gockel - 文本终端的 Twitter 客户端
- gocui - 旨在创建控制台用户界面的极简库
- gocurse - NCurses 的绑定
- gocurses - NCurses 包装器
- go-ibgetkey - “热键”类型的用户输入包,用于处理命令行应用程序中的击键。
- go.linenoise - Linenoise 绑定(简单易读的提示,可选历史记录,可选选项卡完成)
- goncurses - 一个 ncurses 库,包括表单、菜单和面板扩展
- gopass - 允许输入密码而不回显到屏幕
- go-pullbarz - 类似于 DOS 时代 Lotus 123 中的花式“灯条”菜单。依赖于 go-ibgetkey 和 go-ansiout。
- go.sgr - 终端/控制台颜色和文本装饰(粗体、下划线等)。
- go-stfl - STFL的薄包装,基于 ncurses 的小部件工具包
- goterminal - 一个 go 库,可让您在终端上编写然后重新编写文本,以更新进度。它也适用于 Windows!
- go-web-shell - 远程 web shell,实现 net/http 服务器。
- igo - 一个简单的交互式 Go 解释器,基于 exp / eval 构建,具有一些 readline 改进
- oh - 用 Go 编写的 Unix shell
- pty - 获取伪终端设备
- readline - GNU-Readline 类库的纯 go 实现
- tcell - Tcell 是一个备用终端包,在某些方面类似于 termbox,但在其他方面更好。
- termbox-go - ncurses 的极简替代品,用于构建基于终端的用户界面
- termios - 终端支持
- termon - Go 的简单终端控制界面。
- uilive - uilive 是一个实时更新终端输出的 Go 库。
- uiprogress - 在终端应用程序中呈现进度条的库。
- uitable - 使用表格数据提高终端应用程序可读性的库。
- yandex-weather-cli - Yandex 天气服务的命令行界面
持续集成
- goveralls - 集成Coveralls.io连续代码覆盖率跟踪系统。
- 工作服- 用于工作服等工具的多包 go 项目coverprofile
加密货币
- Skycoin - Skycoin 是一种用 Go 编写的下一代加密货币。Skycoin 并非旨在为比特币添加功能,而是通过提高简单性、安全性和去除所有不必要的东西来改进比特币。
密码学
io.ReadWriteCloser
数据处理
- automi - 在 Go 频道上编写流程和集成流
- Gleam - 快速、高效且可扩展的分布式 map/reduce 系统,DAG 执行,在内存或磁盘上,独立或分布式运行。
- Glow - Glow 是一个易于使用的分布式计算系统,类似于 Hadoop Map Reduce、Spark、Flink、Storm。
- gostatsd - Statsd 服务器和库。
- Heka - 实时数据和日志文件处理引擎。
- Kapacitor - 处理、监控和警报时间序列数据的框架。
- parapipe - FIFO 管道,它在每个阶段并行执行,同时保持消息和结果的顺序
- pipe - golang 中支持的几种函数式编程(Map/Reduce/Filter)
- proto - 使用通道作为结果流的 Go 的 Map/Reduce/Filter 等。
- 棘轮- 用于在 Go 中执行数据管道 / ETL 任务的库。
- 推荐- 推荐引擎。
- rrd - rrdtool 的绑定。
- XConv - 在类型(基本类型、结构、数组、切片、映射等)之间转换任何值
数据结构
收藏
- 集合- 几种常见的数据结构
- data-structures -数据结构的集合(ArrayList、SortedList、Set、AVL Tree、Immutable AVL Tree、B+Tree、Ternary Search Trie、Hash Table(Separate Chaining)、Linear Hash Table)
- ps - 持久化数据结构
- Tideland golib - 收藏图书馆
哈希表
- bimap - 一个简单的双向映射实现
- gohash - 实现集合和映射的简单链表哈希表
- go-maps - Go 映射到接口
列表
- fs2/mmlist - 内存映射列表。
- GoArrayList - GoArrayList 是 Java 类 ArrayList 的 Go 语言替代品,具有几乎所有功能。
- goskiplist - Go 中的跳过列表实现。
- itreap - 一个不可变的有序列表,内部是一个 treap。
- ListDict - 用于 Go 的 Python 列表和字典
- skip - 快速位置可寻址的有序映射和多映射。
- Skiplist - 快速可索引的有序多图。
- skiplist - 跳过列表实现。高度可定制且易于使用。
- skiplist - 从 Redis 的 Sorted Sets 移植的 Skiplist 数据结构。
- stackgo - 基于切片的快速堆栈实现。
队列
interface{}
图表
- 图- 基本图算法库
- 图- 各种树、图和网络算法的实现
- groph - 一个纯 Go 图形和算法库
套
- disjoint -不相交集(具有路径压缩的联合查找算法)
- golang-set - Go 的完整线程安全和不安全集实现。
- goset - 一个简单的、线程安全的 Set 实现
- set - 为 Go 设置数据结构
树木
- b - 包 b 实现了带有延迟页面拆分/连接和 O(1) 枚举的 B+树。通过简单的文本替换,可以轻松生成专门用于用户定义的键和值类型的 B+树的源代码。
- btree - 包 btree 实现了具有固定大小键的持久 B 树,http://en.wikipedia.org/wiki/Btree
- btree - 内存中(非持久)B 树实现,类似于 GoLLRB 的 API
- go-avltree - 添加了索引的 AVL 树(Adel'son-Vel'skii & Landis)
- go-btree - 简单的平衡树实现
- go-darts - 用于围棋的双阵列 Trie 系统
- GoLLRB - Google Go 中 2-3 平衡二叉搜索树的左倾红黑(LLRB)实现
- go-merkle - 带有证明的 Merkle 化二叉(搜索)树。
- go-radix , go-radix-immutable - 基数树实现。
- go-stree - 区间范围查询的段树实现
- gtreap - 持久的 treap 实现。
- prefixmap - 用于基于字符串的键的简单的基于 trie 的前缀映射
- rbtree - 高性能红黑树,其 API 类似于 C ++ STL 的集合、映射、多集、多映射。
- rbtree - 另一个红黑树实现,具有类似 C++ STL 的 API
- rtreego - 一个 R 树库
- triego - 用于存储单词的简单 trie 实现
其他
map[string]interface{}
数据库
另请参阅SQLDrivers 页。
蟑螂数据库
- cockroachdb - 可扩展、可生存、高度一致的 SQL 数据库
Hazelcast IMDG
- Hazelcast危转客户端-为正式进入客户端实现Hazelcast IMDG,开源内存数据网格。
MongoDB
- mgo - 用于 Go 的丰富 MongoDB 驱动程序
- Mongo 驱动程序- 官方 MongoDB Go 驱动程序
- Rocks-stata - MongoDB 备份工具
MySQL
- Go-MySQL-Driver - 用于 Go 的 database/sql 包的轻量级且快速的 MySQL 驱动程序
- MyMySQL - 完全用 Go 编写的 MySQL 客户端 API。
- mysqlsuperdump - 生成 MySQL 数据库的部分和过滤转储
- TiDB - 以 Google 的 F1 设计为模型的 MySQL 兼容分布式数据库。
- vitess - 为网络扩展 MySQL 数据库
ODBC
- go-odbc - 用于 Go 的 ODBC 驱动程序
- odbc3-go - 这个包是 ODBC(版本 3)的包装器。
PostgreSQL
code.soquee.net/migrate
QL
- ql - 纯 Go 嵌入式 (S)QL 数据库。
Redis
- godis - Redis 的简单客户端
- Go-Redis - Redis 键值存储的客户端和连接器
- go-redis - 基于 gomemcache 框架构建的 Redis 客户端
- Redigo - Redis 的 Go 客户端。
- redis - Go 的 Redis 客户端
重新思考数据库
- GoRethink - 用于 Go 的 RethinkDB 驱动程序
SQLite
- gosqlite3 - SQLite3 的 Go 接口
- gosqlite (forked) - gosqlite 的一个分支
- gosqlite - Go 的简单 SQLite 绑定。
- go-sqlite - 一个数据库/sql 驱动程序和独立的 sqlite3 接口
- go-sqlite-lite - 一个用于 Go 的简单 SQLite 包。
- mattn 的 go-sqlite3 - 符合内置数据库/sql 接口的 sqlite3 驱动程序
维蒂卡
- vertica-sql-go - Vertica 数据库的纯 Go 驱动程序。
ORM
- beedb - beedb 是 Go 的 ORM。它允许您将 Go 结构映射到数据库中的表
- ent - Go 的实体框架
- FilterXorm - xorm 项目的构建条件。
- go-modeldb - 一个围绕 sql.DB 的简单包装器,用于结构支持。
- gorm - Go 的 ORM 库,旨在对开发人员友好
- gorp - Go 的 SQL 映射器
- go-firestorm - Cloud Firestore 的简单 Go ORM
- go-store - Go 的数据存储库,它提供了一组独立于平台的接口来持久化和检索键值数据。
- hood - 用于 Go 的数据库不可知 ORM。支持 Postgres 和 MySQL。
- lore - Go 的简单轻量级伪 ORM/伪结构映射环境。
- qbs - 按结构查询。支持 MySQL、PostgreSQL 和 SQLite3。
- sqlboiler - 通过代码生成的数据库优先 ORM。
- sqlgen - 用于 SQL 交互的 Go 代码生成。
- structable - 结构到表的数据库映射器。
- xorm - 用于 Go 的简单而强大的 ORM。
- 改革- 基于非空接口和代码生成的更好的 Go ORM。
- go-queryset - 用于 Go 的 100% 类型安全 ORM,具有代码生成和 MySQL、PostgreSQL、Sqlite3、SQL Server 支持。
键值存储
- bolt - 受 LMDB 启发的持久键/值存储。
- dbm - 包 dbm (WIP) 实现了一个简单的数据库引擎,分层和/或键值引擎的混合。
- fs2/bptree - 具有重复键支持的内存映射 B+树。适用于大量数据(又名 +100 GB)。支持匿名和文件支持的内存映射。
- Diskv - 本土的、磁盘支持的键值存储
- etcd - 用于共享配置和服务发现的高可用键值存储
- olric分布式缓存和内存键/值数据存储。它既可以用作嵌入式 Go 库,也可以用作独立于语言的服务。
- gkvlite - 基于仅附加文件格式的纯 go、简单、有序、原子键值持久性。
- gocask - 受 Riak Bitcask 启发的键值存储。可以用作 dbm 和其他 kv-stores 的纯 go 实现。
- goleveldb - 纯 Go 中 LevelDB 键/值的另一种实现。
- kv - 另一个键/值持久存储。原子操作、两阶段提交、自动崩溃恢复、...
- leveldb-go - 这是 LevelDB 键/值数据库的实现。
- levigo - levigo 提供了创建和访问 LevelDB 数据库的能力。
- persival - 程序化、持久化、伪键值存储
图数据库
- cayley - 100% Go 图形数据库,受 Freebase 和 Google 知识图的启发。
- Dgraph - 具有类似 GraphQL 的 API 的快速分布式图形数据库。
- go-gremlin - Apache TinkerTop Graph 分析框架(Gremlin 服务器)的 Go 客户端。
无SQL
- couchgo - Go 功能最完整的 CouchDB 适配器。模仿 couch.js。
- influxdb - 用于指标、事件和实时分析的可扩展数据存储
- Kivik - Kivik 为 CouchDB、PouchDB 和类似数据库提供了一个通用的 Go 和 GopherJS 客户端库。
- ledisdb - 像 Redis 一样的高性能 NoSQL。
- nodb - 带有 kv、列表、哈希、zset、位图、集的纯 Go 嵌入 Nosql 数据库。
- iedot - 使用 JSON 进行文档和查询的 NoSQL 文档数据库引擎;它可以嵌入到您的程序中,或者使用 HTTP 作为 API 运行独立服务器。
其他
- 内阁- 京都内阁绑定去
- camlistore - 终身个人分布式存储系统。
- cdb.go - 创建和读取cdb(“常量数据库”)文件
- CodeSearch - 对大量源代码进行索引和执行正则表达式搜索
- dbxml - Oracle Berkeley DB XML 的基本接口
- drive - 谷歌驱动命令行客户端
- Event Horizon - 命令查询职责分离和事件溯源工具包 (CQRS/ES)
- go-batcher - 在 Go 中简单地创建和使用批处理程序
- go-clickhouse - Yandex Clickhouse 的连接器(面向列的数据库)
- go-db-oracle - Oracle DB 的 GO 接口
- gographite - go 中的 statsd 服务器(用于将数据提供给石墨)
- gokabinet - 京都内阁 DBM 实施的绑定
- go-model - 健壮且易于使用的 Go 结构映射器和实用程序方法
- go-notify - libnotify 的 GO 绑定
- goprotodb - 与 Berkeley DB 的绑定,存储编码为协议缓冲区的记录。
- go-rexster-client - Rexster 图形服务器的Go 客户端(图形数据库工具TinkerPop套件的一部分)
- goriak - riak数据库的数据库驱动程序(项目主页现在在 bitbucket.org 上)
- goriakpbc - 使用 Riak 的 protobuf 接口的 Riak 驱动程序
- gotyrant - 东京暴君的 Go 包装器
- go-wikiparse - 用于处理维基百科数据的 mediawiki 转储解析器
- hdfs - 为 libhdfs 绑定
- JGDB - JGDB 代表 Json Git 数据库
- mig - 基于 SQL 的简单数据库迁移
- mongofixtures - 一个 Go 快速而肮脏的实用程序,用于清理 MongoDB 集合并将设备加载到其中。
- Neo4j-GO - Go 中的 Neo4j REST 客户端
- neoism - Neo4j 图形数据库客户端,包括 Cypher 和事务支持。
- null - 用于在 SQL 中处理空值的包
- Optimus Cache Prime - 用于带有 XML 站点地图的网站的智能缓存预加载器。
- piladb - 基于堆栈数据结构的轻量级 RESTful 数据库引擎。
- pravasan - 简单的迁移工具(如 rake db:migrate 具有更大的灵活性)
- remapper - 将数据从一种类型转换/映射到另一种类型的库
- riako - 与 Riak 数据库交互的高级实用方法
- sqlbuilder - 具有行映射的 SQL 查询构建器
- sqlf - 在 Go 中创建参数化 SQL 语句,sprintf 风格
- squirrel - 为 Go 生成流畅的 SQL
- Sublevel - 同一 LevelDB 的不同部分
- Weed 文件系统- 快速分布式密钥文件存储
- 耳语- 用于使用耳语数据库的库
- xo - CLI 为数据库生成惯用的 Go 代码
日期
Time.strftime
开发工具
- cwrap - C 库的封装(绑定)生成器。
- 需求- 轻松下载、构建、缓存和运行 Go 应用程序。
- glib - GLib 类型系统的绑定
- go-callvis - 使用点格式可视化 Go 程序的调用图。
- gocog - 可以使用任何语言生成代码的代码生成器
- Godepgraph - 为 go 包创建依赖图
- godev - 在源代码更改时重新编译并运行您的 Go 代码。还可以监视所有导入的更改。
- godiff - 带有彩色 html 输出的 diff 文件比较工具
- gonew - 创建新 Go 项目的工具
- go-play - 用于试验 Go 代码的 HTML5 Web 界面。像http://golang.org/doc/play但在您的计算机上运行
- gore - Go REPL。具有行编辑、代码完成等功能
- gorun - 允许将 Go 源文件用作脚本。
- go-spew - 为 Go 数据结构实现一个深度漂亮的打印机以帮助调试
- goven - 轻松地将代码从另一个项目复制到您的项目中
- gowatcher - 通过监视目录自动重新加载指定的 go 程序。
- GoWatch - GoWatch 监视您的 dev 文件夹中是否有修改过的文件,如果文件发生更改,它会重新启动该过程。
- goweb - Donald Knuth 和 Silvio Levy 基于 CWEB 的 Go文学编程工具。
- goyaccfmt - 自动重新格式化 Goyacc 源文件。
- hopwatch - Go 的简单调试器
- hsandbox - 用于快速实验 Go 代码片段的工具
- Inject - Golang 中的依赖注入库(来自 Facebook)
- liccor - 用于更新 Go 源文件中的许可证标头的工具
- liteide - Go 自动构建工具和基于 qt 的 Go ide
- Livedev - Livedev 是一个开发代理服务器,支持实时代码重新加载。
- Martian - 设计用于 E2E 测试的 HTTP 代理。
- nvm-windows - 适用于 Windows 的 Node.js 版本管理器
- Prettybenchcmp - 在本地存储和比较基准历史记录。
- rerun - 重新运行监视您的二进制文件及其所有依赖项,以便在源更改时重建和重新启动。
- sling - 网络流量模拟器和测试自动化工具,通过 HTTP 或 TCP 协议发送文件请求,控制速率频率、并发连接数、延迟、超时,并收集响应时间统计信息、平均值和百分位数。
- syntaxhighlighter - 与语言无关的代码语法高亮库
- 切换- 一个功能切换库,内置支持环境变量支持的切换。可插拔的后备引擎支持。
- trace - 一个简单的调试跟踪
Emacs 标签
- egotags - ETags 生成器
- tago1 - 使用 go 1 构建的用于 go 的 etags 生成器
- tago - 用于 Go 源代码的 Emacs 标签生成器
分布式/网格计算
- celeriac - 在 Go 中添加对交互和监控 Celery 工人、任务和事件的支持的库
- donut - 在 Go 中构建集群服务的库
- libchan - 网络上类似 Go 的频道
- locker - 建立在etcd之上的分布式锁服务。
- dlock - 使用gRPC的本机 Go 分布式锁管理器(客户端和服务器)。
- mangos - 基于nanomsg的可扩展协议的实现
- redsync - 基于 Redis 的分布式互斥锁实现
- Skynet - Skynet 是为高度可扩展的 API 类型服务提供而设计的分布式进程网格。
- Tideland golib - 包括一个 map/reduce 库
文档
- examplegen - 将.go文件中的代码插入文档(例如,项目自述文件的示例)。
- godocdown - 将包文档 (godoc) 格式化为 GitHub 友好的 Markdown
- GoDoc.org - GoDoc.org 从 Bitbucket、Github、Google Project Hosting 和 Launchpad 上的源代码动态生成文档。
- golangdoc - Golang 的 Godoc,支持翻译。
- Mango - 从 Go 源代码自动生成 unix 手册页
- redoc - Redis 命令文档
- sphinxcontrib-golangdomain - Go 的 Sphinx 域
- test2doc - 从您的单元测试中为您的 go 单元生成文档。
编辑
- A - 基于 Acme 的图形文本和二进制编辑器
- 概念- 概念是一个实验研究项目,旨在成为一个现代 IDE/语言包。 演示视频
- de - 具有 Acme 和 vi 功能的模态图形编辑器
- Gide - 内置在GoGi GUI中的 Go IDE
- Go-bbpackage - 用于 Go 开发的 BBEdit 包
- goclipse - 基于 Eclipse 的 Go IDE。
- Go conTEXT - 荧光笔插件
- godev - 基于 Web 的 Go 语言 IDE
- Godit - 用 Go 编写的类似 microemacs 的文本编辑器。
- gofinder - (代码)acme 搜索工具
- go-gedit - 用于 gedit 的 Google Go 语言插件
- golab - Go 本地应用程序构建器 - 基于 Web 的 Go ide
- Google Go for Idea - Intellij IDEA 的 Google Go 语言插件
- micro - 现代且直观的基于终端的文本编辑器。
- 虎斑- 源代码编辑器
- T - Acme/Sam 之类的文本编辑器
- ViGo - 类似 vim 的文本编辑器。
- Wide - 使用 Golang 的团队的基于 Web 的 IDE。
电子邮件
- chasquid - 用 Go 编写的 SMTP 服务器。
- gmail - 用于从 Gmail 帐户发送电子邮件的简单库,适用于对处理协议细节不感兴趣的人。
- Gomail - 一个简单有效的电子邮件发送包。
- go-mail - 电子邮件实用程序,包括 RFC822 消息和 Google Mail 默认值。
- go-ses - 亚马逊 AWS 简单电子邮件服务 (SES) API 客户端
- go-simple-mail - “用于发送电子邮件的 Golang 包。支持保持活动连接、TLS 和 SSL。易于批量 SMTP。”
- Hectane - 轻量级 SMTP 客户端,包括由磁盘存储支持的内置邮件队列。
- Inbucket - Inbucket 是一种电子邮件测试服务;它将接受任何电子邮件地址的消息,并使其可通过网络界面查看。
- mail.go - 解析电子邮件
- MailHog - 受 MailCatcher 启发的电子邮件测试服务。
- MailSlurper - 一个方便的 SMTP 邮件服务器,可用于本地和团队应用程序开发。将邮件吞没!
错误处理
code.soquee.net/problem
编码和字符集
- base58 - 人类输入友好的 base58 编码
- bencode-go - 编码和解码 BitTorrent 对等文件共享协议使用的 bencode 格式
- bsonrpc - 用于 net/rpc 的 BSON 编解码器
- chardet - 从 ICU 移植的字符集检测库
- Charmap - Go 中的字符编码
- codec-msgpack-binc高性能和功能丰富的惯用Go 库,为多种二进制序列化格式提供编码/解码支持:msgpack
- colfer - 高性能二进制编解码器
- gobson - BSON(反)序列化器
- go-charset - 字符集之间的转换。本地围棋。
- go.enmime - Go 的 MIME 电子邮件解析器库(本机)
- go-msgpack - Go 的综合 MsgPack 库,具有打包/解包和 net/rpc 编解码器支持(已弃用,支持编解码器)
- gopack - Go 的位打包
- go-simplejson - 与任意 JSON 交互的 Go 包
- go-wire - 用于结构等的二进制和 JSON 编解码器
- go-xdr - 外部数据表示 (XDR) 标准协议的数据表示部分的纯 Go 实现,如 RFC 4506(过时的 RFC 1832 和 RFC 1014)。
- iconv-go - 带有 Reader 和 Writer 的 iconv 包装器
- magicmime -- 带有用于 libmagic 的 Go 绑定的 Mime 类型检测
- Mahonia - Go 中的字符集转换库
- mimemagic - 根据文件内容自动检测 mime 类型,无需外部依赖
- mimemagic - 基于 FreeDesktop.org 规范的纯 MIME 嗅探库/工具
- msgpack - Go 的 Msgpack 格式实现
- msgpack-json - 在 msgpack 和 json 之间转换的命令行实用程序
- nnz - 序列化为 JSON 和 SQL null 的 String 和 Int 原语
- 可存储- 写入 perl 可存储数据
- TNetstring - tnetstrings(标记的 Netstrings)
文件系统
- afero - Go 的文件系统抽象系统
- go.fs - 虚拟文件系统抽象层。
- poller - 包轮询器是一个文件描述符多路复用器。它允许对多个文件描述符进行并发读取和写入操作。
- vfsgen - 生成静态实现给定虚拟文件系统的 vfsdata.go 文件。
游戏
- Bampf - 基于 Vu 3D 引擎的街机风格游戏。
- bloxorz - bloxorz 基本级别的求解器
- ChessBuddy - 与 Go、HTML5、WebSockets 和随机陌生人下棋!
- Fergulator - 一个 NES 模拟器,使用 SDL 和 OpenGL
- FlappyBird - 一个用 golang 编写的简单的飞扬的鸟克隆。
- Godoku - Go Sudoku Solver - “通过交流分享”的例子
- Gorgo - 用围棋编写的下围棋程序
- gospeccy - ZX Spectrum 48k 模拟器
- Ludo Game - 由 Go on Appengine 提供支持的 Ludo 棋盘游戏
- Pinkman - 基于命令行的国际象棋接口到 UCI 兼容的国际象棋引擎
- Pong - 用 golang 编写的简单 Pong 克隆
- pong-command - 笑话命令,类似乒乓。
- Steven - Go 中的 Minecraft 客户端
- ukodus - Go 中的数独求解器
- WolfenGo - Go 中的 Wolfenstein3D 克隆,使用 OpenGL 2.1
- GoChess - 在终端上与朋友下棋
地理信息系统
orb
Go 实现
- llgo - 基于 LLVM 的 Go 编译器,用 Go 编写
图形和音频
image.NRGBAcolor.NRGBA