https://github.com/amll-dev/applemusic-like-lyrics
A lyric player component library aims to look similar to iPad version of Apple Music. Also with DOM, React and Vue bindings. 一个基于 Web 技术制作的类 Apple Music 歌词显示组件库,同时支持 DOM 原生、React 和 Vue 绑定。
https://github.com/amll-dev/applemusic-like-lyrics
apple-music astro audio audio-player fft javascript lyric music music-player player react rust tauri typescript vue vue3 wasm websocket
Last synced: about 5 hours ago
JSON representation
A lyric player component library aims to look similar to iPad version of Apple Music. Also with DOM, React and Vue bindings. 一个基于 Web 技术制作的类 Apple Music 歌词显示组件库,同时支持 DOM 原生、React 和 Vue 绑定。
- Host: GitHub
- URL: https://github.com/amll-dev/applemusic-like-lyrics
- Owner: amll-dev
- License: agpl-3.0
- Created: 2022-12-31T13:54:39.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2026-04-03T14:35:14.000Z (about 8 hours ago)
- Last Synced: 2026-04-03T15:50:46.169Z (about 7 hours ago)
- Topics: apple-music, astro, audio, audio-player, fft, javascript, lyric, music, music-player, player, react, rust, tauri, typescript, vue, vue3, wasm, websocket
- Language: TypeScript
- Homepage: http://amll.dev/
- Size: 348 MB
- Stars: 1,904
- Watchers: 7
- Forks: 188
- Open Issues: 41
-
Metadata Files:
- Readme: README-CN.md
- License: LICENSE
Awesome Lists containing this project
README

# Apple Music-like Lyrics
[English](./README.md) / 简体中文
一个基于 Web 技术制作的类 Apple Music 歌词显示组件库,同时支持[ DOM 原生](./packages/core/README.md)、[React ](./packages/react/README.md)和[ Vue ](./packages/react/README.md)绑定。
这是你能在前端系里能见到的最像 iPad Apple Music 的播放页面了。
尽管这个项目的目标并非完全模仿,但是会更好地打磨一些细节,以优于现阶段最好的歌词播放器。
**—— AMLL 生态作品 ——**
[AMLL TTML DB 逐词歌词仓库](https://github.com/amll-dev/amll-ttml-db)
[AMLL TTML Tool 逐词歌词编辑器](https://github.com/amll-dev/amll-ttml-tool)
/
[AMLL Editor 下一代逐词歌词编辑器](https://github.com/amll-dev/amll-editor)
[AMLL Page 网页播放器](https://github.com/apoint123/amll-page)
[引用了 AMLL 的项目汇总](https://github.com/amll-dev/applemusic-like-lyrics/discussions/397)
## AMLL 生态及源码结构
### 主要模块
- [](./packages/core/README.md):AMLL 核心组件库,以 DOM 原生方式编写,提供歌词显示组件和动态流体背景组件
- [](./packages/react/README.md):AMLL React 绑定,提供 React 组件形式的歌词显示组件和动态流体背景组件
- [](./packages/vue/README.md):AMLL Vue 绑定,提供 Vue 组件形式的歌词显示组件和动态流体背景组件
- [](./packages/lyric/README.md):AMLL 歌词解析模块,提供对 LyRiC, YRC, QRC, Lyricify Syllable 各种歌词格式的解析和序列化支持
## 浏览器兼容性提醒
本组件框架最低要求使用以下浏览器或更新版本:
- Chromuim/Edge 91+
- Firefox 100+
- Safari 9.1+
完整呈现组件所有效果需要使用以下浏览器或更新版本:
- Chromuim 120+
- Firefox 100+
- Safari 15.4+
参考链接:
- [https://caniuse.com/mdn-css_properties_mask-image](https://caniuse.com/mdn-css_properties_mask-image)
- [https://caniuse.com/mdn-css_properties_mix-blend-mode_plus-lighter](https://caniuse.com/mdn-css_properties_mix-blend-mode_plus-lighter)
## 性能配置参考
经过性能基准测试,五年内的主流 CPU 处理器均可以以 30FPS 正常带动歌词组件,但如果需要 60FPS 流畅运行,请确保 CPU 频率至少为 3.0Ghz 或以上。如果需要 144FPS 以上流畅运行,请确保 CPU 频率至少为 4.2Ghz 或以上。
GPU 性能在以下状况下能够以预期尺寸下满 60 帧运行:
- `1080p (1920x1080)`: NVIDIA GTX 10 系列及以上
- `2160p (3840x2160)`: NVIDIA RTX 2070 及以上
## 开发/构建/打包流程
### 前置依赖
- [Node.js](https://nodejs.org/)
- [pnpm](https://pnpm.io/)
- [Rust 工具链](https://rustup.rs/)
- [wasm-pack](https://rustwasm.github.io/wasm-pack/)
### 构建组件库
克隆本仓库后,在项目根目录执行以下指令:
```bash
# 安装依赖
pnpm install
# 生产构建所有库包
pnpm build:libs
```
### 构建单个包
```bash
# 示例:仅构建 @applemusic-like-lyrics/core
pnpm nx run @applemusic-like-lyrics/core:build
# 示例:开发构建 @applemusic-like-lyrics/lyric
pnpm nx run @applemusic-like-lyrics/lyric:build:dev
```
## 鸣谢
- [woshizja/sound-processor](https://github.com/woshizja/sound-processor)
- [FFmpeg](http://ffmpeg.org/)
- 还有很多被 AMLL 使用的框架和库,非常感谢!
### 特别鸣谢