Velo:使用 Go 与 Wails 构建的跨平台网络速度监控器

发布: (2026年1月11日 GMT+8 03:14)
3 min read
原文: Dev.to

Source: Dev.to

Introduction

你是否曾经感觉网络连接很慢,却不确定这只是瞬间的卡顿还是持续的模式?

我构建了 Velo,这是一款桌面应用,帮助你在不需要手动在浏览器中运行测速的情况下,随时间跟踪网络速度。

在本文中,我将分享我为何构建它、它是如何工作的以及背后的技术栈。

GitHub Repository:

What is Velo?

Velo 是一款网络速度测量工具,设计为桌面应用运行。

它会每小时自动运行一次测速,记录你的下载、上传和延迟指标。数据会在交互式图表上可视化,让你一眼就能看出趋势。你也可以随时手动触发测量。

Fun fact: 名称 velo 来自意大利语 veloce,意为“快速”。我选择它纯粹是因为听起来很酷。

Velo 仪表盘示例

Motivation

我注意到我的网络在夜间会变得迟缓。通常我会打开 FAST.com 检查速度,但每次都要打开浏览器很麻烦,而且一次测试只能显示当前速度——无法揭示趋势。

我想要一个能够自动定期测量并记录速度的应用,以便我能随时间分析模式。

虽然已有类似工具,但自己动手实现是学习的最佳方式。

Features

  • Speed Test: 使用 speedtest-go 测量下载速度、上传速度和延迟。
  • Automatic Monitoring: 在后台运行,每小时进行一次测速。
  • Visualization: 在交互式的时间‑对‑速度图表上展示网络历史。
  • Cross‑Platform: 支持 macOS、Windows 和 Linux。

Tech Stack

  • Framework: Wails v2
  • Backend: Go (v1.25+)
  • Frontend: Vue.js (Node.js & npm)
  • Library: speedtest-go 用于核心测量逻辑。

Getting Started

如果你想尝试或贡献,可以从源码构建。

Prerequisites

  • Go (v1.25 或更高)
  • Node.js & npm
  • Wails CLI:
go install github.com/wailsapp/wails/v2/cmd/wails@latest

Installation & Running

Clone the repository:

git clone https://github.com/kanywst/velo.git
cd velo

Install dependencies:

# Backend
go mod tidy

# Frontend
cd frontend
npm install
cd ..

Run in development mode:

wails dev

Build for production:

wails build

The binary will be generated in build/bin.

Conclusion

Velo 是一个源于验证 ISP 性能这一简单需求的个人项目。它仍在持续迭代中,可能还潜藏着一些 bug。我的计划是不断改进并在发现问题时进行修复。

试试看并告诉我你的想法。如果你觉得它有用(或仅仅喜欢这个名字),在 GitHub 上点个星星将不胜感激。

Back to Blog

相关文章

阅读更多 »