mirror of
https://github.com/atdunbg/Nekosonic-Music.git
synced 2026-06-21 16:48:48 +08:00
dcfada69404f2a9b18ad7e848129515c222e4582
- 重构皮肤系统:提取 skins.ts 管理预设皮肤,CSS 变量由 JS 动态设置 - 提取公共 color.ts 工具函数(hexToRgba/toHex),消除重复定义 - 修复 seek 时暂停状态丢失的 bug(后端 audio_paused 状态保留) - 本地音乐页面:循环排序切换、三点菜单、打开所在文件夹 - 本地音乐文件夹管理:支持启用/禁用切换,兼容旧数据迁移 - 新增 show_item_in_folder 命令(Windows/macOS/Linux 跨平台) - 外观一体化:有壁纸时 TitleBar/Sidebar 透明,PlayerBar 统一透明度+backdrop-blur - 进度条外层直角、内层填充圆角 - 滚动条默认透明,悬停时显示 - 移除 PageHeader 粘性栏 - 内存优化:keep-alive TTL 5min、pageCache TTL 30min/上限30条、colorCache 上限200 - recentLocal 防抖写入、播放器 tick interval 500ms
🎵 播放
- 多音质选择(标准 / 较高 / HQ / SQ / Hi-Res)
- 私人漫游 FM(个性化推荐)
- 系统媒体控制集成(MPRIS / SMTC / Now Playing)
- 音频输出设备选择
🔍 发现
- 关键词搜索(歌曲 / 歌手 / 专辑)+ 搜索建议 + 热门搜索
- 歌单浏览(推荐 / 排行榜 / 用户 / 收藏)
- 歌手详情(热门歌曲 / 专辑 / 简介 + 关注)
- 专辑详情
- 每日推荐歌曲
🎤 歌词与评论
- 实时滚动歌词(ease-out 缓动 / 点击跳转 / 渐变透明度)
- 歌词翻译
- 全屏漫游模式(封面主色提取 + 歌词/评论双标签)
- 歌曲评论(无限滚动 + 点赞)
❤️ 收藏与下载
- 一键喜欢 / 取消喜欢(同步到网易云账号)
- 歌曲下载
- 音乐云盘(上传 / 删除 / 详情 / 存储空间 / 上传进度)
- 本地音乐(多文件夹扫描 / 封面补全)
- 下载音乐(独立管理 / 删除)
🎨 个性化
- 多主题色(天蓝 / 翠绿 / 玫红 / 紫罗兰 / 橙色 / 青色 / 粉色)
- 自定义快捷键(应用内 + 系统全局)
- 关闭行为设置
- 自动更新
安装
前往 Releases 下载对应平台安装包。
配置开发环境
npm install
npm run tauri dev # 开发
npm run tauri build # 构建
环境要求:Node.js ≥ 18 · Rust ≥ 1.70 · Tauri CLI 2
技术栈
| 层级 | 技术 |
|---|---|
| 桌面框架 | Tauri 2 |
| 前端 | Vue 3 + TypeScript + Pinia |
| 样式 | Tailwind CSS v4 + CSS 变量主题 |
| 音频解码 | symphonia + ringbuf |
| 媒体控制 | souvlaki |
| 网易云 API | ncm-api-rs |
| 构建 | Vite 6 |
Todo
- 评论查看
- 歌曲下载
- 本地音乐
- 歌手详情页
- 专辑详情页
- 自定义全局快捷键
- 自动更新
- 歌词翻译
- 更多主题
- 音乐云盘
- MV 播放
- 桌面歌词
欢迎提 Issue 和 Pull request。
开源许可
本项目仅供个人学习研究使用,禁止用于商业及非法用途。基于 MIT License 开源。
Description
Languages
Vue
55.5%
Rust
26.5%
TypeScript
17%
CSS
0.9%