Video / Animation Policy
Video is acceptable on public/static surfaces if: - It is self-hosted
in /opt/cryptpad/customize/assets/ or similar. - It is
muted, looping, and decorative. - It has a static fallback. - It
respects prefers-reduced-motion. - It does not require
third-party scripts or remote embeds. - It is small enough not to
degrade first load.
Preferred targets: - Home page background - Login/register/recovery background - Loading screen atmosphere
Avoid video inside actual editing tools.
Verification Requirements
Any implementation session should verify: - Container health:
cd /opt/cryptpad && docker compose ps - Public page
loads beyond Loading... - Browser console has no
app-breaking errors - Login works - Drive opens - At least one
document/tool opens - Main and sandbox origins still match
/opt/cryptpad/config/config.js - Anonymous restrictions are
not weakened - No secrets are copied into repo, feed, chat,
browser-visible assets, or logs
Use Playwright or an equivalent browser check. Header-only
curl is not enough for CryptPad UI work.