# BandHot
**Repository Path**: mingjianyeying/BandHot
## Basic Information
- **Project Name**: BandHot
- **Description**: BandHot 是一款基于 Tauri 2 + Vue 3 构建的现代化网络带宽管理工具。支持精确的多等级带宽控制,提供实时监控、详细统计和跨平台支持(Windows PC / Android 移动端)。
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2025-07-08
- **Last Updated**: 2026-02-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: Vue, Rust, TypeScript, tauri
## README
# 🚀 BandHot - 带宽控制器
专业的网络带宽管理工具
精确控制和监控网络带宽使用情况





## 📋 项目概述
**BandHot** 是一款基于 **Tauri 2** + **Vue 3** 构建的现代化网络带宽管理工具。支持精确的多等级带宽控制,提供实时监控、详细统计和跨平台支持(Windows PC / Android 移动端)。
### ✨ 核心特性
- 🎯 **精确控制** - 9个带宽等级,从5 Mbps到200 Mbps精确控制
- 📊 **实时监控** - 实时速度、流量消耗、连接数监控
- 📱 **跨平台** - 支持Windows桌面端和Android移动端
- 🎨 **现代UI** - 响应式设计,支持浅色/深色主题
- 🌍 **多语言** - 中文/English双语支持
- 📈 **详细统计** - 网络信息、性能指标、历史记录
- ⚡ **高性能** - Rust后端确保低资源占用和高效率
## 🎛️ 带宽等级配置
| 等级 | 名称 | 占用带宽 | 连接数 | 适用场景 |
|------|------|----------|---------|----------|
| **Off** | 关闭 | 0 Mbps | 0 | 停止占用 |
| **Micro** | 微速 | 5 Mbps | 2 | 轻量级测试 |
| **Mini** | 慢速 | 15 Mbps | 3 | 小规模负载 |
| **Low** | 轻度 | 30 Mbps | 5 | 中等负载测试 |
| **Medium** | 中度 | 50 Mbps | 8 | 标准压力测试 |
| **High** | 高速 | 75 Mbps | 10 | 高负载场景 |
| **Turbo** | 涡轮 | 100 Mbps | 12 | 大流量测试 |
| **Ultra** | 超速 | 150 Mbps | 16 | 极高负载 |
| **Extreme** | 极限 | 200 Mbps | 20 | 极限压力测试 |
## 💻 技术栈
### 前端技术
- **Vue 3** - 渐进式JavaScript框架
- **TypeScript** - 类型安全的JavaScript
- **Tailwind CSS** - 实用优先的CSS框架
- **Pinia** - Vue状态管理
- **Vue Router** - 官方路由管理器
- **Vue I18n** - 国际化支持
- **Chart.js** - 数据可视化
### 后端技术
- **Rust** - 系统级编程语言
- **Tauri 2** - 跨平台桌面应用框架
- **Tokio** - 异步运行时
- **Serde** - 序列化/反序列化
- **Reqwest** - HTTP客户端
### 开发工具
- **Vite** - 现代前端构建工具
- **Yarn** - 快速、可靠的包管理器
- **ESLint** - 代码质量检查
- **Prettier** - 代码格式化
## 🚀 快速开始
### 📋 系统要求
#### Windows PC端
- Windows 10/11
- Node.js 18+
- Yarn 包管理器
- Rust 1.70+
#### Android移动端
- Java Development Kit (JDK) 11 或 17
- Android SDK (API Level 33+)
- Android NDK
### 📦 安装
1. **克隆项目**
```bash
git clone https://github.com/your-username/BandHot.git
cd BandHot
```
2. **安装依赖**
```bash
yarn install
```
3. **开发模式运行**
```bash
yarn tauri:dev
```
4. **构建生产版本**
```bash
yarn tauri:build
```
### 📱 Android 构建
详细的Android构建指南请参考 [build-guide.md](build-guide.md)
#### 快速构建
```bash
# 使用自动化脚本
.\android-build.ps1 deploy
# 或使用Yarn命令
yarn android:deploy
```
## 🎯 使用说明
### 基本操作
1. **启动应用** - 双击桌面图标或从应用列表打开
2. **选择等级** - 在控制面板中选择所需的带宽占用等级
3. **开始控制** - 点击"开始占用带宽"按钮启动
4. **实时监控** - 在监控页面查看实时数据和图表
5. **查看统计** - 在统计页面查看详细的性能数据
6. **停止控制** - 点击"停止占用"按钮结束
### 功能页面
- **🏠 首页** - 状态概览和控制面板
- **📊 实时监控** - 速度趋势图和实时数据
- **📈 详细统计** - 网络信息和性能统计
- **⚙️ 设置** - 外观、语言、系统设置
### 高级功能
- **主题切换** - 支持浅色/深色/自动主题
- **语言切换** - 中文/English界面语言
- **开机自启** - 程序随系统启动
- **托盘最小化** - 最小化到系统托盘
- **通知提醒** - 系统通知消息
## 📁 项目结构
```
BandHot/
├── src/ # Vue 前端源码
│ ├── components/ # Vue 组件
│ │ ├── ControlPanel.vue # 控制面板
│ │ ├── Header.vue # 头部导航
│ │ ├── RealtimeMonitor.vue # 实时监控
│ │ ├── StatusCard.vue # 状态卡片
│ │ └── ...
│ ├── views/ # 页面视图
│ │ ├── HomeView.vue # 首页
│ │ ├── MonitorView.vue # 监控页面
│ │ ├── SettingsView.vue # 设置页面
│ │ └── StatsView.vue # 统计页面
│ ├── stores/ # Pinia 状态管理
│ │ ├── bandwidth.ts # 带宽状态
│ │ └── settings.ts # 应用设置
│ ├── i18n/ # 国际化
│ │ ├── locales/ # 语言文件
│ │ └── index.ts # i18n配置
│ ├── types/ # TypeScript 类型
│ ├── utils/ # 工具函数
│ └── main.ts # 应用入口
├── src-tauri/ # Tauri 后端源码
│ ├── src/ # Rust 源码
│ │ ├── bandwidth.rs # 带宽控制逻辑
│ │ ├── commands.rs # Tauri 命令
│ │ ├── lib.rs # 库入口
│ │ └── main.rs # 应用入口
│ ├── icons/ # 应用图标
│ └── tauri.conf.json # Tauri 配置
├── public/ # 静态资源
├── android-build.ps1 # Android构建脚本
├── build-guide.md # 构建指南
├── package.json # 项目配置
└── README.md # 项目说明
```
## 🔧 开发指南
### 开发环境设置
1. **克隆仓库**
```bash
git clone https://github.com/your-username/BandHot.git
cd BandHot
```
2. **安装Rust** (如果未安装)
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
3. **安装Tauri CLI**
```bash
yarn add -D @tauri-apps/cli@^2.0.0
```
4. **安装Android targets** (Android开发)
```bash
rustup target add aarch64-linux-android
rustup target add armv7-linux-androideabi
```
### 开发命令
```bash
# 前端开发
yarn dev # 启动Vite开发服务器
yarn build # 构建前端
# 桌面应用开发
yarn tauri:dev # 启动Tauri开发模式
yarn tauri:build # 构建桌面应用
# Android应用开发
yarn tauri:android # 启动Android开发模式
yarn android:build # 构建Android应用
yarn android:deploy # 完整Android部署流程
```
### 代码贡献
1. Fork 项目
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 创建 Pull Request
## 📊 性能特性
- **内存使用** - 典型运行时内存占用 < 100MB
- **CPU使用** - 空闲时CPU占用 < 1%
- **启动时间** - 桌面版启动时间 < 3秒
- **网络效率** - 带宽利用率 > 95%
## ⚠️ 注意事项
- 本软件仅用于**网络测试**和**教育目的**
- 请在**测试环境**中使用,避免影响生产网络
- 长时间运行可能消耗大量流量,请注意**流量费用**
- 建议在**WiFi环境**下使用,避免移动数据费用
- 使用前请确保拥有网络管理权限
## 🗺️ 开发路线图
### 🎯 v1.1 (计划中)
- [ ] 实时图表显示优化
- [ ] 网络质量检测功能
- [ ] 多网卡支持
- [ ] 定时任务功能
### 🎯 v1.2 (计划中)
- [ ] 日志记录和导出
- [ ] 网络拓扑发现
- [ ] 带宽分析报告
- [ ] API接口支持
### 🎯 v2.0 (远期计划)
- [ ] macOS 支持
- [ ] iOS 支持
- [ ] 云端同步
- [ ] 团队协作功能
## 🤝 贡献者
感谢所有为项目做出贡献的开发者!
## 📄 许可证
本项目采用 [MIT 许可证](LICENSE)
## 💬 支持与反馈
- 🐛 **问题反馈** - [提交 Issue](https://github.com/your-username/BandHot/issues)
- 💡 **功能建议** - [功能请求](https://github.com/your-username/BandHot/issues/new)
- 📧 **邮件联系** - bandhotapp@example.com
---
⭐ 如果这个项目对你有帮助,请给我们一个星标!
© 2025 BandHot 开发团队. 保留所有权利.