go常用库收集

[文章]

https://draveness.me/

https://github.com/ThreeKing2018/goutil.git go util 是golang通用工具包,实现一站式,开箱即用

https://github.com/thinkeridea/go-extend.git go语言扩展包,收集一些常用的操作函数,辅助更快的完成开发工作,并减少重复代码

https://github.com/yireyun/go-queue 无锁队列

[web 框架]
https://gin-gonic.com/zh-cn/docs/
https://beego.me/

https://github.com/kataras/iris iris Go语言 mvc 框架

https://github.com/go-spring/go-spring 基于 IoC 实现的一套 GoLang 的应用程序框架

https://github.com/aceld/zinxZinx 是一个基于Golang的轻量级并发服务器框架

https://github.com/unrolled/secure 加对HTTPS的支持(gin,iris...)

[cache]

https://github.com/bluele/gcache

https://github.com/goburrow/cache

https://github.com/muesli/cache2go

https://github.com/patrickmn/go-cache

https://github.com/hashicorp/golang-lru

https://github.com/golang/groupcache

[goroutine]

https://github.com/panjf2000/ants

https://github.com/go-playground/pool

https://github.com/Jeffail/tunny

[二维码]

https://github.com/boombuler/barcode

https://github.com/skip2/go-qrcode

https://github.com/liyue201/goqr

https://github.com/mercari/go-emv-code EMV® QR Code Encoder/Decoder for Go.

[orm]

https://gitea.com/xorm/xorm

https://github.com/jinzhu/gorm

https://github.com/astaxie/beego orm

https://github.com/xormplus/xorm 基于xorm

[http]

https://github.com/go-resty/resty resty Go语言好用的 http-client

https://gopkg.in/resty.v2

[权限控制]

https://github.com/ory/ladon

https://github.com/casbin/casbin

[websocket]

https://github.com/gorilla/websocket

[cron]

https://github.com/robfig/cron cron 定时任务

[数据结构]

https://github.com/emirpasic/gods

[解析]

json

easyjson 无论是序列化还是反序列化都是最优的,序列化提升了1倍,反序列化提升了3倍(预编译)

jsoniter 性能也很好,接近于easyjson,关键是没有预编译过程,100%兼容原生库(滴滴开发)

ffjson 的序列化提升并不明显,反序列化提升了1倍(预编译)

jsonparser 不太适合这样的场景,性能提升并不明显,而且没有反序列化

gjson Get JSON values quickly - JSON parser for Go

jsontime 基于jsoniter,可以格式化时间

yaml

https://gopkg.in/yaml.v2

toml

https://github.com/BurntSushi/toml

https://github.com/pelletier/go-toml

html

https://github.com/PuerkitoBio/goquery goquery html dom 元素解析

https://github.com/yosssi/ace html模板引擎

https://github.com/niklasfasching/go-org html渲染器

excel

github.com/360EntSecGroup-Skylar/excelize

pdf

https://github.com/pdfcpu/pdfcpu

[log]

https://github.com/sirupsen/logrus

https://github.com/uber-go/zap

[email]

https://github.com/jordan-wright/email 对标准库封装

[cache]

https://github.com/goburrow/cache lru缓存淘汰算法

[测试]

github.com/stretchr/testify/assert A toolkit with common assertions and mocks that plays nicely with the standard library

https://github.com/smartystreets/goconvey

https://github.com/bouk/monkey

https://github.com/golang/mock

[Id生成器]

github.com/segmentio/ksuid

github.com/rs/xid

github.com/kjk/betterguid

github.com/sony/sonyflake

https://github.com/bwmarrin/snowflake

github.com/oklog/ulid

github.com/chilts/sid

github.com/satori/go.uuid

[misc]

https://github.com/spf13/pflag Go的标志包的直接替换,实现POSIX / GNU样式的--flags。

https://github.com/spf13/jwalterweatherman 无缝打印到终端(stdout)并记录到io.Writer(文件),它与fmt.Println一样容易使用。

github.com/spf13/cobra Cobra既是用于创建强大的现代CLI应用程序的库,也是用于生成应用程序和命令文件的程序。

https://github.com/spf13/viper是一个方便Go语言应用程序处理配置信息的库。它可以处理多种格式的配置。

https://github.com/spf13/viper Afero 是一个文件系统框架,提供一个简单、统一和通用的 API 和任何文件系统进行交互,作为抽象层还提供了界面、类型和方法。

https://github.com/spf13/cast 安全的类型转换

https://github.com/BurntSushi/lockerGolang软件包,可方便地使用命名的读/写锁。对于同步访问Web应用程序中基于会话的存储很有用。

https://github.com/PuerkitoBio/purellGo库可标准化URL

https://github.com/PuerkitoBio/urlescRFC3986正确转义URL

https://github.com/alecthomas/chroma 纯Go中的通用语法高亮

https://github.com/bep/gitmapA fast way to create a map from all the filenames to info objects for a given revision of a Git repo.

https://github.com/bep/go-tocssGo API for LibSass。使用CGO。

https://github.com/cpuguy83/go-md2man 将markdown转换为roff(手册页)。

https://github.com/disintegration/imaging 简单图像处理包

https://github.com/danwakefield/fnmatch 文本处理

https://github.com/dlclark/regexp2 基于.NET引擎的纯Go功能齐全的正则表达式引擎

https://github.com/eknkc/amber Amber是Go编程语言的优雅模板引擎,灵感来自HAML和Jade

https://github.com/fsnotify/fsnotify Go的跨平台文件系统通知。

https://github.com/gobwas/glob 该库是为一次编译模式创建的。这意味着编译可能要花一些时间,但是与始终解析模板相比,字符串匹配的完成速度更快。

https://github.com/hashicorp/go-immutable-radix Golang中的不可变基数树实现

https://github.com/hashicorp/golang-lru Golang LRU缓存

https://github.com/hashicorp/hcl HCL是HashiCorp配置语言。

https://github.com/jdkato/prose 一个Golang库,用于文本处理,包括标记化,词性标记和命名实体提取。

https://github.com/kyokomi/emoji 对于golang表情符号输出端

https://github.com/magiconair/properties Go的Java属性扫描器

https://github.com/mattn/go-runewidth 字符统计

https://github.com/mattn/go-isatty 检查中断类型

https://github.com/mmarkdown/mmark Go中面向IETF的功能强大的markdown处理器

https://github.com/russross/blackfriday markdown 处理器

https://github.com/gobuffalo/flect包含“基本”变形工具,例如复数,单数化等。

https://github.com/muesli/smartcrop 找到图片中主要物体

https://github.com/mitchellh/mapstructure

https://github.com/mitchellh/hashstructure

https://github.com/nicksnyder/go-i18n 将您的Go程序翻译成多种语言。

https://github.com/olekukonko/tablewriter 在golang ASCII表格

https://github.com/tdewolff/minify 网页文件压缩

https://github.com/tdewolff/parse 网页格式化

https://github.com/tdewolff/canvas Go中的Cairo:SVG,PDF,EPS或光栅图像的矢量

https://github.com/wellington/go-libsass libsass的Go包装器,Go的唯一Sass 3.5编译器

https://github.com/pkg/browser 程序包浏览器提供了一些帮助程序,可以在浏览器窗口中打开文件,阅读器和URL。

[tool]

https://github.com/bitepeng/b0pass 百灵快传:基于Go语言的高性能 "手机电脑超大文件传输神器"、"局域网共享文件服务器"