搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

guzhezao/needle

多媒体与设计

可交互的 3D 黑胶唱机展示,通过拖拽、换盘和变速探索四个章节,声音可选。

117
0
JavaScript
创建于 7 天前

项目介绍

NEEDLE 是一个浏览器里的可交互黑胶唱机:唱机以分层方式搭建,并按触摸、拆解、纹路、回归四个滚动章节呈现。它面向想探索一个设计过的 3D 场景的人,而不是需要真正播放音乐的用户。

可以拖动唱片控制旋转,切换三张唱片,并在 33⅓ 和 45 RPM 之间变速。声音由程序合成,默认关闭,需从顶栏手动开启;它不是采样音乐,也不是专业唱机音频引擎。

模型、唱片标签和音频都由代码生成,不需要下载外部模型或图片。技术栈是 Three.js、Vite 和 JavaScript。

本地运行

环境要求:Node.js 20.19+ 或 22.12+,也支持 Node.js 24。

npm ci
npm run dev

然后打开 Vite 输出的本地开发地址。检查与构建命令如下:

npm test
npm run build
npm run preview

也可以直接打开在线站点体验四个章节。

使用约束

  • 音频是程序化节拍,不是商业音乐采样,也不是专业唱机音频引擎。
  • 声音每次默认关闭,需要手动开启。
  • 项目目前未单独声明源码许可证;依赖声明汇总在 THIRD_PARTY_NOTICES.md。

HotRepo 点评

在 2026-11-09 的 JavaScript 新项目榜中,采样曲线显示 Star 在约 1.5 小时内从 101 增至 109,该统计窗口新增 8 Star,Fork 无变化。项目没有 GitHub 全语言日榜名次,也没有 Hacker News 讨论,因此这些数据只说明单日出现过短暂关注,不能据此判断趋势。更值得考察的是这个可交互场景的设计完成度以及可复现的本地构建,而不是音频保真度。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。

相关推荐

  1. rauchg/vinyl在浏览器中从沟槽开始物理模拟黑胶唱片的刻录、压制与播放。JavaScript104