The mobile menu becomes a surface you drag rather than one that appears and vanishes: it tracks the finger, carries its velocity when flicked, can be caught mid-flight, and resists past the edge instead of stopping dead. Buttons react on press rather than on release, and the browser's tap delay is gone — nothing here zooms, so the wait bought nothing. prefers-reduced-motion, prefers-reduced-transparency and prefers-contrast are now respected instead of ignored: looping decoration stops, transitions fade rather than slide, the chat jumps to the newest message, frosted panels turn solid and edges get drawn. What stops is the movement, never the information — recording indicators and other status stay. Also bumps the desktop download buttons to 0.5.0. The version lives in one constant per source file and tests/desktop-download-links.test.mjs fetches every generated URL, so the links are proven to serve a real asset rather than merely looking well-formed. Claude-Session: https://claude.ai/code/session_01ARFZ9G6P1e1B4w75kFaeNw
28 lines
821 B
Plaintext
28 lines
821 B
Plaintext
# Dependencies
|
|
node_modules/
|
|
|
|
# Local environment noise
|
|
.npm/
|
|
npm-debug.log*
|
|
.DS_Store
|
|
**/.DS_Store
|
|
|
|
# Operator ICE override holds TURN credentials — never commit it.
|
|
# Use config/ice-servers.example.js as the template.
|
|
config/ice-servers.js
|
|
|
|
# Internal security review notes. These describe attack paths against specific
|
|
# releases in enough detail to reproduce them, which is useful in private and
|
|
# harmful in a public repository — users who have not updated yet would be the
|
|
# ones exposed. Keep them out of the tree.
|
|
SECURITY_AUDIT.md
|
|
SECURITY_AUDIT*.md
|
|
audit/
|
|
|
|
# Agent tooling — local only. Skills (mine or third-party), their lockfile and
|
|
# the per-machine Claude Code settings describe how someone works on this repo,
|
|
# not what the repo is. They must never reach GitHub.
|
|
.agents/
|
|
.claude/
|
|
skills-lock.json
|