# RandomName **Repository Path**: Pfolg/RandomName ## Basic Information - **Project Name**: RandomName - **Description**: 一个具有 3D 旋转木马效果的随机点名工具 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-07 - **Last Updated**: 2026-04-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: Web, JavaScript, Python ## README # 随机点名系统 这是一个具有 3D 旋转木马效果的随机点名工具。前端页面通过 CSS 3D 构建立体卡片组,名单从本地的 `main.txt` 文件读取,由简易 Python HTTP 服务器提供服务。支持拖拽旋转、空格键抽卡与放回,并带有星空背景和金光特效。 >[!TIP] > DEMO: ## 功能特点 - 3D 旋转木马展示名单卡片,支持拖拽旋转和惯性滑动 - 自动缓慢旋转(未被拖拽时) - 按空格键随机抽取一个姓名,被抽中的卡片从卡组中飞出并居中放大显示 - 抽卡时背景模糊,卡片周围出现旋转的金光环 - 再次按空格键或将卡片放回卡组,恢复原状 - 点击遮罩层也可放回卡片 - 名单数量超过 16 个时,随机选取 16 个在卡组中展示,但仍从完整名单中抽取 - 页面顶部显示总人数及展示卡片数(超出上限时) - 无名单时显示友好的提示信息 - 星空背景动态闪烁 ![alt text](assets/PixPin_2026-03-07_23-57-15.gif) ## 文件说明 - `index.html`:前端主页面,包含样式、交互逻辑和 3D 场景。 - `server.py`:Python 3 编写的本地 HTTP 服务器,提供对 `index.html` 和 `main.txt` 的访问,并自动打开浏览器。 - `main.txt`:学生名单文件(需用户自行创建),每行一个姓名,UTF‑8 编码。 ## 使用方法 ### 方式一:使用 Python 服务器(推荐) 1. 确保系统已安装 Python 3。 2. 下载本仓库的 [Releases](https://gitee.com/Pfolg/RandomName/releases) 中的源代码,或克隆仓库。 3. 在 `server.py` 同级目录下创建 `main.txt`,每行填写一个姓名(例如张三、李四)。 4. 打开终端/命令行,进入该目录,执行: ```bash python server.py ``` 默认端口为 8000,也可通过参数指定端口: ```bash python server.py 8080 ``` 5. 服务启动后会自动打开浏览器访问 `http://localhost:8000`,即可开始使用。 ### 方式二:直接打开 `index.html`(不推荐) 由于浏览器安全限制(fetch 不能直接读取本地文件),直接打开 `index.html` 将无法加载 `main.txt`。因此必须通过 HTTP 服务器访问。 ## 自定义设置 如需调整卡组展示的最大数量,可修改 `index.html` 中的 `MAX_CARDS` 常量(默认为 16)。 ## 许可证 本项目采用 **CC BY-NC-SA 4.0** 许可证。您可以自由分享、修改本作品,但不得用于商业目的,且必须以相同方式共享。详细信息请参阅 [LICENSE](LICENSE) 文件或访问 [Creative Commons](https://creativecommons.org/licenses/by-nc-sa/4.0/)。 ## 鸣谢 音频资源来自: ## 关于 Release 本仓库的 [Releases](https://gitee.com/Pfolg/RandomName/releases) 页面提供已打包的可执行文件(例如 Windows 的 `.exe` 文件),适合没有 Python 环境的用户下载使用。打包文件内含 `index.html` 和 `server.py`(或已编译的服务器程序),下载解压后按上述说明操作即可。