[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f1ernhr4uazis3":3},{"code":4,"message":5,"data":6,"timestamp":36},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":16,"summary_md":17,"topic":18,"github_topics":21,"license":32,"homepage":33,"updated_at":34,"history":35},"kailashsr38\u002Fascii-magic-art",20,"634 animated ASCII art pieces for web pages, READMEs, wallpapers and terminals. Browse them in your terminal with npx ascii-magic-art and add one to your project in one prompt.","JavaScript",300,9,50,5,[],"634 个现成的动画 ASCII 艺术，可在终端里浏览，然后放进网页、README 或壁纸。","如果你只是想要一段装饰性的 ASCII 动画，不想自己一帧帧画，这个项目的路径很短：在终端里浏览素材，按回车，把这段素材的描述提示词复制给编码助手。代价是：634 个素材主要是别人做好的画面——适合当素材库，不适合当创作工具。\n\n## 解决什么问题\n你想给落地页、README banner 或终端 MOTD 加一点动画 ASCII。通常的做法是找一个生成器，但生成结果文字感重、样式选项少；或者手写 `draw(t)` 函数，反复调到满意为止。这里把“挑素材”移到了交互式终端：方向键在素材和分类之间移动，`s` 切换视觉风格，`a` 让文字和线条也一起重绘。挑完后，你拿到一段可直接粘贴给编码助手的提示词，也可以在终端里直接播出来看（`npx ascii-magic-art moonlit-sea`）。\n\n## 有什么不同\n每个素材都是独立的 ES 模块，导出 `meta` 和 `create()`，后者返回 `draw(t)`——一个从秒到帧的普通函数，输出字符串或 `{ text, color }` 对象。这个接口才是价值所在：同一份素材可以由[网页组件](https:\u002F\u002Fwww.ascii-magic.com\u002Fascii)、runtime player 或 canvas 导出器（可出 PNG\u002FGIF\u002F视频）分别消费。`runtime\u002Fglyphs.js` 里的 `restyle` 和 `withLook` 能把任意素材重绘成 10 种字符风格（dots、binary、numbers、dither 等），按每个字符的墨迹覆盖率和颜色亮度就近选字，而不是简单替换；自定义 `chars` 字符串会自动从浅到暗排序。\n\n代价在于范围：素材库提供的是成品画面，不是通用 ASCII 动画语言。做新素材需要按 `lib\u002Fkit.js` 写网格绘制代码，再跑 `node scripts\u002Fvalidate.mjs`，校验帧尺寸、字符集、是否真的在动，以及单帧绘制不超过 12 ms。风格系统还会刻意保留文字和线条，除非传 `all`，所以对一个 logo 重绘风格可能只覆盖一部分。另外项目主要面向浏览器动画，终端播放器和网页组件是主要使用方式，README 没有提供图片转 ASCII 的流程。\n\n## 谁值得试\n适合：想在 README、文档页或个人站点里放一个别致动画视觉的开发者，愿意从现有素材里挑一个，再用 `look`\u002F`chars`\u002F`mono` 属性微调。也适合 shell 启动或 MOTD 装饰，`--seconds=3` 或 `--frame` 能让它不喧宾夺主。做小 banner 但不想引入设计系统的人也能用。\n\n不适合：需要把自己的照片或 logo 转成 ASCII 的人。项目指向商业站点 ASCII Magic 提供这项服务，README 里只提到 `ocean-sunset` 和 `starry-ridge` 两个基于照片的素材需保留 Unsplash 许可。也不适合需要精细控制动画时序、或要嵌入更大 3D 场景的人——素材是固定网格，典型为 60×20 字符。\n\n## 使用条件与边界\n网页组件从项目自己的 CDN（`https:\u002F\u002Fwww.ascii-magic.com\u002Fascii\u002Fascii.js`）加载，页面行为依赖该域名持续可用；npm 包提供本地模块，但 README 推荐的接入方式是外部脚本。每个素材是 ES 模块，除 `lib\u002Fkit.js` 外没有依赖，打包和 tree-shaking 比较直接。`steps`、`density`、`dot-size` 只对半调 `dots` 风格生效。\n\n许可方面，MIT 覆盖代码和大部分素材，两个基于照片的素材按 [NOTICE](https:\u002F\u002Fgithub.com\u002Fkailashsr38\u002Fascii-magic-art\u002Fblob\u002Fmain\u002FNOTICE) 保留 Unsplash 许可。README 只把它们列为例外，没有说明 Unsplash 许可在实际使用中要求什么，商用前应自行读该文件。校验器的 12 ms 单帧上限是项目自设门槛，并非浏览器性能实测保证。\n\n## HotRepo 点评\nHotRepo 记录到 300 个总 star，以及正体为 JavaScript 的新项目榜第 21 名，观测日期 2026-10-25——这只是这个 5 天新项目的一次快照，不是日增数据。可比的日榜历史不足，无法判断热度能否持续。\n\n决定采用前，建议先确认 CDN 上的网页组件版本与 npm 包版本是否打算保持同步——README 没有记录两者之间的版本对应关系。",{"slug":19,"name":20},"media","多媒体与设计",[22,23,24,25,26,27,28,29,30,31],"animation","ascii","ascii-art","cli","generative-art","npx","readme","terminal","wallpaper","web-components","MIT","https:\u002F\u002Fwww.ascii-magic.com\u002Fascii","2026-10-25T02:58:29Z",[],1792912806]