@yojahny/wp-design-library 0.3.0 → 0.5.1

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 (186) hide show
  1. package/.env.example +7 -0
  2. package/README.md +52 -9
  3. package/bin/library.mjs +11 -0
  4. package/entries/ada/entry.md +55 -0
  5. package/entries/ada/strip.webp +0 -0
  6. package/entries/air/captures/2/measure.json +325 -0
  7. package/entries/air/captures/2/strip.webp +0 -0
  8. package/entries/air/entry.md +62 -0
  9. package/entries/air/strip.webp +0 -0
  10. package/entries/ais-community-dark-depth/strip.webp +0 -0
  11. package/entries/apple-home/captures/2/measure.json +91 -0
  12. package/entries/apple-home/captures/2/strip.webp +0 -0
  13. package/entries/apple-home/entry.md +64 -0
  14. package/entries/apple-home/strip.webp +0 -0
  15. package/entries/apple-macbook-neo/captures/2/measure.json +570 -0
  16. package/entries/apple-macbook-neo/captures/2/strip.webp +0 -0
  17. package/entries/apple-macbook-neo/entry.md +62 -0
  18. package/entries/apple-macbook-neo/strip.webp +0 -0
  19. package/entries/apple-watch-ultra-4/entry.md +63 -0
  20. package/entries/apple-watch-ultra-4/measure.json +481 -0
  21. package/entries/apple-watch-ultra-4/strip.webp +0 -0
  22. package/entries/bpco/captures/2/strip.webp +0 -0
  23. package/entries/bpco/captures/3/strip.webp +0 -0
  24. package/entries/bpco/entry.md +81 -0
  25. package/entries/bpco/strip.webp +0 -0
  26. package/entries/column/captures/2/measure.json +996 -0
  27. package/entries/column/captures/2/strip.webp +0 -0
  28. package/entries/column/entry.md +82 -0
  29. package/entries/column/strip.webp +0 -0
  30. package/entries/cthdrl/captures/2/measure.json +251 -0
  31. package/entries/cthdrl/captures/2/strip.webp +0 -0
  32. package/entries/cthdrl/entry.md +86 -0
  33. package/entries/cthdrl/strip.webp +0 -0
  34. package/entries/dala-craftedbygc/entry.md +69 -0
  35. package/entries/dala-craftedbygc/strip.webp +0 -0
  36. package/entries/dock/captures/2/measure.json +206 -0
  37. package/entries/dock/captures/2/strip.webp +0 -0
  38. package/entries/dock/entry.md +62 -0
  39. package/entries/dock/strip.webp +0 -0
  40. package/entries/dub/captures/2/measure.json +37 -0
  41. package/entries/dub/captures/2/strip.webp +0 -0
  42. package/entries/dub/entry.md +61 -0
  43. package/entries/dub/strip.webp +0 -0
  44. package/entries/duolingo/captures/2/measure.json +138 -0
  45. package/entries/duolingo/captures/2/strip.webp +0 -0
  46. package/entries/duolingo/entry.md +65 -0
  47. package/entries/duolingo/strip.webp +0 -0
  48. package/entries/elevenlabs/captures/2/measure.json +160 -0
  49. package/entries/elevenlabs/captures/2/strip.webp +0 -0
  50. package/entries/elevenlabs/entry.md +62 -0
  51. package/entries/elevenlabs/strip.webp +0 -0
  52. package/entries/flying-papers/captures/2/measure.json +291 -0
  53. package/entries/flying-papers/captures/2/strip.webp +0 -0
  54. package/entries/flying-papers/entry.md +61 -0
  55. package/entries/flying-papers/strip.webp +0 -0
  56. package/entries/gsap/captures/2/measure.json +120 -0
  57. package/entries/gsap/captures/2/strip.webp +0 -0
  58. package/entries/gsap/entry.md +62 -0
  59. package/entries/gsap/strip.webp +0 -0
  60. package/entries/letters/captures/2/measure.json +20 -0
  61. package/entries/letters/captures/2/strip.webp +0 -0
  62. package/entries/letters/entry.md +62 -0
  63. package/entries/letters/strip.webp +0 -0
  64. package/entries/micro/captures/2/measure.json +852 -0
  65. package/entries/micro/captures/2/strip.webp +0 -0
  66. package/entries/micro/entry.md +61 -0
  67. package/entries/micro/strip.webp +0 -0
  68. package/entries/monopo-saigon/captures/2/measure.json +145 -0
  69. package/entries/monopo-saigon/captures/2/strip.webp +0 -0
  70. package/entries/monopo-saigon/entry.md +64 -0
  71. package/entries/monopo-saigon/strip.webp +0 -0
  72. package/entries/notion/captures/2/measure.json +338 -0
  73. package/entries/notion/captures/2/strip.webp +0 -0
  74. package/entries/notion/entry.md +66 -0
  75. package/entries/notion/strip.webp +0 -0
  76. package/entries/origin-financial/captures/2/measure.json +169 -0
  77. package/entries/origin-financial/captures/2/strip.webp +0 -0
  78. package/entries/origin-financial/entry.md +65 -0
  79. package/entries/origin-financial/strip.webp +0 -0
  80. package/entries/oryzo-ai/captures/2/measure.json +39 -0
  81. package/entries/oryzo-ai/captures/2/strip.webp +0 -0
  82. package/entries/oryzo-ai/entry.md +76 -0
  83. package/entries/oryzo-ai/strip.webp +0 -0
  84. package/entries/silencio/captures/2/strip.webp +0 -0
  85. package/entries/silencio/entry.md +114 -0
  86. package/entries/silencio/motion/product-story/frame-0.webp +0 -0
  87. package/entries/silencio/motion/product-story/frame-1.webp +0 -0
  88. package/entries/silencio/motion/product-story/frame-2.webp +0 -0
  89. package/entries/silencio/motion/product-story/frame-3.webp +0 -0
  90. package/entries/silencio/motion/product-story/frame-4.webp +0 -0
  91. package/entries/silencio/motion/product-story/frame-5.webp +0 -0
  92. package/entries/silencio/motion/product-story/frame-6.webp +0 -0
  93. package/entries/silencio/motion/product-story/frame-7.webp +0 -0
  94. package/entries/silencio/strip.webp +0 -0
  95. package/entries/steep/captures/2/measure.json +20 -0
  96. package/entries/steep/captures/2/strip.webp +0 -0
  97. package/entries/steep/entry.md +63 -0
  98. package/entries/steep/strip.webp +0 -0
  99. package/entries/stripe/captures/2/measure.json +892 -0
  100. package/entries/stripe/captures/2/strip.webp +0 -0
  101. package/entries/stripe/entry.md +61 -0
  102. package/entries/stripe/strip.webp +0 -0
  103. package/entries/superpower/captures/2/measure.json +179 -0
  104. package/entries/superpower/captures/2/strip.webp +0 -0
  105. package/entries/superpower/entry.md +64 -0
  106. package/entries/superpower/strip.webp +0 -0
  107. package/entries/superr/entry.md +54 -0
  108. package/entries/superr/strip.webp +0 -0
  109. package/entries/svz-weare/captures/2/measure.json +129 -0
  110. package/entries/svz-weare/captures/2/strip.webp +0 -0
  111. package/entries/svz-weare/entry.md +147 -0
  112. package/entries/svz-weare/motion/hero-transition/frame-0.webp +0 -0
  113. package/entries/svz-weare/motion/hero-transition/frame-1.webp +0 -0
  114. package/entries/svz-weare/motion/hero-transition/frame-2.webp +0 -0
  115. package/entries/svz-weare/motion/hero-transition/frame-3.webp +0 -0
  116. package/entries/svz-weare/motion/hero-transition/frame-4.webp +0 -0
  117. package/entries/svz-weare/motion/hero-transition/frame-5.webp +0 -0
  118. package/entries/svz-weare/motion/hero-transition/frame-6.webp +0 -0
  119. package/entries/svz-weare/motion/hero-transition/frame-7.webp +0 -0
  120. package/entries/svz-weare/strip.webp +0 -0
  121. package/entries/thoughtlab/captures/2/measure.json +93 -0
  122. package/entries/thoughtlab/captures/2/strip.webp +0 -0
  123. package/entries/thoughtlab/entry.md +62 -0
  124. package/entries/thoughtlab/strip.webp +0 -0
  125. package/entries/ventriloc/entry.md +54 -0
  126. package/entries/ventriloc/strip.webp +0 -0
  127. package/entries/vivid-and-co/entry.md +58 -0
  128. package/entries/vivid-and-co/strip.webp +0 -0
  129. package/package.json +24 -5
  130. package/src/cli/add.mjs +100 -24
  131. package/src/cli/motion.mjs +168 -0
  132. package/src/cli/refresh.mjs +6 -0
  133. package/src/cli/ui.mjs +2 -1
  134. package/src/entry.mjs +14 -1
  135. package/src/index/build.mjs +9 -3
  136. package/src/index/embed.mjs +1 -1
  137. package/src/ingest/agreement.mjs +33 -0
  138. package/src/ingest/attach.mjs +67 -0
  139. package/src/ingest/draft.mjs +5 -2
  140. package/src/ingest/frames.mjs +20 -6
  141. package/src/ingest/measure.mjs +34 -1
  142. package/src/ingest/observed.mjs +29 -0
  143. package/src/mcp/http.mjs +1 -1
  144. package/src/mcp/instructions.mjs +2 -1
  145. package/src/mcp/prompts.mjs +12 -1
  146. package/src/mcp/resources.mjs +14 -0
  147. package/src/mcp/tools.mjs +48 -5
  148. package/src/motion.mjs +94 -0
  149. package/src/ui/build.mjs +83 -7
  150. package/src/ui/serve.mjs +29 -4
  151. package/src/ui/templates/entry.html +9 -1
  152. package/entries/ais-community-dark-depth/strip.png +0 -0
  153. package/tests/README.md +0 -33
  154. package/tests/checks/cli-check.sh +0 -13
  155. package/tests/checks/docker.sh +0 -10
  156. package/tests/checks/entry-detail.sh +0 -52
  157. package/tests/checks/entry.sh +0 -55
  158. package/tests/checks/export.sh +0 -16
  159. package/tests/checks/fetch-on-start.sh +0 -26
  160. package/tests/checks/frames-dense.sh +0 -27
  161. package/tests/checks/http.sh +0 -22
  162. package/tests/checks/hygiene.sh +0 -29
  163. package/tests/checks/inbox.sh +0 -27
  164. package/tests/checks/index-degrade.sh +0 -32
  165. package/tests/checks/index.sh +0 -36
  166. package/tests/checks/ingest-mp4.sh +0 -47
  167. package/tests/checks/ingest.sh +0 -39
  168. package/tests/checks/instructions.sh +0 -31
  169. package/tests/checks/licence-gate.sh +0 -24
  170. package/tests/checks/mcp-stdout.sh +0 -31
  171. package/tests/checks/measure.sh +0 -79
  172. package/tests/checks/minors.sh +0 -84
  173. package/tests/checks/optional-deps.sh +0 -55
  174. package/tests/checks/prompt-add-entry.sh +0 -28
  175. package/tests/checks/recommend.sh +0 -107
  176. package/tests/checks/resources.sh +0 -47
  177. package/tests/checks/rrf.sh +0 -120
  178. package/tests/checks/seed-sync.sh +0 -22
  179. package/tests/checks/similar.sh +0 -62
  180. package/tests/checks/ui-build.sh +0 -59
  181. package/tests/checks/vocab.sh +0 -30
  182. package/tests/fixtures/entry-ok/entry.md +0 -41
  183. package/tests/fixtures/entry-ok/strip.png +0 -0
  184. package/tests/fixtures/page/index.html +0 -47
  185. package/tests/fixtures/three-frame.webp +0 -0
  186. package/tests/run.sh +0 -16
