Go 常用框架

300 阅读3分钟

Go 常用框架

  1. expr: 是一种以 Go 为中心的表达式语言,旨在以无与伦比的准确性、安全性和速度提供动态配置
    1. 官网
    2. Github
    3. 安装: go get github.com/antonmedv/expr
  2. go-echarts: 数据可视化图表库
    1. Github
    2. 安装: require github.com/go-echarts/go-echarts/v2
  3. fsnotify: Go 的跨平台文件系统通知
    1. Github
    2. 支持的平台:
      1. Linux
      2. BSD、macOS
      3. Windows
      4. illumos
  4. miller: Miller 类似于 awk、sed、cut、join 和 sort 名称索引数据,例如 CSV、TSV 和表格 JSON
    1. 官网
    2. Github
    3. 安装: apt-get install miller
  5. viper: 是 Go 应用程序的完整配置解决方案。
    1. Github
    2. 安装: go get github.com/spf13/viper
    3. 支持的配置文件类型:
      1. JSON
      2. TOML
      3. YAML
      4. HCL
      5. envfile
  6. excelize: 用于读取和写入 Microsoft Excel™ (XLAM / XLSM / XLSX / XLTM / XLTX) 电子表格的 Go 语言库
    1. 官网
    2. Github
    3. 安装: go get github.com/xuri/excelize/v2
  7. pdfcpu: 用 Go 编写的 PDF 处理器。
    1. 官网
    2. Github
    3. 安装: go install github.com/pdfcpu/pdfcpu/cmd/pdfcpu@latest
  8. cron: Go 的 cron 库。
    1. Github
    2. 安装: go get github.com/robfig/cron/v3@v3.0.0
  9. resty: 适用于 Go 的简单 HTTP 和 REST 客户端库。
    1. Github
    2. 安装: require github.com/go-resty/resty/v2 v2.10.0
  10. casbin: 在 Golang 中支持 ACL、RBAC、ABAC 等访问控制模型的授权库。
    1. 官网
    2. Github
    3. 安装: go get github.com/casbin/casbin/v2
  11. websocket: 是一个快速、经过充分测试且广泛使用的 Go WebSocket 实现。
    1. 官网
    2. Github
    3. 安装: go get github.com/gorilla/websocket
  12. gobot: 用于机器人、无人机和物联网(IOT)的 Golang 框架。
    1. 官网
    2. Github
  13. wire: Go 的编译时依赖注入
    1. Github
    2. 安装: go install github.com/google/wire/cmd/wire@latest
  14. colly: 闪电般快速和优雅的 Gophers 抓取框架
    1. 官网
    2. Github
    3. 安装: go get github.com/gocolly/colly/v2
  15. goquery: 为 Go 语言带来了类似于 jQuery 的语法和一组功能。
    1. Github
    2. 安装: go get github.com/PuerkitoBio/goquery
  16. ants: 是一个高性能的 goroutine 池,实现了对大规模 goroutine 的调度管理、goroutine 复用,允许使用者在开发并发程序的时候限制 goroutine 数量,复用资源,达到更高效执行任务的效果。
    1. 官网
    2. Github
    3. 安装: go get -u github.com/panjf2000/ants/v2
  17. jwt
    1. jwt 官网
    2. Github
    3. 安装: go get -u github.com/golang-jwt/jwt/v5
  18. Sonyflake: 受 Twitter 的 Snowflake 启发的分布式唯一 ID 生成器。
    1. Github
    2. 安装: go get github.com/sony/sonyflake
  19. uuid: 基于 RFC 4122 和 DCE 1.1 的 UUID Go 包:身份验证和安全服务。
    1. Github
    2. 安装: go get github.com/google/uuid
  20. zap: Go 中超快、结构化、分级的日志记录。
    1. Github
    2. 安装: go get -u go.uber.org/zap
  21. lumberjack: 是 Go 的日志滚动记录器
    1. Github
    2. 安装: go get gopkg.in/natefinch/lumberjack.v2
  22. validator: 根据标签对结构体和单个字段进行值验证。
    1. Github
    2. 安装: go get github.com/go-playground/validator/v10
  23. validate: Go通用的数据验证与过滤库,使用简单,内置大部分常用验证、过滤器,支持自定义验证器、自定义消息、字段翻译。
    1. 文档
    2. Github
    3. 安装: go get github.com/gookit/validate
  24. json-iterator/go: 高性能 100% 兼容的“encoding/json”直接替代品。
    1. 官网
    2. Github
    3. 安装: go get github.com/json-iterator/go
  25. gomail: 是一个简单高效的发送电子邮件包。Gomail 只能使用 SMTP 服务器发送电子邮件。
    1. Github
    2. 安装: go get gopkg.in/gomail.v2
  26. go-redis: Redis Go 客户端
    1. 官网
    2. Github
    3. 安装: go get github.com/redis/go-redis/v9
  27. redigo: Redis Go 客户端
    1. Github
    2. 安装: go get github.com/gomodule/redigo/redis
  28. gorm: 出色 ORM 库旨在对开发人员友好。
    1. 官网
    2. Github
    3. 安装: go get -u gorm.io/gorm go get -u gorm.io/driver/mysql
  29. go-cache: 是一个类似于 memcached 的内存键值存储/缓存,适用于在单台机器上运行的应用程序。
    1. 官网
    2. Github
    3. 安装: go get github.com/patrickmn/go-cache

开源项目

  1. beehive: 一个灵活的事件/代理和自动化系统
    1. Github