go-diagrams

blushft / go-diagramsGo第 55 期 · 2020-10-28
实时数据待拉取(运行 scripts/enrich.py 后填充)
go-diagrams

项目简介

用 Go 语言画架构图的工具。想画架构图不知道用什么工具?会 Go 的小伙伴可以试试这个库,通过编写 Go 代码来绘制架构图,接口使用方便,但文档太简单了。示例代码:

go d, err := diagram.New(diagram.Filename("app"), diagram.Label("App"), diagram.Direction("LR"))if err != nil {log.Fatal(err)}dns := gcp.Network.Dns(diagram.NodeLabel("DNS"))lb := gcp.Network.LoadBalancing(diagram.NodeLabel("NLB"))cache := gcp.Database.Memorystore(diagram.NodeLabel("Cache"))db := gcp.Database.Sql(diagram.NodeLabel("Database"))dc := diagram.NewGroup("GCP")dc.NewGroup("services").Label("Service Layer").Add(gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 1")),gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 2")),gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 3")),).ConnectAllFrom(lb.ID(), diagram.Forward()).ConnectAllTo(cache.ID(), diagram.Forward())dc.NewGroup("data").Label("Data Layer").Add(cache, db).Connect(cache, db)d.Connect(dns, lb, diagram.Forward()).Group(dc)if err := d.Render(); err != nil {log.Fatal(err)}

本期其他项目

全部 →
htop
C第 55 期

htop

交互式进程查看工具,可代替 top 命令。用了这库后,我基本不用 top 命令了

暂无截图
C#第 55 期

ToolGood.Words

一款高性能非法词、敏感词检测库。还支持繁体简体互换、获取拼音首字母、获取拼音字母、拼音模糊搜索等功能```string s = "中国|国人|zg人";string test = "我是中国人";StringSearch iwords = new StringSearch();iwords.SetKeywords(s.Split('|'));var b = iwords.ContainsAny(test);Assert.AreEqual(true, b);var f = iwords.FindFirst(test);Assert.AreEqual("中国", f);var all = iwords.FindAll(test);Assert.AreEqual("中国", all[0]);Assert.AreEqual("国人", all[1]);Assert.AreEqual(2, all.Count);var str = iwords.Replace(test, '*');Assert.AreEqual("我是***", str);```

暂无截图
C++第 55 期

workflow

搜狗开源的 C++ 服务器引擎。支撑搜狗几乎所有后端 C++ 在线服务,包括所有搜索服务、云输入法、广告等,每日处理超百亿请求。这是一个设计轻盈优雅的企业级程序引擎,可以满足大多数 C++ 后端开发需求

flexboxfroggy
CSS第 55 期

flexboxfroggy

一个帮助学习 CSS flexbox 知识的在线游戏。游戏一共 24 关,通俗易懂的解释了 flex 布局。适合初学者,并且支持中文,可以在 settings 中选择语言。[在线试玩](https://flexboxfroggy.com/)

ali
Go第 55 期

ali

能够实时展示分析的压力测试工具。现在压测工具有很多,这款的亮点在于可以在终端实时展示压测过程的曲线。一条命令搞定启动:`ali 地址`

ferry
Go第 55 期

ferry

基于 Gin + Vue + Element UI 前后端分离的工单系统。该系统是集工单统计、任务钩子、权限管理、灵活配置流程与模版等等功能, 帮助减少跨部门之间的沟通,提升工作效率与工作质量,减少不必要的工作量与人为出错率

gorched
Go第 55 期

gorched

Go 语言写的终端游戏 Scorched Earth。它让我想起了“百战天虫”这款游戏,有同龄人吗?一起来回味下

jmeter
Java第 55 期

jmeter

Apache 开源的压力测试工具。提供 GUI 操作界面就是可以点点点操作,也可以写脚本提高测试的自动化,它还不局限于 Web 测试,支持更多压力测试场景。我身边 97% 从事测试相关工作的人都用过它,要不要来看看它的源码?纯 Java 实现

同类项目

全部 →
App-Store-Connect-CLI
Go第 124 期

App-Store-Connect-CLI

命令行发布 App Store 应用。这是一款用 Go 编写的 App Store Connect 命令行工具,可在终端、IDE 或 CI/CD 流水线中自动完成应用发布,支持构建上传、TestFlight、提交审核、签名等操作,覆盖 iOS、macOS、tvOS 和 visionOS 全平台。

kage
Go第 124 期

kage

把整个网站打包离线阅读。该项目是用 Go 编写的网站离线保存工具,可将任意网站保存为可离线浏览的本地文件夹。保存后的网页看起来和线上一样,但不会发起任何网络请求,还支持打包成单个 .zim 文件或可直接运行的可执行文件。

make-look-scanned
Go第 124 期

make-look-scanned

让 PDF 看起来像扫描件。该项目可将 PDF 文件处理成类似扫描件的效果,支持命令行和浏览器本地运行,相同文件默认会得到完全一致的结果。

zabbix
Go第 124 期

zabbix

开源的企业级分布式监控平台。该项目是企业级开源分布式监控系统,可实时监控网络设备、服务器、数据库、虚拟机、容器、云服务和应用的运行状态。它支持自动发现、Agent/Agent-less 采集和故障检测等功能,并可通过 Slack、Jira、Teams、邮件或短信发送告警。Zabbix 在中国也有非常活跃的社区。

暂无截图
Go第 123 期

chinese-poetry-api

开箱即用的中国古诗词 API 服务。该项目是用 Go 语言编写的中国古诗词 API 服务,收录了唐诗、宋词、元曲等近 40 万首作品。它提供 REST API 和 GraphQL 接口,支持全文搜索、IP 限流、按朝代/作者/诗型随机取诗和 Docker 一键部署。

fight-the-landlord
Go第 123 期

fight-the-landlord

终端里的斗地主游戏。这是一款用 Go 编写的斗地主游戏,主打随机发牌、无控牌算法。支持联网对战、房间匹配、断线重连、记牌器、音乐开关等功能,还集成了快手开源的 DouZero 斗地主 AI,可作为机器人补位或对战。

gopass
Go第 123 期

gopass

专为团队设计的命令行密码管理器。这是一款用于存储管理和同步密码、密钥与证书的命令行工具,可作为 UNIX 密码工具 pass 的替代品。默认用 GPG 加密和 Git 管理凭据,可通过 Git 仓库在多设备、多人团队之间同步。

tinyauth
Go第 123 期

tinyauth

开源的零代码身份认证中间件。这是一个 Go 语言开发的极简认证中间件,可通过 Docker 快速部署。它能为任何 Web 应用或服务一键添加登录界面或 OAuth 登录(Google、GitHub 等),无需修改现有代码,可无缝集成到 Traefik、Caddy、Nginx 等主流反向代理,极大地简化了登录实现流程。