VoiceHub:
一个使用 Nuxt 4 全栈框架开发的现代化校园广播站点歌管理系统。系统提供完整的点歌、投票、排期管理、通知推送、数据分析、权限控制和数据库管理功能,支持多角色权限管理和灵活的系统配置。

主要功能:
- 智能点歌系统(核心)
- • 多平台音乐搜索:支持**云音乐、QQ 音乐、哔哩哔哩内容检索,可指定期望播出时段;
- • **云音乐深度集成:扫码登录后可同步歌单 / 最近播放、一键投稿,支持播客电台内容投稿;
- • 投稿限额:按时间段 / 用户角色配置投稿额度,控制系统负载;
- • 智能去重:识别重复歌曲,避免重复播放;
- • 播放与下载:内置播放器(支持音质切换、进度控制),管理员可批量下载歌曲(多音质可选);
- • 重播申请:用户可申请重播已播放歌曲,支持记录查看 / 撤回。
- 用户与权限管理
- • 多角色权限:普通用户、管理员、超级管理员分级管控;
- • 用户分类:按年级 / 班级管理用户,支持黑名单(歌曲 / 艺术家)自动过滤不当内容;
- • 安全机制:JWT 认证、验证码验证、密码 bcrypt 加密。
- 排期管理
- • 可视化排期:拖拽式界面管理歌曲排期与顺序;
- • 排期草稿:支持分步编辑、草稿发布,不影响公开展示;
- • 多时段配置:灵活设置播出时段,支持学期关联、排期打印(自定义纸张 / PDF 导出);
- • 公开展示:按日期分组展示正式排期,方便师生查看。
- 通知与数据管理
- • 实时通知:歌曲选中 / 投票 / **,支持自定义通知偏好、批量推送、第三方账号绑定;
- • 数据安全:数据库备份 / 恢复 / 重置、文件导入导出,自带数据库自检修复机制;
- • 操作审计:关键操作记录可追溯。
安装
Docker Compose
services:
voicehub:
image: ghcr.io/laoshuikaixue/voicehub:latest
container_name: voicehub
ports:
- 3000:3000
environment:
- DATABASE_URL=postgresql://user:password@postgres:5432/voicehub
- JWT_SECRET=your-jwt-secret-here
- NODE_ENV=production
depends_on:
postgres:
condition: service_healthy
restart: unless-stopped
postgres:
image: postgres:15-alpine
container_name: postgres
ports:
- 5432:5432
environment:
- POSTGRES_USER=user
- POSTGRES_PASSWORD=password
- POSTGRES_DB=voicehub
volumes:
- ./postgres_data:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U user -d voicehub']
interval: 5s
timeout: 5s
retries: 5
restart: unless-stopped
参数说明(更多参数建议去看文档)
:::tips
DATABASE_URL(环境变量):数据库连接地址
JWT_SECRET(环境变量):JWT 认证密钥,随机生成字符串
NODE_ENV(环境变量,可选):应用运行环境
3000(端口):Web 页面访问端口
5432(端口,可选):数据库访问端口,项目内部连接可以不映射
POSTGRES_USER(环境变量): 数据库用户名
POSTGRES_PASSWORD(环境变量): 数据库密码
POSTGRES_DB(环境变量): 自动创建的初始数据库名
:::
使用
浏览器中输入 http://NAS的IP:3000 就能看到界面

TIP:为了截图展示清晰,下面网页做了缩放看起来可能有点奇怪,实际体验效果会好很多
右上角,点击登录

输入默认管理员密码(admin/admin123)

进入后台管理界面,功能是真的丰富(下面就简单走个流程,说实话我也不是太会用)

创建用户,支持通过 Excel 表格批量导入

通知管理,可以向用户发送通知参与活动

TIP:设置以后,用户访问就能看到消息提醒

播出时段,设置好之后排期可以更加方便

投稿管理,可以限制投稿开放时间和投稿数量

学期管理,添加新学期方便后面点歌、排期及统计数据

站点配置,可以自定义点歌页面的风格

数据库,支持备份和恢复系统数据

来到用户访问页面,就能点歌了

支持**云音乐,QQ 音乐和哔哩哔哩

登录**云账号,可以获取最近播放和歌单里面的音乐进行投稿

歌曲列表能看到全部人的投稿,还可以点赞提高热度

回到管理后台,能看到用户投稿的动态

数据分析,了解用户点赞的热门歌曲

歌曲管理,可以将投稿的歌曲下载到本地

排期管理,设置音乐播放时段和日期

来到用户访问界面,就能看到发布的播出排期

值得一提的是,音乐可以**

点开详情,还能看到在线歌词

如果用户投稿入选了,也会有对应的消息提醒

总结
VoiceHub 是一款“UI 界面好看,功能丰富,简单易上手”的校园点歌系统,虽说是针对校园场景,但其实也可以用在家庭、小店、社区活动等地方。不过它毕竟不是播放系统,所以需要人为手动操作才能播放歌曲。总的来说,VoiceHub 这款应用挺不错值得推荐,至于有没有应用场景就看个人需求了。
综合推荐:⭐⭐⭐⭐(不错的点歌系统,场景稍微有点局限)
使用体验:⭐⭐⭐⭐⭐(UI 界面好看,功能丰富)
部署难易:⭐⭐⭐(中规中矩)︎