@@ -0,0 +1,160 @@
1
+ {
2
+ "url": "https://elevenlabs.io/",
3
+ "at": "2026-09-16",
4
+ "viewport": [
5
+ 1440,
6
+ 390
7
+ ],
8
+ "tokens": {
9
+ "canvas": "#fdfcfc",
10
+ "ink": "#000000",
11
+ "accent": "#ffffff",
12
+ "fontDisplay": "Waldenburg, \"Waldenburg Fallback\"",
13
+ "fontBody": "Inter, \"Inter Fallback\""
14
+ },
15
+ "sections": [
16
+ {
17
+ "index": 0,
18
+ "tag": "script",
19
+ "id": "page-structured-data-elevenlabs-home-redesign-2026",
20
+ "class": "",
21
+ "top": 0,
22
+ "height": 0,
23
+ "animations": []
24
+ },
25
+ {
26
+ "index": 1,
27
+ "tag": "style",
28
+ "id": "",
29
+ "class": "",
30
+ "top": 0,
31
+ "height": 0,
32
+ "animations": []
33
+ },
34
+ {
35
+ "index": 2,
36
+ "tag": "div",
37
+ "id": "",
38
+ "class": "tw-contents",
39
+ "top": 0,
40
+ "height": 0,
41
+ "animations": []
42
+ },
43
+ {
44
+ "index": 3,
45
+ "tag": "div",
46
+ "id": "content",
47
+ "class": "",
48
+ "top": 64,
49
+ "height": 9585,
50
+ "animations": [
51
+ {
52
+ "target": "div.tw-fixed tw-top-0 tw-inset-x-0 tw-z-[9998] tw-flex tw-h-16 tw-items-center tw-duration-300 tw-ease-in-out tw-bg-white tw-invisible -tw-translate-y-full",
53
+ "timeline": "document",
54
+ "range": null,
55
+ "duration": 300
56
+ },
57
+ {
58
+ "target": "div.tw-fixed tw-top-0 tw-inset-x-0 tw-z-[9998] tw-flex tw-h-16 tw-items-center tw-duration-300 tw-ease-in-out tw-bg-white tw-invisible -tw-translate-y-full",
59
+ "timeline": "document",
60
+ "range": null,
61
+ "duration": 300
62
+ },
63
+ {
64
+ "target": "path.[object SVGAnimatedString]",
65
+ "timeline": "document",
66
+ "range": null,
67
+ "duration": 300
68
+ },
69
+ {
70
+ "target": "path.[object SVGAnimatedString]",
71
+ "timeline": "document",
72
+ "range": null,
73
+ "duration": 300
74
+ },
75
+ {
76
+ "target": "path.[object SVGAnimatedString]",
77
+ "timeline": "document",
78
+ "range": null,
79
+ "duration": 250
80
+ },
81
+ {
82
+ "target": "path.[object SVGAnimatedString]",
83
+ "timeline": "document",
84
+ "range": null,
85
+ "duration": 250
86
+ },
87
+ {
88
+ "target": "path.[object SVGAnimatedString]",
89
+ "timeline": "document",
90
+ "range": null,
91
+ "duration": 250
92
+ },
93
+ {
94
+ "target": "path.[object SVGAnimatedString]",
95
+ "timeline": "document",
96
+ "range": null,
97
+ "duration": 250
98
+ },
99
+ {
100
+ "target": "path.[object SVGAnimatedString]",
101
+ "timeline": "document",
102
+ "range": null,
103
+ "duration": 250
104
+ },
105
+ {
106
+ "target": "path.[object SVGAnimatedString]",
107
+ "timeline": "document",
108
+ "range": null,
109
+ "duration": 250
110
+ },
111
+ {
112
+ "target": "path.[object SVGAnimatedString]",
113
+ "timeline": "document",
114
+ "range": null,
115
+ "duration": 250
116
+ },
117
+ {
118
+ "target": "path.[object SVGAnimatedString]",
119
+ "timeline": "document",
120
+ "range": null,
121
+ "duration": 250
122
+ },
123
+ {
124
+ "target": "path.[object SVGAnimatedString]",
125
+ "timeline": "document",
126
+ "range": null,
127
+ "duration": 250
128
+ },
129
+ {
130
+ "target": "path.[object SVGAnimatedString]",
131
+ "timeline": "document",
132
+ "range": null,
133
+ "duration": 250
134
+ }
135
+ ]
136
+ },
137
+ {
138
+ "index": 4,
139
+ "tag": "div",
140
+ "id": "",
141
+ "class": "border-y border-overlay-dark mt-0 lg:mt-0",
142
+ "top": 9649,
143
+ "height": 190,
144
+ "animations": []
145
+ },
146
+ {
147
+ "index": 5,
148
+ "tag": "footer",
149
+ "id": "",
150
+ "class": "tw-relative tw-pb-32 container tw-mt-16",
151
+ "top": 9903,
152
+ "height": 855,
153
+ "animations": []
154
+ }
155
+ ],
156
+ "screenshots": {
157
+ "390": "screen-390.png",
158
+ "1440": "screen-1440.png"
159
+ }
160
+ }
@@ -0,0 +1,62 @@
1
+ ---
2
+ slug: elevenlabs
3
+ title: 'ElevenLabs: voice-AI product landing'
4
+ tier: inspiration
5
+ source:
6
+ kind: public-site
7
+ url: https://elevenlabs.io/
8
+ license: Captured from a Refero-hosted recording and the live site; description only, no redistribution of the source.
9
+ captured:
10
+ method: both
11
+ at: '2026-09-16'
12
+ tool: wp-design-library@0.4.0
13
+ captures:
14
+ - method: frames
15
+ input: /tmp/elevenlabs-refero.mp4
16
+ artifacts:
17
+ - strip.webp
18
+ frames: 36
19
+ duration_ms: 33900
20
+ - method: both
21
+ input: https://elevenlabs.io/
22
+ artifacts:
23
+ - captures/2/strip.webp
24
+ - captures/2/measure.json
25
+ - captures/2/screen-1440.png
26
+ - captures/2/screen-390.png
27
+ media:
28
+ frames: 36
29
+ duration_ms: 33900
30
+ roles: [hero, explainer, capability, feature, proof, offer, closing, footer]
31
+ feel: [light, premium, editorial, minimal, cold]
32
+ palette:
33
+ canvas: '#fdfcfc'
34
+ ink: '#000000'
35
+ accent: '#ffffff'
36
+ type:
37
+ display: Waldenburg, "Waldenburg Fallback"
38
+ body: Inter, "Inter Fallback"
39
+ motion:
40
+ devices: [reveal, pan, stagger, wipe]
41
+ notes: 'The Refero recording presents voice-AI capabilities in staged editorial panels, with interface demos and copy changing one group at a time. The live capture records short 250–300ms navigation and SVG transitions across the current page. It does not establish individual input triggers.'
42
+ ported_from: null
43
+ ---
44
+
45
+ ## What it does
46
+
47
+ ElevenLabs introduces voice AI through a restrained editorial product story: a clear headline, capability demonstrations, product surfaces, proof, and conversion prompts.
48
+
49
+ ## Section roster
50
+
51
+ 1. Product hero and primary action.
52
+ 2. Voice-AI capability and demo chapters.
53
+ 3. Product, developer, and enterprise pathways.
54
+ 4. Proof, offer, closing, and footer.
55
+
56
+ ## Why it works
57
+
58
+ The quiet palette and oversized type give voice output room to feel considered, while compact interface demonstrations ground the promise in a usable product.
59
+
60
+ ## Sources
61
+
62
+ The Refero MP4 at https://images.refero.design/styles/refero.design/video/3e8b5dea-0085-4d86-b3ee-1de336f3ac53.mp4 provides the 33.9-second product sequence. The live capture at https://elevenlabs.io/ supplies the current desktop/mobile page, measured Waldenburg and Inter stacks, and navigation/SVG transition evidence. The entry records both public campaign states.
Binary file
@@ -0,0 +1,291 @@
1
+ {
2
+ "url": "https://www.flyingpapers.com/",
3
+ "at": "2026-09-16",
4
+ "viewport": [
5
+ 1440,
6
+ 390
7
+ ],
8
+ "tokens": {
9
+ "canvas": "",
10
+ "ink": "#000000",
11
+ "accent": "#f4ed36",
12
+ "fontDisplay": "",
13
+ "fontBody": "bergen_monoregular"
14
+ },
15
+ "sections": [
16
+ {
17
+ "index": 0,
18
+ "tag": "header",
19
+ "id": "",
20
+ "class": "sc-74cdb319-4 jMVdhz right-scroll-bar-position",
21
+ "top": 0,
22
+ "height": 0,
23
+ "animations": []
24
+ },
25
+ {
26
+ "index": 1,
27
+ "tag": "section",
28
+ "id": "",
29
+ "class": "sc-60f55a6b-0 gxkuVP color",
30
+ "top": 0,
31
+ "height": 1127,
32
+ "animations": []
33
+ },
34
+ {
35
+ "index": 2,
36
+ "tag": "section",
37
+ "id": "",
38
+ "class": "sc-60f55a6b-0 gxkuVP color",
39
+ "top": 1127,
40
+ "height": 980,
41
+ "animations": [
42
+ {
43
+ "target": "span.sc-be98d28c-1 kEfRZE",
44
+ "timeline": "document",
45
+ "range": null,
46
+ "duration": 1000
47
+ },
48
+ {
49
+ "target": "span.sc-be98d28c-1 kEfRZE",
50
+ "timeline": "document",
51
+ "range": null,
52
+ "duration": 1000
53
+ },
54
+ {
55
+ "target": "span.sc-be98d28c-1 kEfRZE",
56
+ "timeline": "document",
57
+ "range": null,
58
+ "duration": 1000
59
+ },
60
+ {
61
+ "target": "span.sc-be98d28c-1 kEfRZE",
62
+ "timeline": "document",
63
+ "range": null,
64
+ "duration": 1000
65
+ },
66
+ {
67
+ "target": "span.sc-be98d28c-1 kEfRZE",
68
+ "timeline": "document",
69
+ "range": null,
70
+ "duration": 1000
71
+ }
72
+ ]
73
+ },
74
+ {
75
+ "index": 3,
76
+ "tag": "section",
77
+ "id": "",
78
+ "class": "sc-60f55a6b-0 gxkuVP color",
79
+ "top": 2107,
80
+ "height": 3600,
81
+ "animations": [
82
+ {
83
+ "target": "span.sc-be98d28c-1 eecSxh",
84
+ "timeline": "document",
85
+ "range": null,
86
+ "duration": 1000
87
+ },
88
+ {
89
+ "target": "span.sc-f0973367-0 eNIwTb",
90
+ "timeline": "document",
91
+ "range": null,
92
+ "duration": 4000
93
+ },
94
+ {
95
+ "target": "span.sc-f0973367-0 eNIwTb",
96
+ "timeline": "document",
97
+ "range": null,
98
+ "duration": 4000
99
+ },
100
+ {
101
+ "target": "span.sc-f0973367-0 eNIwTb",
102
+ "timeline": "document",
103
+ "range": null,
104
+ "duration": 4000
105
+ }
106
+ ]
107
+ },
108
+ {
109
+ "index": 4,
110
+ "tag": "section",
111
+ "id": "",
112
+ "class": "sc-a3bfc3c6-7 fFiULG",
113
+ "top": 2107,
114
+ "height": 900,
115
+ "animations": [
116
+ {
117
+ "target": "span.sc-be98d28c-1 eecSxh",
118
+ "timeline": "document",
119
+ "range": null,
120
+ "duration": 1000
121
+ },
122
+ {
123
+ "target": "span.sc-f0973367-0 eNIwTb",
124
+ "timeline": "document",
125
+ "range": null,
126
+ "duration": 4000
127
+ },
128
+ {
129
+ "target": "span.sc-f0973367-0 eNIwTb",
130
+ "timeline": "document",
131
+ "range": null,
132
+ "duration": 4000
133
+ },
134
+ {
135
+ "target": "span.sc-f0973367-0 eNIwTb",
136
+ "timeline": "document",
137
+ "range": null,
138
+ "duration": 4000
139
+ }
140
+ ]
141
+ },
142
+ {
143
+ "index": 5,
144
+ "tag": "section",
145
+ "id": "",
146
+ "class": "sc-60f55a6b-0 gxkuVP color",
147
+ "top": 5707,
148
+ "height": 3600,
149
+ "animations": [
150
+ {
151
+ "target": "span.sc-be98d28c-1 eecSxh",
152
+ "timeline": "document",
153
+ "range": null,
154
+ "duration": 1000
155
+ },
156
+ {
157
+ "target": "span.sc-f0973367-0 eNIwTb",
158
+ "timeline": "document",
159
+ "range": null,
160
+ "duration": 4000
161
+ },
162
+ {
163
+ "target": "span.sc-f0973367-0 eNIwTb",
164
+ "timeline": "document",
165
+ "range": null,
166
+ "duration": 4000
167
+ },
168
+ {
169
+ "target": "span.sc-f0973367-0 eNIwTb",
170
+ "timeline": "document",
171
+ "range": null,
172
+ "duration": 4000
173
+ },
174
+ {
175
+ "target": "span.sc-f0973367-0 eNIwTb",
176
+ "timeline": "document",
177
+ "range": null,
178
+ "duration": 4000
179
+ }
180
+ ]
181
+ },
182
+ {
183
+ "index": 6,
184
+ "tag": "section",
185
+ "id": "",
186
+ "class": "sc-a3bfc3c6-7 fFiULG",
187
+ "top": 5707,
188
+ "height": 900,
189
+ "animations": [
190
+ {
191
+ "target": "span.sc-be98d28c-1 eecSxh",
192
+ "timeline": "document",
193
+ "range": null,
194
+ "duration": 1000
195
+ },
196
+ {
197
+ "target": "span.sc-f0973367-0 eNIwTb",
198
+ "timeline": "document",
199
+ "range": null,
200
+ "duration": 4000
201
+ },
202
+ {
203
+ "target": "span.sc-f0973367-0 eNIwTb",
204
+ "timeline": "document",
205
+ "range": null,
206
+ "duration": 4000
207
+ },
208
+ {
209
+ "target": "span.sc-f0973367-0 eNIwTb",
210
+ "timeline": "document",
211
+ "range": null,
212
+ "duration": 4000
213
+ },
214
+ {
215
+ "target": "span.sc-f0973367-0 eNIwTb",
216
+ "timeline": "document",
217
+ "range": null,
218
+ "duration": 4000
219
+ }
220
+ ]
221
+ },
222
+ {
223
+ "index": 7,
224
+ "tag": "section",
225
+ "id": "",
226
+ "class": "sc-60f55a6b-0 gxkuVP color",
227
+ "top": 9307,
228
+ "height": 1800,
229
+ "animations": []
230
+ },
231
+ {
232
+ "index": 8,
233
+ "tag": "section",
234
+ "id": "",
235
+ "class": "sc-60f55a6b-0 bkqJPt color",
236
+ "top": 11107,
237
+ "height": 850,
238
+ "animations": [
239
+ {
240
+ "target": "span.sc-f0973367-0 eNIwTb",
241
+ "timeline": "document",
242
+ "range": null,
243
+ "duration": 4000
244
+ },
245
+ {
246
+ "target": "span.sc-f0973367-0 eNIwTb",
247
+ "timeline": "document",
248
+ "range": null,
249
+ "duration": 4000
250
+ },
251
+ {
252
+ "target": "span.sc-f0973367-0 eNIwTb",
253
+ "timeline": "document",
254
+ "range": null,
255
+ "duration": 4000
256
+ }
257
+ ]
258
+ },
259
+ {
260
+ "index": 9,
261
+ "tag": "footer",
262
+ "id": "",
263
+ "class": "sc-af26d625-1 iKLuhG",
264
+ "top": 11957,
265
+ "height": 496,
266
+ "animations": []
267
+ },
268
+ {
269
+ "index": 10,
270
+ "tag": "header",
271
+ "id": "",
272
+ "class": "sc-1e9318a7-2 ktyMZo",
273
+ "top": 11997,
274
+ "height": 193,
275
+ "animations": []
276
+ },
277
+ {
278
+ "index": 11,
279
+ "tag": "section",
280
+ "id": "",
281
+ "class": "sc-af26d625-0 cGIgSU",
282
+ "top": 12343,
283
+ "height": 50,
284
+ "animations": []
285
+ }
286
+ ],
287
+ "screenshots": {
288
+ "390": "screen-390.png",
289
+ "1440": "screen-1440.png"
290
+ }
291
+ }
@@ -0,0 +1,61 @@
1
+ ---
2
+ slug: flying-papers
3
+ title: 'Flying Papers: playful creative landing'
4
+ tier: inspiration
5
+ source:
6
+ kind: public-site
7
+ url: https://www.flyingpapers.com/
8
+ license: Captured from a Refero-hosted recording and the live site; description only, no redistribution of the source.
9
+ captured:
10
+ method: both
11
+ at: '2026-09-16'
12
+ tool: wp-design-library@0.4.0
13
+ captures:
14
+ - method: frames
15
+ input: /tmp/flying-papers-refero.mp4
16
+ artifacts:
17
+ - strip.webp
18
+ frames: 36
19
+ duration_ms: 21283
20
+ - method: both
21
+ input: https://www.flyingpapers.com/
22
+ artifacts:
23
+ - captures/2/strip.webp
24
+ - captures/2/measure.json
25
+ - captures/2/screen-1440.png
26
+ - captures/2/screen-390.png
27
+ media:
28
+ frames: 36
29
+ duration_ms: 21283
30
+ roles: [hero, explainer]
31
+ feel: [playful, brutalist, warm]
32
+ palette:
33
+ canvas: '#606799'
34
+ ink: '#000000'
35
+ accent: '#f4ed36'
36
+ type:
37
+ display: Heavy rounded condensed display sans
38
+ body: bergen_monoregular
39
+ motion:
40
+ devices: [reveal, pan]
41
+ notes: Eyeballed from 36 sampled frames, not measured. The oversized question remains fixed while the illustrated character first peeks through the letterforms and then shifts across the headline; no scroll behavior is shown.
42
+ ported_from: null
43
+ ---
44
+
45
+ ## What it does
46
+
47
+ Flying Papers uses a single playful age-gate-style landing scene to introduce its world.
48
+
49
+ ## Section roster
50
+
51
+ 1. Oversized question headline.
52
+ 2. Illustrated character interaction inside the letterforms.
53
+ 3. Compact primary action and underage exit.
54
+
55
+ ## Why it works
56
+
57
+ The page commits to one memorable image, so the animated character gives the giant type a reason to exist instead of functioning as decoration. It intentionally withholds explanatory content, which limits its usefulness for a more complex offer.
58
+
59
+ ## Sources
60
+
61
+ The Refero MP4 supplies the sampled motion sequence. The live capture at https://www.flyingpapers.com/ supplies the current site URL and layout reference.
Binary file
@@ -0,0 +1,120 @@
1
+ {
2
+ "url": "https://gsap.com/",
3
+ "at": "2026-09-17",
4
+ "viewport": [
5
+ 1440,
6
+ 390
7
+ ],
8
+ "tokens": {
9
+ "canvas": "#0e100f",
10
+ "ink": "#fffce1",
11
+ "accent": "#7c7c6f",
12
+ "fontDisplay": "Mori, sans-serif",
13
+ "fontBody": "Mori, sans-serif"
14
+ },
15
+ "sections": [
16
+ {
17
+ "index": 0,
18
+ "tag": "header",
19
+ "id": "header",
20
+ "class": "header",
21
+ "top": -50,
22
+ "height": 127,
23
+ "animations": []
24
+ },
25
+ {
26
+ "index": 1,
27
+ "tag": "section",
28
+ "id": "webflow-banner",
29
+ "class": "banner",
30
+ "top": -50,
31
+ "height": 50,
32
+ "animations": []
33
+ },
34
+ {
35
+ "index": 2,
36
+ "tag": "section",
37
+ "id": "",
38
+ "class": "feed feed--notifications",
39
+ "top": 0,
40
+ "height": 0,
41
+ "animations": []
42
+ },
43
+ {
44
+ "index": 3,
45
+ "tag": "section",
46
+ "id": "",
47
+ "class": "feed feed--messages",
48
+ "top": 0,
49
+ "height": 0,
50
+ "animations": []
51
+ },
52
+ {
53
+ "index": 4,
54
+ "tag": "section",
55
+ "id": "",
56
+ "class": "home-hero",
57
+ "top": 0,
58
+ "height": 913,
59
+ "animations": []
60
+ },
61
+ {
62
+ "index": 5,
63
+ "tag": "section",
64
+ "id": "",
65
+ "class": "home-intro",
66
+ "top": 913,
67
+ "height": 838,
68
+ "animations": []
69
+ },
70
+ {
71
+ "index": 6,
72
+ "tag": "section",
73
+ "id": "home-animate",
74
+ "class": "home-animate",
75
+ "top": 1751,
76
+ "height": 3900,
77
+ "animations": []
78
+ },
79
+ {
80
+ "index": 7,
81
+ "tag": "section",
82
+ "id": "",
83
+ "class": "home-tools",
84
+ "top": 5651,
85
+ "height": 2006,
86
+ "animations": []
87
+ },
88
+ {
89
+ "index": 8,
90
+ "tag": "section",
91
+ "id": "",
92
+ "class": "brands",
93
+ "top": 7657,
94
+ "height": 366,
95
+ "animations": []
96
+ },
97
+ {
98
+ "index": 9,
99
+ "tag": "section",
100
+ "id": "",
101
+ "class": "showcase",
102
+ "top": 8022,
103
+ "height": 959,
104
+ "animations": []
105
+ },
106
+ {
107
+ "index": 10,
108
+ "tag": "footer",
109
+ "id": "",
110
+ "class": "footer",
111
+ "top": 8981,
112
+ "height": 787,
113
+ "animations": []
114
+ }
115
+ ],
116
+ "screenshots": {
117
+ "390": "screen-390.png",
118
+ "1440": "screen-1440.png"
119
+ }
120
+ }