open-design/skills
Mohamed Abdallah 5da21e4054
feat(craft): animation-discipline module + opt-ins on mobile-app, mobile-onboarding, gamified-app (#515)
* feat(craft): add animation-discipline + opt-ins on mobile-app, mobile-onboarding, gamified-app

Animation discipline is the second behavioral craft module proposed in
#501 and explicitly invited in @mrcfps's post-merge comment on #502.

Differentiation from prior art (LottieFiles motion-design-skill, MIT,
96 stars): citation-grounded against primary sources rather than
asserted. Anchors:

- Tversky/Morrison/Bétrancourt 2002 (IJHCS) on the one demonstrated
  win-condition for animation
- Heer & Robertson TVCG 2007 on staging (with the actual durations
  they tested, not the laundered '300-1000ms' rule)
- Harrison/Yeo/Hudson CHI 2010 on perceived-duration scope (progress
  bars only, not skeletons)
- Doherty & Thadani IBM 1982 productivity numbers
- Material 3 motion tokens (M3 standard vs M2 legacy delta)
- IBM @carbon/motion durations
- Apple SwiftUI Animation API published defaults
- W3C View Transitions API + WCAG 2.2.2/2.3.3 calibration
- WebKit 2017 prefers-reduced-motion rationale

The 'common mistakes (lint these)' section busts five specific
folklore claims that don't survive primary-source check, including
the Doherty-400ms attribution and the M2-vs-M3 standard easing
confusion.

Three skills opt in via od.craft.requires:
  - mobile-app (animation-heavy mobile screens)
  - mobile-onboarding (multi-screen flow with transitions)
  - gamified-app (animations central to the format)

Refs #501.

* fix(craft): address review findings on animation-discipline

Six findings from @lefarcen's CHANGES_REQUESTED review on #515,
addressed in one pass. Reviewed by codex across three loops before
push.

P1 integration gaps:
- gamified-app and mobile-onboarding skills now require both
  state-coverage and animation-discipline (both render stateful UI
  with motion).
- craft/README.md silent-fallback example reframed as a
  planned-but-not-yet-vendored placeholder rather than a hard-coded
  next-to-ship slug. Note added pointing skill authors who arrive from
  older guidance at animation-discipline as the equivalent of the
  earlier 'motion' placeholder.

P2 reasoning completeness:
- > 500 ms duration row reframed: 'Reserved for cross-screen, staged,
  or platform-native transitions (e.g. M3 long2-extraLong4, Heer &
  Robertson 2007's per-stage recommendation)'. Surrounding paragraph
  rewritten with an enumerated category — 'Non-navigation
  microinteractions: hover, press, toggle, validation, chip selection,
  row expansion' — rather than the vague 'routine' term.
- New 'Flashing limits' subsection added in the Reduced motion
  section. WCAG 2.3.1 (Level A) three-flashes-in-any-one-second-period
  rule with the area/brightness threshold qualifier; WCAG 2.3.2 (AAA)
  unconditional rule. Photosensitive epilepsy framing.
- New 'Repeated and ambient motion' section added. Five rules covering
  iteration cap, WCAG 2.2.2 pause control after 5s, cancel-on-route,
  one-shot reward animations, and spinner timeout cross-referencing
  state-coverage.md.

File length now 154 lines (was 130, 80-110 craft target). Trade is
citation density and the new sections demanded by the integration
context (gamified/onboarding skills with looping motion).

Refs #501, #515.
2026-05-05 18:32:30 +08:00
..
audio-jingle Add live artifacts and Composio connector catalog (#381) 2026-05-05 16:42:11 +08:00
blog-post Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
critique Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
dashboard feat(craft): state-coverage module + opt-ins on dashboard, mobile-app, kanban-board (#502) 2026-05-05 16:31:05 +08:00
dating-web feat(skills): open-design-landing rename, kami skills, landing OG (#428) 2026-05-04 19:22:46 +08:00
design-brief feat: add design-brief skill with structured I-Lang input format (#184) 2026-05-01 23:11:38 +08:00
digital-eguide feat(skills): open-design-landing rename, kami skills, landing OG (#428) 2026-05-04 19:22:46 +08:00
docs-page Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
email-marketing feat(skills): open-design-landing rename, kami skills, landing OG (#428) 2026-05-04 19:22:46 +08:00
eng-runbook Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
finance-report Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
gamified-app feat(craft): animation-discipline module + opt-ins on mobile-app, mobile-onboarding, gamified-app (#515) 2026-05-05 18:32:30 +08:00
guizang-ppt docs: add Brazilian Portuguese (pt-BR) translations (#460) 2026-05-05 09:14:06 +08:00
hatch-pet feat(skills): open-design-landing rename, kami skills, landing OG (#428) 2026-05-04 19:22:46 +08:00
hr-onboarding Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
html-ppt docs: add Brazilian Portuguese (pt-BR) translations (#460) 2026-05-05 09:14:06 +08:00
html-ppt-course-module feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-dir-key-nav-minimal feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-graphify-dark-graph feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-hermes-cyber-terminal feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-knowledge-arch-blueprint feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-obsidian-claude-gradient feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-pitch-deck feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-presenter-mode-reveal feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-product-launch feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-taste-brutalist feat(skills): add taste-skill-derived web prototype and HTML PPT examples (#358) 2026-05-03 20:31:05 +08:00
html-ppt-taste-editorial feat(skills): add taste-skill-derived web prototype and HTML PPT examples (#358) 2026-05-03 20:31:05 +08:00
html-ppt-tech-sharing feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-testing-safety-alert feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-weekly-report feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-xhs-pastel-card feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-xhs-post feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
html-ppt-xhs-white-editorial feat(skills): integrate lewislulu/html-ppt-skill + 15 per-template Examples cards (#193) 2026-05-02 11:00:44 +08:00
hyperframes Add live artifacts and Composio connector catalog (#381) 2026-05-05 16:42:11 +08:00
image-poster Add live artifacts and Composio connector catalog (#381) 2026-05-05 16:42:11 +08:00
invoice Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
kami-deck feat(skills): open-design-landing rename, kami skills, landing OG (#428) 2026-05-04 19:22:46 +08:00
kami-landing feat(skills): open-design-landing rename, kami skills, landing OG (#428) 2026-05-04 19:22:46 +08:00
kanban-board feat(craft): state-coverage module + opt-ins on dashboard, mobile-app, kanban-board (#502) 2026-05-05 16:31:05 +08:00
live-artifact Add live artifacts and Composio connector catalog (#381) 2026-05-05 16:42:11 +08:00
magazine-poster Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
meeting-notes Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
mobile-app feat(craft): animation-discipline module + opt-ins on mobile-app, mobile-onboarding, gamified-app (#515) 2026-05-05 18:32:30 +08:00
mobile-onboarding feat(craft): animation-discipline module + opt-ins on mobile-app, mobile-onboarding, gamified-app (#515) 2026-05-05 18:32:30 +08:00
motion-frames Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
open-design-landing feat(skills): open-design-landing rename, kami skills, landing OG (#428) 2026-05-04 19:22:46 +08:00
open-design-landing-deck feat(skills): open-design-landing rename, kami skills, landing OG (#428) 2026-05-04 19:22:46 +08:00
pm-spec Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
pptx-html-fidelity-audit feat(pptx-fidelity): broaden script coverage beyond CJK (#308) 2026-05-03 00:53:28 +08:00
pricing-page Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
replit-deck Feat: add replit-deck skill with 8 themes from replit.com/slides (#74) 2026-04-30 11:19:52 +08:00
saas-landing feat(craft): add brand-agnostic craft references + Refero-derived lint rules (#225) 2026-05-02 11:00:33 +08:00
simple-deck Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
social-carousel Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
sprite-animation Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
team-okrs Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
tweaks Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
video-shortform Add live artifacts and Composio connector catalog (#381) 2026-05-05 16:42:11 +08:00
web-prototype Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
web-prototype-taste-brutalist feat(skills): add taste-skill-derived web prototype and HTML PPT examples (#358) 2026-05-03 20:31:05 +08:00
web-prototype-taste-editorial feat(skills): add taste-skill-derived web prototype and HTML PPT examples (#358) 2026-05-03 20:31:05 +08:00
web-prototype-taste-soft feat(skills): add taste-skill-derived web prototype and HTML PPT examples (#358) 2026-05-03 20:31:05 +08:00
weekly-update Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00
wireframe-sketch Refactor project name from "Open Claude Design" to "Open Design" (#1) 2026-04-28 16:03:35 +08:00