# 基于Rust+Tauri开发的简易windows桌面点名器 **Repository Path**: ucanner/choosename ## Basic Information - **Project Name**: 基于Rust+Tauri开发的简易windows桌面点名器 - **Description**: 基于Rust+Tauri开发的简易windows桌面点名器 - **Primary Language**: Rust - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-03-07 - **Last Updated**: 2026-04-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 课堂点名系统
![Version](https://img.shields.io/badge/版本-V26.3.5.1-blue.svg) ![Platform](https://img.shields.io/badge/平台-Windows-green.svg) ![Tauri](https://img.shields.io/badge/Tauri-2.x-orange.svg) ![Rust](https://img.shields.io/badge/Rust-1.70+-red.svg) **一款现代化的课堂随机点名桌面应用程序** [功能特性](#功能特性) • [快速开始](#快速开始) • [使用说明](#使用说明) • [技术栈](#技术栈)
--- ## 📖 项目简介 课堂点名系统是一款基于 **Tauri 2.x + Rust** 开发的 Windows 桌面应用程序,专为教师课堂点名设计。采用加权随机算法,确保每位学生被点到的概率公平合理,同时提供丰富的辅助功能。 ### 🎯 设计理念 - **公平公正**:加权随机算法,被点次数少的学生概率更高 - **简洁高效**:纯原生界面,无 Electron 臃肿,安装包小巧 - **功能丰富**:点名、计时、考试倒计时、小组管理等多种功能 --- ## ✨ 功能特性 ### 核心功能 | 功能 | 描述 | |------|------| | 🎲 **随机点名** | 加权随机算法,公平点名,支持语音播报 | | 👥 **多班级管理** | 支持创建多个班级,快速切换 | | 📊 **点名统计** | 记录每位学生被点次数,可视化展示 | | 📝 **批量点名** | 一次点名多人,支持自定义人数 | ### 辅助工具 | 功能 | 描述 | |------|------| | ⏱️ **课堂计时器** | 倒计时提醒,支持语音播报 | | 🖥️ **考试倒计时大屏** | 全屏考试倒计时,适合投影展示 | | 🎯 **高考倒计时** | 设置高考日期,实时倒计时 | | 🔗 **校内网站导航** | 快速访问学校常用网站 | ### 窗口模式 | 模式 | 描述 | |------|------| | 📋 **完整模式** | 完整功能界面,适合日常使用 | | 📝 **精简模式** | 缩小窗口,仅保留核心功能 | | 🎈 **悬浮球模式** | 桌面悬浮球,一键点名 | | 📌 **窗口置顶** | 始终显示在最前 | ### 其他特性 - 🌓 **亮色/暗色主题** 切换 - 🎨 **自定义字体和颜色** - 💾 **数据导入导出** 支持 - 🚀 **开机自启动** 支持 - 📌 **系统托盘** 最小化 --- ## 🚀 快速开始 ### 环境要求 - **操作系统**: Windows 10/11 - **开发环境** (可选): - [Node.js](https://nodejs.org/) 18+ - [Rust](https://www.rust-lang.org/) 1.70+ - [Tauri CLI](https://tauri.app/) 2.x ### 安装使用 #### 方式一:直接下载 1. 前往 [Releases](../../releases) 页面下载最新版本 2. 解压后运行 `课堂点名系统.exe` #### 方式二:从源码构建 ```bash # 克隆仓库 git clone https://github.com/your-username/choosename.git cd choosename # 安装依赖 npm install # 开发模式运行 npm run tauri dev # 构建生产版本 npm run tauri build ``` --- ## 📚 使用说明 ### 基本操作 1. **创建班级**:点击左侧 `+` 按钮或菜单 `文件 → 新建班级` 2. **导入学生**:菜单 `文件 → 导入名单`,支持批量导入 3. **开始点名**:选择班级后,点击右侧 `随机点名` 按钮 ### 数据导入格式 支持以下格式: ``` 张三 李四 王五 ``` 或带序号: ``` 1. 张三 2. 李四 3. 王五 ``` ### 快捷键 | 快捷键 | 功能 | |--------|------| | `Ctrl + N` | 新建班级 | | `Ctrl + I` | 导入名单 | | `F5` | 考试倒计时大屏 | | `Alt + T` | 窗口置顶 | --- ## 🛠️ 技术栈 | 技术 | 用途 | |------|------| | [Tauri 2.x](https://tauri.app/) | 跨平台桌面应用框架 | | [Rust](https://www.rust-lang.org/) | 后端核心逻辑 | | [HTML/CSS/JavaScript](https://developer.mozilla.org/) | 前端界面 | | [Web Speech API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Speech_API) | 语音播报 | ### 项目结构 ``` choosename/ ├── src/ # 前端源码 │ ├── index.html # 主页面 │ ├── float.html # 悬浮球页面 │ ├── main.js # 主逻辑 │ └── styles.css # 样式文件 ├── src-tauri/ # 后端源码 │ ├── src/ │ │ ├── lib.rs # 核心逻辑 │ │ └── main.rs # 入口文件 │ ├── init.db # 初始数据 │ ├── Cargo.toml # Rust 配置 │ └── tauri.conf.json # Tauri 配置 └── README.md # 说明文档 ``` --- ## 📝 数据存储 - **数据位置**: `%LOCALAPPDATA%\choosename\` - **now.db**: 当前数据文件 - **init.db**: 初始数据模板 ### 恢复原始数据 菜单 `设置 → 初始化数据 → 恢复原始数据` --- ## 🤝 贡献指南 欢迎提交 Issue 和 Pull Request! 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 提交 Pull Request --- ## 📄 许可证 本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件 --- ## 👨‍💻 作者 - 📧 Email: wb@mlyz.cn --- ## 🙏 致谢 感谢所有为这个项目做出贡献的人!
**如果这个项目对你有帮助,请给一个 ⭐️ Star!**