arkaos 5.6.0 → 5.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +2 -2
  2. package/THE-ARKAOS-GUIDE.md +1 -1
  3. package/VERSION +1 -1
  4. package/arka/SKILL.md +1 -1
  5. package/config/skills-provenance.yaml +8 -0
  6. package/departments/brand/skills/design-system/SKILL.md +4 -2
  7. package/departments/brand/skills/motion-design/SKILL.md +362 -0
  8. package/departments/brand/skills/motion-design/references/director/choreography.md +93 -0
  9. package/departments/brand/skills/motion-design/references/director/context-adaptation.md +83 -0
  10. package/departments/brand/skills/motion-design/references/director/core-philosophy.md +53 -0
  11. package/departments/brand/skills/motion-design/references/director/decision-framework.md +91 -0
  12. package/departments/brand/skills/motion-design/references/director/disney-principles.md +102 -0
  13. package/departments/brand/skills/motion-design/references/director/emotion-mapping.md +71 -0
  14. package/departments/brand/skills/motion-design/references/director/motion-personality.md +89 -0
  15. package/departments/brand/skills/motion-design/references/director/narrative-structure.md +62 -0
  16. package/departments/brand/skills/motion-design/references/motion-design-skill.LICENSE +21 -0
  17. package/departments/brand/skills/motion-design/references/patterns/ambient-continuous.md +81 -0
  18. package/departments/brand/skills/motion-design/references/patterns/entrance-exit.md +82 -0
  19. package/departments/brand/skills/motion-design/references/patterns/multi-element.md +69 -0
  20. package/departments/brand/skills/motion-design/references/patterns/state-feedback.md +96 -0
  21. package/departments/brand/skills/motion-design/references/reference/property-selection.md +95 -0
  22. package/departments/brand/skills/motion-design/references/reference/quality-checklist.md +67 -0
  23. package/departments/brand/skills/motion-design/references/reference/timing-easing-tables.md +106 -0
  24. package/departments/brand/skills/motion-design/references/reference/troubleshooting.md +73 -0
  25. package/harness/codex/AGENTS.md +1 -1
  26. package/harness/copilot/copilot-instructions.md +1 -1
  27. package/harness/cursor/rules/arkaos.mdc +2 -2
  28. package/harness/gemini/GEMINI.md +1 -1
  29. package/harness/opencode/AGENTS.md +1 -1
  30. package/harness/opencode/agents/arka-architect-gabriel.md +1 -1
  31. package/harness/opencode/agents/arka-brand-director-valentina.md +1 -1
  32. package/harness/opencode/agents/arka-cfo-helena.md +1 -1
  33. package/harness/opencode/agents/arka-chief-of-staff-afonso.md +1 -1
  34. package/harness/opencode/agents/arka-community-strategist-beatriz.md +1 -1
  35. package/harness/opencode/agents/arka-content-strategist-rafael.md +1 -1
  36. package/harness/opencode/agents/arka-conversion-strategist-ines.md +1 -1
  37. package/harness/opencode/agents/arka-coo-sofia.md +1 -1
  38. package/harness/opencode/agents/arka-copy-director-eduardo.md +1 -1
  39. package/harness/opencode/agents/arka-cqo-marta.md +1 -1
  40. package/harness/opencode/agents/arka-cto-marco.md +1 -1
  41. package/harness/opencode/agents/arka-design-ops-lead-iris.md +1 -1
  42. package/harness/opencode/agents/arka-ecom-director-ricardo.md +1 -1
  43. package/harness/opencode/agents/arka-knowledge-director-clara.md +1 -1
  44. package/harness/opencode/agents/arka-leadership-director-rodrigo.md +1 -1
  45. package/harness/opencode/agents/arka-marketing-director-luna.md +1 -1
  46. package/harness/opencode/agents/arka-ops-lead-daniel.md +1 -1
  47. package/harness/opencode/agents/arka-pm-director-carolina.md +1 -1
  48. package/harness/opencode/agents/arka-revops-lead-vicente.md +1 -1
  49. package/harness/opencode/agents/arka-saas-strategist-tiago.md +1 -1
  50. package/harness/opencode/agents/arka-sales-director-miguel.md +1 -1
  51. package/harness/opencode/agents/arka-strategy-director-tomas.md +1 -1
  52. package/harness/opencode/agents/arka-tech-director-francisca.md +1 -1
  53. package/harness/opencode/agents/arka-tech-lead-paulo.md +1 -1
  54. package/harness/opencode/agents/arka-video-producer-simao.md +1 -1
  55. package/harness/zed/.rules +1 -1
  56. package/knowledge/commands-registry.json +1 -1
  57. package/knowledge/skills-manifest.json +16 -1
  58. package/package.json +1 -1
  59. package/pyproject.toml +1 -1
