尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Pick your seat on a map of the study room. You get a short black & white animation, as a portrait GIF made for WhatsApp, showing your friend walking in through the door and finding you. The camera opens on the whole room, follows your friend, and pulls back at the end to show the full route.
npm start # http://localhost:5173
No build step: plain HTML + ES modules, so it can be deployed as a static site (e.g. Vercel).
js/rooms.js – room config (front row split by the door, back row, groups of tables) → table/seat geometry and the written directions.js/path.js – A* route around tables and seated students, string-pulled, rounded corners, and a speed profile that eases in/out and slows through bends.js/character.js – style #9 characters drawn from a small skeleton. Feet follow planted/swing paths with IK knees, so they don't slide.js/scene.js – the story timeline and a shot-based camera (holds, short pans, zoom-out outro). renderFrame(ctx, t) is a pure function of time, so the preview and the GIF match frame for frame.js/gif.js – in-browser GIF export: 540×675 portrait, 8 greys, unchanged pixels encoded as transparent, so a GIF is ~1–1.5 MB.Room layouts and who's who (you = boy, friend = girl by default) live in the gear-icon settings panel. They are saved in your browser, so you set them once; "Copy JSON" lets you bake rooms into DEFAULT_ROOMS.
The URL hash encodes room + seat, so a link reproduces the same animation.
characters/ holds the Gemini concept sheets used to pick the art style (scripts/gen_characters.py).
The script reads GEMINI_API_KEY from .env, which is git-ignored — never commit a key.