gookit/validate是一个Go语言的数据验证与过滤库。它能够支持Map、Struct、Form数据的验证与过滤,使用起来相当简单。其内置了大量常用的验证器和过滤器,像验证数据是否必填、是否为特定类型等,还可以自定义验证器和消息,支持字段翻译,在不同框架如Gin、Echo、Chi等中都可使用,在处理HTTP请求时能依据Content - Type自动收集数据,还能对切片子值进行检查并支持数据的预转换等。
gonews是基于go+vue实现的golang每日新闻浏览与检索平台。它的数据来源为GoCN每日新闻,项目给出了详细的部署步骤,包括获取新闻数据、源码、启动后台服务与Api以及前端部署。在技术上,后端依靠golang及相关包,前端使用vue及其相关包等。这个平台为golang新闻的浏览与检索提供了方便的途径。
CrawlerHot项目主要功能是抓取多个网站的热榜信息,像知乎、V2EX等。其架构为前后端分离,后端是web.py框架,前端为layui,数据存为本地json文件。运行环境是python3.6,可通过多种操作实现本地运行效果展示以及服务器部署,为获取网站热榜信息及构建相关项目提供了完整的方案。
CS-Notes是一个关于编程语言学习与实践总结的笔记仓库,参考特定知识结构划分,涵盖JavaScript、Java、Python、Go、Rust、CPP、Swift等多种编程语言相关内容,包括从基础语法到工程实践的知识,为想要深入学习编程语言的开发者提供了很好的资源,有助于加深对不同语言的理解。
gnet是一个超快速且轻量级的事件驱动网络框架。它通过利用epoll和kqueue从头构建,在许多特定场景下能以更低的内存消耗实现比Go标准网络库更高的性能。gnet基于TCP/UDP协议和Unix域套接字在传输层工作,开发者可以基于gnet实现自己的应用层协议(如HTTP、RPC、WebSocket、Redis等)来构建多样化的网络服务。一些企业/组织在生产环境中将gnet用作底层网络服务。在TechEmpower的基准测试中,gnet在全球486个涵盖各种编程语言的框架中排名前50,在Go框架的完整排名中,gnet超越了其他所有框架,成为Go中最快的网络框架。不过其在TechEmpower上的HTTP实现是为了基准测试目的而进行的半完成品,远未达到生产就绪状态。
Jupiter是一个治理导向的微服务框架,已在斗鱼使用多年。提供在线演示(Juno,用户名和密码均为admin)和中文文档等。使用时要求Go版本大于等于1.19并支持Docker,还给出了详细的使用步骤,包括安装工具包、创建示例项目、下载依赖、运行示例项目等。这是一个功能丰富且实用的微服务框架项目。
shen100/wemall是一个微商城项目,包含微信小程序。在技术方面,前端web服务器为nginx,后台渲染用node.js,M站框架集有vue等,后台管理框架集含react等,还有多种工具和框架参与构建,如数据可视化的echarts、富文本编辑器ueditor等。项目详细给出了环境搭建步骤,包括代码克隆、各种配置文件修改、数据库创建、模块安装与程序启动等多方面内容。
这是一个用于Go语言的支付宝AliPaySDK。它集成简单,功能完善并且持续更新。支持公钥证书和普通公钥进行签名和验签,还支持文件上传和接口内容加密。在项目中可方便地实现各种支付宝功能集成,像众多支付接口、身份认证、资金授权、订单管理等功能。在创建Wap支付场景下,可按步骤配置参数生成支付页面URL。对于未实现接口可自定义请求操作,在小程序中也能实现文件上传等功能。
wuYin/blog是一个开源于Github的个人博客项目,它具有较高的人气,有896个星标和167个分支,并且采用MIT许可证。项目中的文件涵盖了算法、数据结构、计算机基础、分布式系统等多种类型,涉及Go和PHP两种编程语言,分别占比81.1%和18.9%,这些内容体现了项目的技术丰富性。
gout是一个Go编写的HTTP客户端项目,功能丰富强大。它支持多种HTTP方法的设置,能处理各种类型的数据作为请求相关的参数或体内容,支持多种编码格式的数据处理,还包括数据校验、中间件、不同方式的数据解析、重试、性能测试、超时和代理设置等功能,并且有详细示例代码,使用中有问题可提issues。
fileboy是一个用Go编写的文件变更监听通知工具。它可用于HotReload场景,如go项目开发无需手动执行gobuild,前端node打包,也适用于系统监控。其特性包括极简用法和配置、多平台支持、自定义文件监听范围、监控事件、命令设置、冗余任务丢弃、http通知等。它的运行可通过下载二进制文件或源码编译,依赖filegirl.yaml配置文件,该文件各部分有详细的配置内容。这个工具在开发中的自动打包编译和监控文件变动方面都有很好的应用价值。