@@ -0,0 +1,91 @@
1
+ # Decision Framework
2
+
3
+ ## The First Questions
4
+
5
+ ### 1. Purpose?
6
+
7
+ | Purpose | Approach | Priority |
8
+ |---------|----------|----------|
9
+ | Draw attention | Scale, color, pulse | Responsiveness |
10
+ | Guide sequence | Stagger, directional flow | Clarity |
11
+ | Provide feedback | Immediate response | Speed |
12
+ | Create atmosphere | Subtle, continuous | Subtlety |
13
+ | Explain relationship | Position, connection | Legibility |
14
+ | Celebrate/reward | Overshoot, particles | Delight |
15
+
16
+ ### 2. Audience?
17
+ - Stressed → calm motion; Browsing → richer motion
18
+ - Task-focused → fast, minimal; Exploring → can be dramatic
19
+ - Seen 100x/day → fast, subtle; Seen once → can be dramatic
20
+
21
+ ### 3. Context?
22
+ - Busy layout → simpler motion; Empty → can be dramatic
23
+ - Other animations active → coordinate or stagger
24
+ - Small container → small motion
25
+
26
+ ## 4-Level Decision Hierarchy
27
+
28
+ ### Level 1: Motion Category
29
+
30
+ | Category | When |
31
+ |----------|------|
32
+ | Revealing | Content appearing |
33
+ | Concealing | Content disappearing |
34
+ | Transitioning | Between states/views |
35
+ | Emphasizing | Drawing attention |
36
+ | Responding | Reacting to interaction |
37
+ | Ambient | Background atmosphere |
38
+
39
+ ### Level 2: Motion Personality
40
+ Match to brand. See [motion-personality.md](motion-personality.md).
41
+
42
+ ### Level 3: Motion Direction
43
+
44
+ | Direction | Communicates |
45
+ |-----------|-------------|
46
+ | Upward | Growth, aspiration |
47
+ | Downward | Settling, completion |
48
+ | Leftward | Regression, departure |
49
+ | Rightward | Progression, arrival |
50
+ | Outward (scale up) | Importance, emergence |
51
+ | Inward (scale down) | Dismissal, removal |
52
+ | Center-seeking | Focus, convergence |
53
+ | Center-fleeing | Distribution, release |
54
+
55
+ ### Level 4: Implementation Properties
56
+ Choose animated properties. See [property-selection.md](../reference/property-selection.md).
57
+
58
+ ## Decision Quick-Path
59
+
60
+ ```
61
+ 1. PURPOSE → What does this motion DO?
62
+ ├── Feedback → short, ease-out, minimal
63
+ ├── Entrance → ease-out, personality-matched
64
+ ├── Exit → ease-in, 70% of entrance
65
+ ├── Emphasis → scale or color pulse
66
+ └── Ambient → slow, continuous, sine
67
+
68
+ 2. PERSONALITY → Match keywords
69
+ ├── Fun/bouncy → Playful
70
+ ├── Elegant/luxury → Premium
71
+ ├── Clean/professional → Corporate
72
+ └── Bold/dynamic → Energetic
73
+
74
+ 3. PROPERTIES → Minimum needed (two = sweet spot)
75
+
76
+ 4. TIMING → Check duration table, adjust for distance/weight
77
+
78
+ 5. EASING → Entering=ease-out, Leaving=ease-in, On-screen=ease-in-out, Looping=sine
79
+ ```
80
+
81
+ ## Evaluation Before Delivery
82
+
83
+ | Check | Question |
84
+ |-------|----------|
85
+ | Purpose | Clear function? |
86
+ | Personality | Matches brand/context? |
87
+ | Repetition | Fine on 100th viewing? |
88
+ | Attention | Respects viewer's focus? |
89
+ | Hierarchy | Reinforces importance? |
90
+ | Layers | Primary + secondary + ambient? |
91
+ | Timing | Duration appropriate? |
@@ -0,0 +1,102 @@
1
+ # Disney's 12 Principles — UI Adapted
2
+
3
+ ## 1. Squash and Stretch
4
+
5
+ - Squash: scale ~[1.2, 0.8]; Stretch: ~[0.85, 1.15]
6
+ - Impact: 2-4 frames (30-65ms); Recovery: 4-8 frames (65-130ms)
7
+ - Preserve volume: width +20% → height decreases proportionally
8
+ - Skip for premium/luxury brands
9
+
10
+ ## 2. Anticipation
11
+
12
+ - Small motion opposite to main direction before action
13
+ - Duration: 100-200ms, magnitude: 10-20% of main action
14
+ - Button: scale down 3% before expanding; Card: shift 5-10px away first
15
+ - Skip for micro-feedback (<150ms)
16
+
17
+ ## 3. Staging
18
+
19
+ - Dim non-hero elements to 40-60% opacity; optional 2-4px blur
20
+ - Hero enters 100-200ms after supporting elements
21
+ - One primary action per timing beat
22
+
23
+ ## 4. Straight Ahead vs. Pose to Pose
24
+
25
+ | Approach | Feel | Best For |
26
+ |----------|------|----------|
27
+ | Straight Ahead | Fluid, spontaneous | Particles, ambient, generative art |
28
+ | Pose to Pose | Planned, controlled | UI transitions, state changes |
29
+
30
+ ## 5. Follow Through and Overlapping Action
31
+
32
+ - Child delay: 50-150ms behind parent
33
+ - Trailing elements: offset stop times by 100-200ms
34
+ - Use spring easing for trailing parts (lower stiffness = more trailing)
35
+
36
+ ## 6. Slow In and Slow Out
37
+
38
+ | Context | Easing | Why |
39
+ |---------|--------|-----|
40
+ | Entrance | ease-out | Arrives smoothly |
41
+ | Exit | ease-in | Departs quickly |
42
+ | On-screen | ease-in-out | Smooth journey |
43
+ | Ambient loop | sine ease-in-out | Seamless |
44
+
45
+ **NEVER** linear for spatial movement. Linear only for: rotation, progress bars, timers.
46
+
47
+ ## 7. Arcs
48
+
49
+ - Add 10-20px perpendicular offset at path midpoint
50
+ - Subtle (5px) for corporate, pronounced (20px+) for playful
51
+ - Mechanical UIs can use straight paths intentionally
52
+
53
+ ## 8. Secondary Action
54
+
55
+ - Amplitude: 30-50% of primary; timing: 50-100ms after primary
56
+ - Different easing than primary
57
+ - Examples: card enters → shadow grows; button presses → ripple expands
58
+
59
+ ## 9. Timing
60
+
61
+ | Weight/Mood | Duration |
62
+ |-------------|----------|
63
+ | Heavy (modals, pages) | 400-800ms |
64
+ | Light (tooltips, toggles) | 100-250ms |
65
+ | Sad/serious | 600ms+ |
66
+ | Happy/light | 200-400ms |
67
+ | Urgent | 100-200ms |
68
+
69
+ Enter-exit asymmetry: entrances 30-50% longer than exits.
70
+
71
+ ## 10. Exaggeration
72
+
73
+ | Personality | Exaggeration |
74
+ |-------------|-------------|
75
+ | Playful | 15-25% |
76
+ | Energetic | 20-30% |
77
+ | Corporate | 0-5% |
78
+ | Premium | 0% |
79
+
80
+ - Scale overshoot: 10-30% beyond target; rotation: ±5-15°
81
+
82
+ ## 11. Solid Drawing
83
+
84
+ - Maintain consistent proportions across keyframes
85
+ - Use scale + rotation together for depth
86
+ - Shadow behavior matches implied light source
87
+
88
+ ## 12. Appeal
89
+
90
+ - Smooth curves over sharp angles; satisfying timing
91
+ - Personality consistency across all elements
92
+ - Appeal killers: jerky motion, inconsistent timing, abrupt stops, uniform animation
93
+
94
+ ## Combining Principles
95
+
96
+ | Recipe | Principles Used |
97
+ |--------|----------------|
98
+ | Button press | Anticipation + Squash/Stretch + Follow-Through + Secondary + Timing |
99
+ | Card entrance | Anticipation + Arcs + Slow In/Out + Follow-Through + Staging |
100
+ | Success celebration | Exaggeration + Secondary + Timing + Squash/Stretch + Appeal |
101
+ | Error shake | Timing + Slow In/Out + Staging (no exaggeration) |
102
+ | Loading spinner | Timing + Slow In/Out + Appeal |
@@ -0,0 +1,71 @@
1
+ # Emotion-to-Motion Mapping
2
+
3
+ ## Core Table
4
+
5
+ | Emotion | Character | Path | Easing | Duration |
6
+ |---------|----------|------|--------|----------|
7
+ | Joy/Delight | Bouncy, arcs, overshoot | Curved, upward | ease-out-back | 200-400ms |
8
+ | Calm/Serenity | Smooth, flowing | Gentle curves | sine ease-in-out | 500-1000ms |
9
+ | Urgency/Alert | Sharp, fast, direct | Straight lines | ease-out | 100-200ms |
10
+ | Sadness/Weight | Slow, downward | Drooping curves | cubic ease-in-out | 600-1200ms |
11
+ | Surprise/Impact | Sudden, expanding | Radial outward | ease-out-expo | 150-300ms |
12
+ | Elegance/Grace | Slow, controlled | Long smooth arcs | (0.4, 0, 0.2, 1) | 400-700ms |
13
+ | Playfulness | Bouncy, irregular | Arcs, squiggly | ease-out-back | 200-350ms |
14
+ | Confidence | Direct, decisive | Straight, horizontal | ease-out | 200-400ms |
15
+ | Curiosity | Exploratory, varied | Mixed, circular | varied | 300-500ms |
16
+ | Tenderness | Soft, gentle | Very subtle curves | soft ease-in-out | 600-1000ms |
17
+
18
+ ## Path as Emotional Language
19
+
20
+ | Path Type | Connotation |
21
+ |-----------|------------|
22
+ | Angular/sharp | Tense, urgent, mechanical |
23
+ | Curved/smooth | Relaxed, friendly, organic |
24
+ | Spiral | Playful, whimsical |
25
+ | Straight diagonal | Dynamic, purposeful |
26
+ | Vertical up | Growth, achievement |
27
+ | Vertical down | Settling, gravity |
28
+ | Horizontal | Journey, progress |
29
+ | Radial outward | Explosion, release |
30
+ | Radial inward | Focus, convergence |
31
+
32
+ ## Emotional Intensity
33
+
34
+ | Intensity | Characteristics | When |
35
+ |-----------|----------------|------|
36
+ | Low | Subtle opacity, tiny shifts | Ambient, routine |
37
+ | Medium | Visible but not demanding | Most UI interactions |
38
+ | High | Demands attention, large displacement | Errors, celebrations, onboarding |
39
+
40
+ ## Color Psychology
41
+
42
+ | Color | Emotion | Animation Pairing |
43
+ |-------|---------|------------------|
44
+ | Blue | Trust, calm | Smooth, medium transitions |
45
+ | Green | Success, growth | Upward, expansion, gentle overshoot |
46
+ | Red | Alert, urgency | Sharp, fast, horizontal shakes |
47
+ | Orange | Energy, warmth | Bouncy, diagonal paths |
48
+ | Purple | Premium, mystery | Slow reveals, elegant easing |
49
+ | Yellow | Optimism, caution | Quick pulses |
50
+ | Teal | Modern, clarity | Clean, snappy transitions |
51
+
52
+ ### Color Transition Rules
53
+ - Success: transition TO green (don't start with it)
54
+ - Error: flash red then settle (don't sustain)
55
+ - Warning: pulse yellow/amber for urgency
56
+ - Neutral: use opacity rather than color change
57
+
58
+ ## Context-Based Emotion Defaults
59
+
60
+ | Context | Default Emotion |
61
+ |---------|----------------|
62
+ | Form success | Joy + Confidence |
63
+ | Validation error | Mild urgency |
64
+ | Page load | Calm + Confidence |
65
+ | Navigation | Confidence |
66
+ | Notification | Mild surprise |
67
+ | Loading | Calm |
68
+ | Onboarding | Curiosity + Delight |
69
+ | Dashboard | Calm + Confidence |
70
+ | Purchase complete | Joy + Confidence |
71
+ | Delete/remove | Calm (respectful departure) |
@@ -0,0 +1,89 @@
1
+ # Motion Personality
2
+
3
+ ## Four Archetypes
4
+
5
+ ### Playful
6
+
7
+ | Parameter | Value |
8
+ |-----------|-------|
9
+ | Duration | 150-300ms |
10
+ | Easing | ease-out-back / bouncy springs |
11
+ | Overshoot | 10-20% |
12
+ | Paths | Arcs and curves, never straight |
13
+ | Squash-stretch | Yes, on impacts |
14
+
15
+ Signature: bounce settle, squash-stretch on press, rotation wobble, bright color pops, varied stagger timing.
16
+ Use for: children's apps, casual games, social media, celebrations, onboarding, creative tools.
17
+
18
+ ### Premium / Luxury
19
+
20
+ | Parameter | Value |
21
+ |-----------|-------|
22
+ | Duration | 350-600ms |
23
+ | Easing | cubic-bezier(0.4, 0, 0.2, 1) |
24
+ | Overshoot | 0% |
25
+ | Paths | Smooth curves, subtle parallax |
26
+ | Squash-stretch | Never |
27
+
28
+ Signature: slow fades, subtle scale (98%→100%), generous pauses, minimal properties (opacity+one), ultra-smooth.
29
+ Use for: fashion, finance, luxury brands, premium SaaS, portfolios, editorial.
30
+
31
+ ### Corporate / Professional
32
+
33
+ | Parameter | Value |
34
+ |-----------|-------|
35
+ | Duration | 200-400ms |
36
+ | Easing | cubic-bezier(0.2, 0, 0, 1) |
37
+ | Overshoot | 0-3% |
38
+ | Paths | Mostly straight, small arcs for emphasis |
39
+ | Squash-stretch | No |
40
+
41
+ Signature: consistent timing, clear state transitions, functional motion, predictable patterns, uniform stagger.
42
+ Use for: enterprise, dashboards, business tools, admin, healthcare, banking.
43
+
44
+ ### Energetic / Dynamic
45
+
46
+ | Parameter | Value |
47
+ |-----------|-------|
48
+ | Duration | 100-250ms |
49
+ | Easing | ease-out-expo / elastic |
50
+ | Overshoot | 15-30% |
51
+ | Paths | Dramatic arcs, large displacement, diagonal |
52
+ | Squash-stretch | Yes, exaggerated |
53
+
54
+ Signature: large scale changes (50-150%), fast color transitions, particle bursts, accelerating stagger, bold edge entrances.
55
+ Use for: gaming, sports, music, events, marketing, fitness apps.
56
+
57
+ ## Keyword Matching
58
+
59
+ | Keywords | Archetype |
60
+ |----------|-----------|
61
+ | fun, whimsical, bouncy, cute, friendly | Playful |
62
+ | elegant, minimal, luxury, sophisticated | Premium |
63
+ | clean, professional, business, dashboard | Corporate |
64
+ | dynamic, energetic, bold, exciting | Energetic |
65
+ | (unspecified) + UI | Corporate (default) |
66
+ | (unspecified) + illustration | Playful (default) |
67
+
68
+ ## Brand Motion Identity
69
+
70
+ Define three constants for recognizable motion:
71
+
72
+ ### 1. Signature Easing (80% of animations)
73
+ Playful: ease-out-back | Premium: (0.4,0,0.2,1) | Corporate: (0.2,0,0,1) | Energetic: ease-out-expo
74
+
75
+ ### 2. Duration Palette
76
+
77
+ | Tier | Playful | Premium | Corporate | Energetic |
78
+ |------|---------|---------|-----------|-----------|
79
+ | Quick | 150ms | 350ms | 200ms | 100ms |
80
+ | Standard | 250ms | 500ms | 300ms | 180ms |
81
+ | Slow | 400ms | 800ms | 450ms | 300ms |
82
+
83
+ ### 3. Entrance Pattern
84
+ Playful: bounce up from below | Premium: slow fade + scale 98%→100% | Corporate: slide right + opacity | Energetic: snap from edge + overshoot
85
+
86
+ ## Mixing Archetypes
87
+ - 90% primary archetype; specific moments can borrow another
88
+ - Ease into personality shifts, don't snap
89
+ - Example: corporate dashboard borrows Playful for success state only
@@ -0,0 +1,62 @@
1
+ # Narrative Structure
2
+
3
+ ## Four-Act Structure
4
+
5
+ ### Act 1: Anticipation (10-20%)
6
+ - Wind-up: small motion opposite to main direction
7
+ - Gathering: elements pull together before dispersing
8
+ - Dimming: context fades for focus; Tension: hold compressed ~50ms
9
+ - Skip for <150ms interactions and hover states
10
+
11
+ ### Act 2: Action (30-50%)
12
+ Peak energy. The primary communicative motion.
13
+ - Fast+direct (sharp easing) → alerts
14
+ - Smooth+flowing (gentle easing, curves) → transitions
15
+ - Explosive+expanding (expo, radial) → celebrations
16
+ - Controlled+precise (linear-ish) → data charts
17
+
18
+ ### Act 3: Reaction (10-20%)
19
+ - Shadows adjust: 50-100ms after primary
20
+ - Siblings shift: 50-150ms after primary
21
+ - Environment ripples: 100-200ms after primary
22
+ - Counter-motion: simultaneous with action
23
+ - Skip for simple toggles/checkboxes
24
+
25
+ ### Act 4: Resolution (20-30%)
26
+ - Overshoot settle (spring/back-easing); opacity reaches final (ease-out)
27
+ - 100-200ms breathing room before next motion
28
+ - Even 50ms of settling transforms the feel
29
+
30
+ ## Scaling to Duration
31
+
32
+ | Total | Anticipation | Action | Reaction | Resolution |
33
+ |-------|-------------|--------|----------|------------|
34
+ | 100-200ms | skip | 60-70% | skip | 30-40% |
35
+ | 200-400ms | 10-15% | 40-50% | 10-15% | 25-30% |
36
+ | 400-800ms | 15-20% | 30-40% | 15-20% | 20-25% |
37
+ | 800ms+ | 20% | 30-35% | 15-20% | 25-30% |
38
+
39
+ ## Multi-Beat Narratives
40
+
41
+ Transitions: overlap (fluid) | sequential (clear) | simultaneous (parallel)
42
+
43
+ Progressions:
44
+ - **Build-Up**: low → rising → peak → settling
45
+ - **Cycle**: depart → peak → return → repeat
46
+ - **Impact**: sudden action → ripple → slow settle
47
+
48
+ ## By Personality
49
+
50
+ | Personality | Anticipation | Action | Resolution |
51
+ |------------|-------------|--------|------------|
52
+ | Playful | Exaggerated wind-up | Bouncy, overshoot | Wobble settle |
53
+ | Premium | Subtle tension | Smooth, controlled | Elegant ease |
54
+ | Corporate | Minimal/none | Direct, efficient | Clean stop |
55
+ | Energetic | Quick gather | Explosive | Fast snap |
56
+
57
+ ## Common Patterns
58
+
59
+ - **Reveal**: tension (dim, scale 95%) → emerge (100%, full opacity) → surroundings adjust → settled
60
+ - **Departure**: gather (scale 98%) → exit → close gap → layout settles
61
+ - **Transformation**: destabilize (vibration) → morph → secondary appears → new state breathing
62
+ - **Celebration**: compress (50-100ms) → burst (scale, particles) → settle → calm with positive state
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 LottieFiles
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,81 @@
1
+ # Ambient & Continuous Patterns
2
+
3
+ Ambient amplitude: 10-20% of primary motion. Never compete for attention.
4
+
5
+ ## Breathing / Pulse
6
+
7
+ - Scale oscillation 0.98-1.02, sine ease-in-out, 2000-4000ms/cycle
8
+ - Alt: opacity oscillation 0.7-1.0
9
+
10
+ | Context | Scale Range | Duration | Opacity Range |
11
+ |---------|-----------|----------|--------------|
12
+ | Active indicator | 0.95-1.05 | 2000ms | 0.6-1.0 |
13
+ | Waiting/idle | 0.98-1.02 | 3000ms | 0.8-1.0 |
14
+ | Background element | 0.99-1.01 | 4000ms | 0.9-1.0 |
15
+ | CTA attention | 0.97-1.03 | 2500ms | 0.7-1.0 |
16
+
17
+ Pulsing >±5% scale becomes attention-demanding.
18
+
19
+ ## Floating / Hovering
20
+
21
+ - Y position ±5-15px, sine ease-in-out, 3000-5000ms/cycle
22
+ - Optional: slight rotation ±2-3°, offset 30% of position cycle
23
+
24
+ **Layered floating** (multiple elements — different durations prevent sync):
25
+ - Element 1: 4000ms, ±10px
26
+ - Element 2: 5500ms, ±8px (offset 30%)
27
+ - Element 3: 3500ms, ±12px (offset 60%)
28
+
29
+ ## Gradient Shift
30
+
31
+ - Background-position or gradient angle shift
32
+ - Duration: 8000-20000ms/cycle; range: ±10-20% position or ±15° angle
33
+ - Easing: linear or sine; should be imperceptible at a glance
34
+
35
+ ## Parallax
36
+
37
+ | Layer | Speed Ratio | Content |
38
+ |-------|------------|---------|
39
+ | Foreground | 1.0x | Interactive, text |
40
+ | Midground | 0.5x | Decorative, cards |
41
+ | Background | 0.2x | Patterns, scenery |
42
+ | Deep background | 0.1x | Texture, atmospheric |
43
+
44
+ **Scroll-driven**: total displacement <100px; avoid on mobile; never parallax text
45
+ **Mouse-driven**: foreground 10-20px max, background 5-10px opposite direction, 100-200ms interpolation
46
+
47
+ ## Continuous Rotation
48
+
49
+ - Spinners: linear easing, 1000-2000ms/revolution
50
+
51
+ | Variant | Speed | Use Case |
52
+ |---------|-------|----------|
53
+ | Slow spin | 10-30s/rev | Background decoration |
54
+ | Gear-like | 3-5s/rev | Technical/mechanical |
55
+ | Orbital | 5-15s/rev | Space/science theme |
56
+ | Wobble | 2-4s/cycle, sine | Playful idle |
57
+
58
+ ## Shimmer / Gleam
59
+
60
+ - Gradient sweep left-to-right, 1500-2500ms/sweep
61
+ - Pause 2000-5000ms between sweeps
62
+ - Opacity gradient: 0%→30%→0%
63
+ - Use for: skeleton loading, premium accents, "new" badges
64
+
65
+ ## Particle Ambient
66
+
67
+ ### Snow/Falling: 10-20 elements, 20-60px/s down, ±10-20px drift, 3-8px, 30-70% opacity
68
+ ### Dust/Motes: 5-10 elements, 10-30px/s mixed, 2-5px, 20-50% opacity
69
+ ### Sparkle/Stars: 8-15 elements, opacity pulse 0→100%→0, 500-1500ms/sparkle, random stagger
70
+
71
+ **Performance**: <20 ambient elements, transform+opacity only, larger/fewer over small/numerous
72
+
73
+ ## Combining Ambient Layers
74
+
75
+ | Layer | Type | Example |
76
+ |-------|------|---------|
77
+ | Background | Gradient shift or parallax | Slow color temperature change |
78
+ | Midground | Floating or particles | Gentle floating elements |
79
+ | Foreground | Breathing or shimmer | Subtle pulse on content |
80
+
81
+ Total ambient: max 20% of primary motion's visual energy.
@@ -0,0 +1,82 @@
1
+ # Entrance & Exit Patterns
2
+
3
+ ## Entrance Strategies
4
+
5
+ ### 1. Direct Entrance (Slide In)
6
+ - Position + opacity; offset 20-40px + opacity 0 → final position + opacity 1
7
+ - Easing: ease-out; duration 200-350ms
8
+
9
+ | Personality | Offset | Easing | Overshoot |
10
+ |------------|--------|--------|-----------|
11
+ | Playful | 30-50px | ease-out-back | 10-15% |
12
+ | Premium | 15-25px | (0.4, 0, 0.2, 1) | 0% |
13
+ | Corporate | 20-30px | (0.2, 0, 0, 1) | 0-3% |
14
+ | Energetic | 40-80px | ease-out-expo | 15-25% |
15
+
16
+ Direction: below=arrival, right=forward, left=back, above=dropdown/authority.
17
+
18
+ ### 2. Emergent Entrance (Scale In)
19
+ - Scale + opacity; start 85-95% + opacity 0 → 100% + opacity 1
20
+ - Duration 250-400ms
21
+
22
+ | Personality | Start Scale | Easing | Overshoot |
23
+ |------------|------------|--------|-----------|
24
+ | Playful | 70-80% | ease-out-back | 10-20% |
25
+ | Premium | 95-98% | (0.4, 0, 0.2, 1) | 0% |
26
+ | Corporate | 90-95% | (0.2, 0, 0, 1) | 0-3% |
27
+ | Energetic | 50-70% | ease-out-expo | 15-30% |
28
+
29
+ Best for: modals, dialogs, notifications, popovers, tooltips.
30
+
31
+ ### 3. Reveal Entrance (Clip/Mask)
32
+ - clip-path or mask + opacity; 300-500ms, ease-out
33
+ - Directions: top-to-bottom (dramatic), L-to-R (reading order), center-out (focus), edge-in (contained)
34
+
35
+ ### 4. Assembled Entrance (Multi-Part)
36
+ - Parts arrive from different positions; stagger 50-100ms; total 300-600ms
37
+ - Best for: icon assembly, logo builds, data viz construction
38
+
39
+ ## Exit Strategies
40
+
41
+ **Rule**: Exits = 65-75% of entrance duration.
42
+
43
+ ### 1. Direct Exit (Slide Out)
44
+ - Offset 20-40px + opacity 0; ease-in; 150-250ms
45
+
46
+ ### 2. Dissolve Exit (Fade Out)
47
+ - Opacity (+ optional scale to 98%); ease-in; 150-250ms
48
+ - Best for: gentle departures, backgrounding, crossfades
49
+
50
+ ### 3. Collapse Exit (Shrink Out)
51
+ - Scale 85-95% + opacity 0; ease-in; 150-250ms
52
+ - Best for: deletion, closing modals, dismissal
53
+
54
+ ### 4. Transfer Exit (Move Away)
55
+ - Position toward destination + scale shrink; ease-in-out; 250-400ms
56
+ - Best for: add-to-cart, save-to-collection, move-to-folder
57
+
58
+ ## Entrance-Exit Continuity
59
+ - Eye follows naturally from exit to entrance
60
+ - Exit point near entry point when possible
61
+ - 100-150ms timing overlap between exit and entrance
62
+ - Same easing family for paired entrance-exit
63
+
64
+ ## Common Recipes
65
+
66
+ ### Notification Slide-In
67
+ 1. Slide from right + opacity (250ms, ease-out)
68
+ 2. Overshoot 3-5% (corporate) or 10-15% (playful)
69
+ 3. Icon appears (100ms, 50ms delay)
70
+
71
+ ### Toast Dismiss
72
+ 1. Slide toward edge + opacity (180ms, ease-in)
73
+ 2. Remaining toasts shift up (200ms, ease-in-out)
74
+
75
+ ### Dropdown Open
76
+ 1. Scale Y 0→100% (200ms, ease-out)
77
+ 2. Items stagger fade in (30ms apart, 50ms after container)
78
+
79
+ ### Page Transition (Forward)
80
+ 1. Current page slides left + fades (300ms, ease-in)
81
+ 2. New page from right + fades in (400ms, ease-out, 100ms delay)
82
+ 3. Shared elements morph (400ms, ease-in-out)
@@ -0,0 +1,69 @@
1
+ # Multi-Element Patterns
2
+
3
+ ## Stagger Recipes
4
+
5
+ ### List Items
6
+ - Slide up 20px + fade (200ms, ease-out); stagger 40-60ms; total <400ms for 8 items
7
+
8
+ | Personality | Duration | Stagger | Easing |
9
+ |------------|---------|---------|--------|
10
+ | Playful | 250ms | 60ms | ease-out-back |
11
+ | Premium | 350ms | 80ms | (0.4, 0, 0.2, 1) |
12
+ | Corporate | 200ms | 50ms | (0.2, 0, 0, 1) |
13
+ | Energetic | 150ms | 30ms | ease-out-expo |
14
+
15
+ ### Grid Cards
16
+ - Scale from 95% + fade (250ms, ease-out); stagger 50-80ms reading order; +20ms per new row
17
+ - Shadow 50ms after card. Alt patterns: center-out, column-first, random
18
+
19
+ ### Navigation Items
20
+ - Slide from side + fade (180ms, ease-out); stagger 30-50ms; total <300ms
21
+
22
+ ### Dashboard Widgets
23
+ ```
24
+ 0ms — Skeletons visible
25
+ 100ms — Hero metric (250ms, ease-out)
26
+ 200ms — Widgets begin (200ms each, 60ms stagger)
27
+ 350ms — Hero complete, chart draws (300ms)
28
+ 500ms — All landed
29
+ 650ms — Ambient pulse begins
30
+ ```
31
+
32
+ ## Coordinated Sequences
33
+
34
+ ### Modal with Content
35
+ 0ms: backdrop dims (200ms) → 50ms: modal scales 95%→100% (300ms) → 200ms: title → 280ms: body → 350ms: buttons → 400ms: close button. Content in reading order.
36
+
37
+ ### Tab Switch
38
+ 0ms: indicator slides (250ms, ease-in-out) + old fades (150ms) → 100ms: new content from tab direction (200ms) → 150ms: elements stagger (40ms)
39
+
40
+ ### Accordion
41
+ Expand: arrow rotates (150ms) + height expands (250ms) + content fades at 50ms (200ms); siblings shift (200ms). Collapse: reverse, ease-in.
42
+
43
+ ### Page Transition
44
+ Current slides left+fades (300ms, ease-in) → new from right (400ms, ease-out, 100ms delay) → hero scales in → content staggers (50ms). Optional shared element morph (400ms).
45
+
46
+ ### Drag and Drop
47
+ Drag: lift (scale 1.03, 150ms); others shift (200ms). Drop: settle (scale 1.0, 200ms); gaps close.
48
+
49
+ ## Choreography Rules
50
+
51
+ ### Timing Overlap
52
+ 0%=methodical | 25%=brisk (standard) | 50%=fluid | 75%=rapid (energetic)
53
+
54
+ ### Group Rules
55
+ - Same easing family; different durations/delays fine
56
+ - Exception: secondary/ambient can differ
57
+
58
+ ### Shared Origin
59
+ Motion from trigger point; closer=first; farther=more delay
60
+
61
+ ### Counter-Motion
62
+
63
+ | Hero Does | Counter-Motion |
64
+ |-----------|---------------|
65
+ | Slides right | Background left (20-30%) |
66
+ | Scales up | Shadow spreads |
67
+ | Lifts up | Shadow drops+softens |
68
+ | Rotates CW | Ambient CCW |
69
+ | Expands | Siblings compress |