Skip to content

技术栈与开源组件

瓜子音乐由以下开源技术构建。本项目为闭源软件,在此向所有使用的开源组件及其开发者致谢。

合规与安全

以上信息基于项目实际依赖记录。如需报告开源组件的安全问题或有合规疑问,请通过 官网 联系我们。

桌面客户端

运行框架

组件版本用途
Electron42.x跨平台桌面应用框架,提供原生窗口、系统托盘、文件系统等能力
React18.x用户界面框架,组件化构建 UI
TypeScript5.x类型安全的 JavaScript 超集
Vite5.x前端构建工具,提供极速热更新和打包

界面组件

组件用途
Ant DesignUI 组件库,提供按钮、输入框、弹窗、表格等基础组件
@remixicon/react图标库,提供界面中使用的 SVG 图标
@dnd-kit拖拽排序组件,用于歌单内歌曲排序

音频播放

组件用途
Web Audio API浏览器内置音频引擎,支持 A/B 双缓冲无缝切歌
@applemusic-like-lyricsApple Music 风格逐字歌词渲染组件

数据存储

组件用途
better-sqlite3本地 SQLite 数据库,存储歌曲缓存、收藏、歌单、播放记录

系统能力

组件用途
koffi直接调用 Windows 原生 API(用于任务栏播控嵌入、SMTC 媒体控制)
systeminformation获取系统硬件和操作系统信息

音乐文件处理

组件用途
music-metadata解析音频文件元数据(歌名、艺术家、专辑、封面)
node-id3向 MP3 文件写入 ID3 标签(封面、歌词、歌曲信息)

网络与工具

组件用途
webdavWebDAV 客户端,连接远程存储播放音乐
crypto-js加密工具库,用于平台 API 请求加密
qrcode生成二维码,用于各平台扫码登录
string-similarity字符串相似度匹配,辅助搜索结果匹配
electron-updater自动更新组件,检测和安装新版本

构建与打包

组件用途
electron-builder打包为 Windows 安装程序(.exe)
vite-plugin-electronVite 与 Electron 集成插件
sharp高性能图像处理(图标生成)

文档站

组件用途
VitePress静态文档站点生成器(你正在浏览的页面)

后端服务

组件用途
Node.js后端运行环境
ExpressWeb 框架,提供 API 服务
PostgreSQL关系型数据库,存储用户、歌单、同步数据
PM2进程管理,保持服务持续运行
NginxWeb 服务器 / 反向代理

致谢

瓜子音乐的发展离不开以下项目的支持:

  • 开源社区:上述所有开源组件及其开发者
  • 洛雪音乐(LX Music):自定义音源协议的设计与社区维护
  • Apple Music Like Lyrics:逐字歌词渲染组件
  • 所有反馈问题的用户:你们让瓜子变得更好

如有遗漏或信息需更新,欢迎通过 官网 联系我们。