当前位置: 首页 > news >正文

Golang 相关的github 开源项目

1. pan-light

  • url: http://github.com/peterq/pan-light
  • star: 12.1k
  • fork: 2.5k
  • watch: 284

用Golang和Qt5编写的不限速版百度网盘。相比之前版本的百度网盘客户端,当前版本拥有更友好、便捷的图形界面,体量更轻,便于使用,只需下载即可使用。


2. goim

  • url: http://github.com/Terry-Mao/goim
  • star: 7.3k
  • fork: 1.8k
  • watch: 396

这是一个轻量级、高性能的IM实时信息推送应用程序,支持集群交互。

项目通过Golang实现,支持包括广播消息、房间推送、安全验证、多协议,以及基于Kafka的异步消息推送功能。


 

3. go-admin

  • url: http://github.com/GoAdminGroup/go-admin
  • star: 8.4k
  • fork: 1.4k
  • watch: 140

通过 Golang 编写的数据可视化管理平台。

有以下特性:

  • 生产效率高:10 分钟可以做出一个好看的管理后台
  • 主题样式多:默认样式 adminlte,更多主题持续制作中
  • 插件化应用:提供插件使用,解决问题用插件高效解决
  • ✅认证:rbac 认证系统,开箱即用
  • ⚙️框架支持:支持大部分框架接入,更容易上手和扩展

4. nes

  • url: http://github.com/fogleman/nes
  • star:5.5k
  • fork: 520
  • watch: 143

这是一个用Golang编写的NES模拟器。虽然现在几乎没有人玩NES游戏,但通过项目,我们可以看到如何用Golang编写一个模拟器,以及如何用Go模拟CPU和GPU。

5. go-echarts

  • url: http://github.com/go-echarts/go-echarts
  • star: 6.8k
  • fork: 571
  • watch: 97

echarts是应用非常广泛的数据可视化图形库,本项目是echarts的Golang接口,通过Golang生成相应图表。

实例代码如下:

// example.go
package main

import (
    "log"
    "math/rand"
    "os"
    "time"

    "github.com/chenjiandongx/go-echarts/charts"
)

var nameItems = []string{"衬衫", "牛仔裤", "运动裤", "袜子", "冲锋衣", "羊毛衫"}
var seed = rand.NewSource(time.Now().UnixNano())

func randInt() []int {
    cnt := len(nameItems)
    r := make([]int, 0)
    for i := 0; i < cnt; i++ {
        r = append(r, int(seed.Int63()) % 50)
    }
    return r
}

func main() {
    bar := charts.NewBar()
    bar.SetGlobalOptions(charts.TitleOpts{Title: "Bar-示例图"}, charts.ToolboxOpts{Show: true})
    bar.AddXAxis(nameItems).
        AddYAxis("商家A", randInt()).
        AddYAxis("商家B", randInt())
    f, err := os.Create("bar.html")
    if err != nil {
        log.Println(err)
    }
    bar.Render(f)
}

6. Swaggo

  • url : https://github.com/swaggo

 从左到右,依次是swag,gin-swagger,echo-swagger,http-swagger。一般情况下,项目中引用都需要引用swag,其次根据你的框架需要,比如你的项目中使用的是gin或者echo,进入相关的模块。在这里我以echo为例。

一个是docs文件夹,一个是main.go文件,其实docs是自动生成的,main.go是官方给的使用例子。我们直接进去看看。

package main

import (
	"github.com/labstack/echo/v4"
	"github.com/swaggo/echo-swagger"  //这里是需要引用的echo-swagger的包
	_ "github.com/swaggo/echo-swagger/example/docs" // docs is generated by Swag CLI, you have to import it.
	//这里的docs文件夹是上面刚刚说过的自动生成的文件,里面的主要是swagger生成好的接口文档
)

// @title Swagger Example API
// @version 1.0
// @description This is a sample server Petstore server.
// @termsOfService http://swagger.io/terms/

// @contact.name API Support
// @contact.url http://www.swagger.io/support
// @contact.email support@swagger.io

// @license.name Apache 2.0
// @license.url http://www.apache.org/licenses/LICENSE-2.0.html

// @host petstore.swagger.io
// @BasePath /v2
func main() {
	e := echo.New()

	e.GET("/swagger/*", echoSwagger.WrapHandler) //这里是必要的代码,否则是项目是运行不起来的

	/*
		Or can use EchoWrapHandler func with configurations.
		url := echoSwagger.URL("http://localhost:1323/swagger/doc.json") //The url pointing to API definition
		e.GET("/swagger/*", echoSwagger.EchoWrapHandler(url))
	*/
  
  //如果想要你的demo能跑起来,这上面的注释的代码得解开。因为要加载里面的文件
	e.Logger.Fatal(e.Start(":1323"))
}

7. go-redis

  • url:  https://github.com/go-redis/red

一般开源的第三方工具源码都会有Doc和Examples这两个东西的,一个是文档,一个是使用例子,可以直接照着文档阅读或者敲代码,都是可行的,如果遇到了写的跑不起来,则直接去Examples这个文件里面找对应的例子跟着去操作。

 这是文档,直接告诉你要引用包,怎么使用,代码都可以直接拿去粘贴复制,开箱即用。

 

这是Examples,每一个操作都会有例子给你看。 

相关文章:

  • 便捷批量字符一键查找替换工具
  • 首页 layout 架子(element-plus菜单组件)
  • 解锁机器学习核心算法 | 逻辑回归:不是回归的“回归”
  • 通过API 调用本地部署 deepseek-r1 模型
  • 关系中出现这10个信号,离分手就不远了(爱情友情都适用)
  • idea连接gitee后.反向创建仓库和分支
  • 前端基础入门:HTML、CSS 和 JavaScript
  • 【股票数据API接口28】如何获取强势股池数据之Python、Java等多种主流语言实例代码演示通过股票数据接口获取数据
  • Scrapy:DownloaderAwarePriorityQueue队列设计详解
  • 企业软件合规性管理:构建高效、安全的软件资产生态
  • docker知识
  • 网工项目实践2.8 IPv6设计及网络优化需求分析及方案制定
  • 2025.2.20总结
  • 分布式架构与XXL-JOB
  • Redis常用命令合集【二】
  • 【Axure高保真原型】嵌套表格
  • 【LeetCode Hot100 链表(上)】相交链表、反转链表、回文链表、环形链表、合并两个有序链表、两数相加
  • PrimeFaces实战:IdleMonitor与Ajax的完美结合
  • 论文笔记(七十二)Reward Centering(二)
  • 《天津大学DeepSeek原理与效应》.pdf(文末有完整版下载地址)
  • 佩斯科夫:若普京认为必要,将公布土耳其谈判俄方代表人选
  • 习近平出席中拉论坛第四届部长级会议开幕式并发表主旨讲话
  • 广东:十年后省级水网主骨架全面建成,与国家骨干网互联互通
  • 工人日报:“鼠标手”被纳入职业病,劳动保障网越织越密
  • 澎湃思想周报|欧洲胜利日之思;教育监控与学生隐私权争议
  • 浙江公开征集涉企行政执法问题线索,包括乱收费、乱罚款等