sketchmark 2.1.0 → 2.1.2

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 (117) hide show
  1. package/package.json +1 -7
  2. package/ANIMATABLE_MATRIX.md +0 -177
  3. package/KERNEL_SPEC.md +0 -412
  4. package/PACKS.md +0 -81
  5. package/PRESETS.md +0 -182
  6. package/dist/src/builders/index.d.ts +0 -64
  7. package/dist/src/builders/index.js +0 -212
  8. package/dist/src/compounds.d.ts +0 -13
  9. package/dist/src/compounds.js +0 -118
  10. package/dist/src/deck.d.ts +0 -4
  11. package/dist/src/deck.js +0 -91
  12. package/dist/src/export/index.d.ts +0 -8
  13. package/dist/src/export/index.js +0 -15
  14. package/dist/src/kernel.d.ts +0 -8
  15. package/dist/src/kernel.js +0 -68
  16. package/dist/src/motion.d.ts +0 -4
  17. package/dist/src/motion.js +0 -262
  18. package/dist/src/patch.d.ts +0 -5
  19. package/dist/src/patch.js +0 -72
  20. package/dist/src/player/index.d.ts +0 -68
  21. package/dist/src/player/index.js +0 -600
  22. package/dist/src/project.d.ts +0 -11
  23. package/dist/src/project.js +0 -107
  24. package/dist/src/render/raw-three.d.ts +0 -7
  25. package/dist/src/render/raw-three.js +0 -17
  26. package/dist/src/render/three-html.d.ts +0 -2
  27. package/dist/src/render/three-html.js +0 -257
  28. package/dist/src/render/three-preview-svg.d.ts +0 -3
  29. package/dist/src/render/three-preview-svg.js +0 -102
  30. package/dist/src/scenes.d.ts +0 -4
  31. package/dist/src/scenes.js +0 -26
  32. package/dist/src/sequences.d.ts +0 -43
  33. package/dist/src/sequences.js +0 -109
  34. package/dist/src/shapes/builtins.d.ts +0 -2
  35. package/dist/src/shapes/builtins.js +0 -393
  36. package/dist/src/shapes/common.d.ts +0 -9
  37. package/dist/src/shapes/common.js +0 -76
  38. package/dist/src/shapes/geometry.d.ts +0 -22
  39. package/dist/src/shapes/geometry.js +0 -166
  40. package/dist/src/shapes/index.d.ts +0 -2
  41. package/dist/src/shapes/index.js +0 -18
  42. package/dist/src/shapes/registry.d.ts +0 -8
  43. package/dist/src/shapes/registry.js +0 -31
  44. package/dist/src/shapes/types.d.ts +0 -32
  45. package/dist/src/shapes/types.js +0 -2
  46. package/examples/1730642890464.jpg +0 -0
  47. package/examples/app-screen.svg +0 -1
  48. package/examples/app-screen.visual.json +0 -503
  49. package/examples/dashboard-table.svg +0 -1
  50. package/examples/dashboard-table.visual.json +0 -708
  51. package/examples/dev-docs.svg +0 -1
  52. package/examples/dev-docs.visual.json +0 -248
  53. package/examples/explainer.mp4 +0 -0
  54. package/examples/explainer.visual.json +0 -1713
  55. package/examples/group-origin-effects-lab-check.svg +0 -1
  56. package/examples/group-origin-effects-lab.visual.json +0 -1880
  57. package/examples/image-clip-radius.visual.json +0 -271
  58. package/examples/make-app-screen.cjs +0 -368
  59. package/examples/make-dashboard-table.cjs +0 -277
  60. package/examples/make-dev-docs.cjs +0 -233
  61. package/examples/make-explainer.cjs +0 -438
  62. package/examples/make-group-origin-effects-lab.cjs +0 -370
  63. package/examples/make-image-clip-radius.cjs +0 -169
  64. package/examples/make-modal-dialog.cjs +0 -355
  65. package/examples/make-origin-effects-lab.cjs +0 -311
  66. package/examples/make-preset-character-motion.cjs +0 -32
  67. package/examples/make-presets-demo.cjs +0 -30
  68. package/examples/make-pricing.cjs +0 -286
  69. package/examples/make-product-demo.cjs +0 -468
  70. package/examples/make-product-hero.cjs +0 -223
  71. package/examples/make-release-notes.cjs +0 -333
  72. package/examples/make-settings-panel.cjs +0 -435
  73. package/examples/make-split-preview.cjs +0 -248
  74. package/examples/make-storyboard.cjs +0 -215
  75. package/examples/make-transcript.cjs +0 -234
  76. package/examples/make-typography-test.cjs +0 -397
  77. package/examples/make-ui-demo-explainer.cjs +0 -1094
  78. package/examples/make-ui-flow.cjs +0 -762
  79. package/examples/make-walkthrough.cjs +0 -815
  80. package/examples/modal-dialog.svg +0 -1
  81. package/examples/modal-dialog.visual.json +0 -239
  82. package/examples/origin-effects-lab-check.svg +0 -1
  83. package/examples/origin-effects-lab.visual.json +0 -1412
  84. package/examples/preset-character-motion.visual.json +0 -949
  85. package/examples/presets-demo.visual.json +0 -787
  86. package/examples/pricing.svg +0 -1
  87. package/examples/pricing.visual.json +0 -652
  88. package/examples/product-demo.mp4 +0 -0
  89. package/examples/product-demo.visual.json +0 -866
  90. package/examples/product-hero.svg +0 -1
  91. package/examples/product-hero.visual.json +0 -242
  92. package/examples/release-notes.svg +0 -1
  93. package/examples/release-notes.visual.json +0 -467
  94. package/examples/settings-panel.svg +0 -1
  95. package/examples/settings-panel.visual.json +0 -501
  96. package/examples/split-preview.svg +0 -1
  97. package/examples/split-preview.visual.json +0 -124
  98. package/examples/storyboard.svg +0 -1
  99. package/examples/storyboard.visual.json +0 -312
  100. package/examples/transcript.svg +0 -1
  101. package/examples/transcript.visual.json +0 -407
  102. package/examples/typography-indent-check.svg +0 -1
  103. package/examples/typography-lineheight-0.svg +0 -1
  104. package/examples/typography-lineheight-2.svg +0 -1
  105. package/examples/typography-test-check.svg +0 -1
  106. package/examples/typography-test.svg +0 -1
  107. package/examples/typography-test.visual.json +0 -757
  108. package/examples/ui-demo-explainer-billing.svg +0 -1
  109. package/examples/ui-demo-explainer-check.svg +0 -1
  110. package/examples/ui-demo-explainer-save.svg +0 -1
  111. package/examples/ui-demo-explainer-toggle.svg +0 -1
  112. package/examples/ui-demo-explainer.mp4 +0 -0
  113. package/examples/ui-demo-explainer.visual.json +0 -2597
  114. package/examples/ui-flow.mp4 +0 -0
  115. package/examples/ui-flow.visual.json +0 -1211
  116. package/examples/walkthrough.mp4 +0 -0
  117. package/examples/walkthrough.visual.json +0 -1372
@@ -1,866 +0,0 @@
1
- {
2
- "version": 1,
3
- "canvas": {
4
- "width": 1280,
5
- "height": 720,
6
- "background": "#0f172a",
7
- "duration": 12,
8
- "fps": 30
9
- },
10
- "elements": [
11
- {
12
- "id": "logo",
13
- "type": "text",
14
- "x": 640,
15
- "y": 320,
16
- "text": "Sketchmark",
17
- "align": "center",
18
- "valign": "middle",
19
- "fontSize": 72,
20
- "fontFamily": "Inter, system-ui, sans-serif",
21
- "weight": 800,
22
- "fill": "#ffffff",
23
- "timeline": {
24
- "tracks": {
25
- "opacity": {
26
- "keyframes": [
27
- {
28
- "time": 0,
29
- "value": 0,
30
- "out": {
31
- "type": "cubicBezier",
32
- "x1": 0.16,
33
- "y1": 1,
34
- "x2": 0.3,
35
- "y2": 1
36
- }
37
- },
38
- {
39
- "time": 0.6,
40
- "value": 1
41
- },
42
- {
43
- "time": 2.4,
44
- "value": 1,
45
- "out": {
46
- "type": "cubicBezier",
47
- "x1": 0.16,
48
- "y1": 1,
49
- "x2": 0.3,
50
- "y2": 1
51
- }
52
- },
53
- {
54
- "time": 3,
55
- "value": 0
56
- }
57
- ]
58
- },
59
- "y": {
60
- "keyframes": [
61
- {
62
- "time": 0,
63
- "value": 340,
64
- "out": {
65
- "type": "cubicBezier",
66
- "x1": 0.16,
67
- "y1": 1,
68
- "x2": 0.3,
69
- "y2": 1
70
- }
71
- },
72
- {
73
- "time": 0.6,
74
- "value": 320
75
- }
76
- ]
77
- }
78
- }
79
- }
80
- },
81
- {
82
- "id": "tagline",
83
- "type": "text",
84
- "x": 640,
85
- "y": 390,
86
- "text": "Visual documents as JSON",
87
- "align": "center",
88
- "valign": "middle",
89
- "fontSize": 24,
90
- "fontFamily": "Inter, system-ui, sans-serif",
91
- "weight": 400,
92
- "fill": "#94a3b8",
93
- "timeline": {
94
- "tracks": {
95
- "opacity": {
96
- "keyframes": [
97
- {
98
- "time": 0.3,
99
- "value": 0,
100
- "out": {
101
- "type": "cubicBezier",
102
- "x1": 0.16,
103
- "y1": 1,
104
- "x2": 0.3,
105
- "y2": 1
106
- }
107
- },
108
- {
109
- "time": 0.9,
110
- "value": 1
111
- },
112
- {
113
- "time": 2.4,
114
- "value": 1,
115
- "out": {
116
- "type": "cubicBezier",
117
- "x1": 0.16,
118
- "y1": 1,
119
- "x2": 0.3,
120
- "y2": 1
121
- }
122
- },
123
- {
124
- "time": 3,
125
- "value": 0
126
- }
127
- ]
128
- }
129
- }
130
- }
131
- },
132
- {
133
- "id": "pill-0",
134
- "type": "group",
135
- "x": 406,
136
- "y": 336,
137
- "children": [
138
- {
139
- "id": "pill-0-bg",
140
- "type": "path",
141
- "d": "M 24 0 L 116 0 Q 140 0 140 24 L 140 24 Q 140 48 116 48 L 24 48 Q 0 48 0 24 L 0 24 Q 0 0 24 0 Z",
142
- "fill": "#3b82f6",
143
- "stroke": "none"
144
- },
145
- {
146
- "id": "pill-0-text",
147
- "type": "text",
148
- "x": 70,
149
- "y": 24,
150
- "text": "Render",
151
- "align": "center",
152
- "valign": "middle",
153
- "fontSize": 18,
154
- "fontFamily": "Inter, system-ui, sans-serif",
155
- "weight": 600,
156
- "fill": "#ffffff"
157
- }
158
- ],
159
- "opacity": 0,
160
- "timeline": {
161
- "tracks": {
162
- "opacity": {
163
- "keyframes": [
164
- {
165
- "time": 3,
166
- "value": 0,
167
- "out": {
168
- "type": "cubicBezier",
169
- "x1": 0.16,
170
- "y1": 1,
171
- "x2": 0.3,
172
- "y2": 1
173
- }
174
- },
175
- {
176
- "time": 3.4,
177
- "value": 1
178
- },
179
- {
180
- "time": 5.4,
181
- "value": 1,
182
- "out": {
183
- "type": "cubicBezier",
184
- "x1": 0.16,
185
- "y1": 1,
186
- "x2": 0.3,
187
- "y2": 1
188
- }
189
- },
190
- {
191
- "time": 6,
192
- "value": 0
193
- }
194
- ]
195
- },
196
- "y": {
197
- "keyframes": [
198
- {
199
- "time": 3,
200
- "value": 356,
201
- "out": {
202
- "type": "cubicBezier",
203
- "x1": 0.16,
204
- "y1": 1,
205
- "x2": 0.3,
206
- "y2": 1
207
- }
208
- },
209
- {
210
- "time": 3.4,
211
- "value": 336
212
- }
213
- ]
214
- }
215
- }
216
- }
217
- },
218
- {
219
- "id": "pill-1",
220
- "type": "group",
221
- "x": 570,
222
- "y": 336,
223
- "children": [
224
- {
225
- "id": "pill-1-bg",
226
- "type": "path",
227
- "d": "M 24 0 L 116 0 Q 140 0 140 24 L 140 24 Q 140 48 116 48 L 24 48 Q 0 48 0 24 L 0 24 Q 0 0 24 0 Z",
228
- "fill": "#3b82f6",
229
- "stroke": "none"
230
- },
231
- {
232
- "id": "pill-1-text",
233
- "type": "text",
234
- "x": 70,
235
- "y": 24,
236
- "text": "Animate",
237
- "align": "center",
238
- "valign": "middle",
239
- "fontSize": 18,
240
- "fontFamily": "Inter, system-ui, sans-serif",
241
- "weight": 600,
242
- "fill": "#ffffff"
243
- }
244
- ],
245
- "opacity": 0,
246
- "timeline": {
247
- "tracks": {
248
- "opacity": {
249
- "keyframes": [
250
- {
251
- "time": 3.15,
252
- "value": 0,
253
- "out": {
254
- "type": "cubicBezier",
255
- "x1": 0.16,
256
- "y1": 1,
257
- "x2": 0.3,
258
- "y2": 1
259
- }
260
- },
261
- {
262
- "time": 3.55,
263
- "value": 1
264
- },
265
- {
266
- "time": 5.4,
267
- "value": 1,
268
- "out": {
269
- "type": "cubicBezier",
270
- "x1": 0.16,
271
- "y1": 1,
272
- "x2": 0.3,
273
- "y2": 1
274
- }
275
- },
276
- {
277
- "time": 6,
278
- "value": 0
279
- }
280
- ]
281
- },
282
- "y": {
283
- "keyframes": [
284
- {
285
- "time": 3.15,
286
- "value": 356,
287
- "out": {
288
- "type": "cubicBezier",
289
- "x1": 0.16,
290
- "y1": 1,
291
- "x2": 0.3,
292
- "y2": 1
293
- }
294
- },
295
- {
296
- "time": 3.55,
297
- "value": 336
298
- }
299
- ]
300
- }
301
- }
302
- }
303
- },
304
- {
305
- "id": "pill-2",
306
- "type": "group",
307
- "x": 734,
308
- "y": 336,
309
- "children": [
310
- {
311
- "id": "pill-2-bg",
312
- "type": "path",
313
- "d": "M 24 0 L 116 0 Q 140 0 140 24 L 140 24 Q 140 48 116 48 L 24 48 Q 0 48 0 24 L 0 24 Q 0 0 24 0 Z",
314
- "fill": "#3b82f6",
315
- "stroke": "none"
316
- },
317
- {
318
- "id": "pill-2-text",
319
- "type": "text",
320
- "x": 70,
321
- "y": 24,
322
- "text": "Export",
323
- "align": "center",
324
- "valign": "middle",
325
- "fontSize": 18,
326
- "fontFamily": "Inter, system-ui, sans-serif",
327
- "weight": 600,
328
- "fill": "#ffffff"
329
- }
330
- ],
331
- "opacity": 0,
332
- "timeline": {
333
- "tracks": {
334
- "opacity": {
335
- "keyframes": [
336
- {
337
- "time": 3.3,
338
- "value": 0,
339
- "out": {
340
- "type": "cubicBezier",
341
- "x1": 0.16,
342
- "y1": 1,
343
- "x2": 0.3,
344
- "y2": 1
345
- }
346
- },
347
- {
348
- "time": 3.6999999999999997,
349
- "value": 1
350
- },
351
- {
352
- "time": 5.4,
353
- "value": 1,
354
- "out": {
355
- "type": "cubicBezier",
356
- "x1": 0.16,
357
- "y1": 1,
358
- "x2": 0.3,
359
- "y2": 1
360
- }
361
- },
362
- {
363
- "time": 6,
364
- "value": 0
365
- }
366
- ]
367
- },
368
- "y": {
369
- "keyframes": [
370
- {
371
- "time": 3.3,
372
- "value": 356,
373
- "out": {
374
- "type": "cubicBezier",
375
- "x1": 0.16,
376
- "y1": 1,
377
- "x2": 0.3,
378
- "y2": 1
379
- }
380
- },
381
- {
382
- "time": 3.6999999999999997,
383
- "value": 336
384
- }
385
- ]
386
- }
387
- }
388
- }
389
- },
390
- {
391
- "id": "scene2-headline",
392
- "type": "text",
393
- "x": 640,
394
- "y": 280,
395
- "text": "Three simple commands",
396
- "align": "center",
397
- "valign": "middle",
398
- "fontSize": 20,
399
- "fontFamily": "Inter, system-ui, sans-serif",
400
- "weight": 500,
401
- "fill": "#94a3b8",
402
- "opacity": 0,
403
- "timeline": {
404
- "tracks": {
405
- "opacity": {
406
- "keyframes": [
407
- {
408
- "time": 3,
409
- "value": 0,
410
- "out": {
411
- "type": "cubicBezier",
412
- "x1": 0.16,
413
- "y1": 1,
414
- "x2": 0.3,
415
- "y2": 1
416
- }
417
- },
418
- {
419
- "time": 3.4,
420
- "value": 1
421
- },
422
- {
423
- "time": 5.4,
424
- "value": 1,
425
- "out": {
426
- "type": "cubicBezier",
427
- "x1": 0.16,
428
- "y1": 1,
429
- "x2": 0.3,
430
- "y2": 1
431
- }
432
- },
433
- {
434
- "time": 6,
435
- "value": 0
436
- }
437
- ]
438
- }
439
- }
440
- }
441
- },
442
- {
443
- "id": "panel-bg",
444
- "type": "path",
445
- "d": "M 352 220 L 928 220 Q 940 220 940 232 L 940 528 Q 940 540 928 540 L 352 540 Q 340 540 340 528 L 340 232 Q 340 220 352 220 Z",
446
- "fill": "#1e293b",
447
- "stroke": "#334155",
448
- "strokeWidth": 1,
449
- "opacity": 0,
450
- "timeline": {
451
- "tracks": {
452
- "opacity": {
453
- "keyframes": [
454
- {
455
- "time": 6,
456
- "value": 0,
457
- "out": {
458
- "type": "cubicBezier",
459
- "x1": 0.16,
460
- "y1": 1,
461
- "x2": 0.3,
462
- "y2": 1
463
- }
464
- },
465
- {
466
- "time": 6.5,
467
- "value": 1
468
- },
469
- {
470
- "time": 9.5,
471
- "value": 1,
472
- "out": {
473
- "type": "cubicBezier",
474
- "x1": 0.16,
475
- "y1": 1,
476
- "x2": 0.3,
477
- "y2": 1
478
- }
479
- },
480
- {
481
- "time": 10,
482
- "value": 0
483
- }
484
- ]
485
- },
486
- "scale": {
487
- "keyframes": [
488
- {
489
- "time": 6,
490
- "value": 0.95,
491
- "out": {
492
- "type": "cubicBezier",
493
- "x1": 0.16,
494
- "y1": 1,
495
- "x2": 0.3,
496
- "y2": 1
497
- }
498
- },
499
- {
500
- "time": 6.5,
501
- "value": 1
502
- }
503
- ]
504
- }
505
- }
506
- }
507
- },
508
- {
509
- "id": "panel-title",
510
- "type": "text",
511
- "x": 360,
512
- "y": 240,
513
- "text": "scene.visual.json",
514
- "align": "left",
515
- "valign": "top",
516
- "fontSize": 12,
517
- "fontFamily": "JetBrains Mono, Fira Code, monospace",
518
- "weight": 500,
519
- "fill": "#64748b",
520
- "opacity": 0,
521
- "timeline": {
522
- "tracks": {
523
- "opacity": {
524
- "keyframes": [
525
- {
526
- "time": 6.3,
527
- "value": 0,
528
- "out": {
529
- "type": "cubicBezier",
530
- "x1": 0.16,
531
- "y1": 1,
532
- "x2": 0.3,
533
- "y2": 1
534
- }
535
- },
536
- {
537
- "time": 6.7,
538
- "value": 1
539
- },
540
- {
541
- "time": 9.5,
542
- "value": 1,
543
- "out": {
544
- "type": "cubicBezier",
545
- "x1": 0.16,
546
- "y1": 1,
547
- "x2": 0.3,
548
- "y2": 1
549
- }
550
- },
551
- {
552
- "time": 10,
553
- "value": 0
554
- }
555
- ]
556
- }
557
- }
558
- }
559
- },
560
- {
561
- "id": "panel-code",
562
- "type": "text",
563
- "x": 360,
564
- "y": 268,
565
- "text": "{\n \"version\": 1,\n \"canvas\": { \"width\": 1280, \"height\": 720 },\n \"elements\": [\n {\n \"id\": \"title\",\n \"type\": \"text\",\n \"text\": \"Hello World\",\n \"x\": 640, \"y\": 360,\n \"fontSize\": 48\n }\n ]\n}",
566
- "align": "left",
567
- "valign": "top",
568
- "fontSize": 13,
569
- "fontFamily": "JetBrains Mono, Fira Code, monospace",
570
- "weight": 400,
571
- "lineHeight": 1.45,
572
- "fill": "#e2e8f0",
573
- "opacity": 0,
574
- "maxWidth": 560,
575
- "timeline": {
576
- "tracks": {
577
- "opacity": {
578
- "keyframes": [
579
- {
580
- "time": 6.5,
581
- "value": 0,
582
- "out": {
583
- "type": "cubicBezier",
584
- "x1": 0.16,
585
- "y1": 1,
586
- "x2": 0.3,
587
- "y2": 1
588
- }
589
- },
590
- {
591
- "time": 7,
592
- "value": 1
593
- },
594
- {
595
- "time": 9.5,
596
- "value": 1,
597
- "out": {
598
- "type": "cubicBezier",
599
- "x1": 0.16,
600
- "y1": 1,
601
- "x2": 0.3,
602
- "y2": 1
603
- }
604
- },
605
- {
606
- "time": 10,
607
- "value": 0
608
- }
609
- ]
610
- }
611
- }
612
- }
613
- },
614
- {
615
- "id": "scene3-headline",
616
- "type": "text",
617
- "x": 640,
618
- "y": 170,
619
- "text": "Define visuals in JSON",
620
- "align": "center",
621
- "valign": "middle",
622
- "fontSize": 28,
623
- "fontFamily": "Inter, system-ui, sans-serif",
624
- "weight": 700,
625
- "fill": "#ffffff",
626
- "opacity": 0,
627
- "timeline": {
628
- "tracks": {
629
- "opacity": {
630
- "keyframes": [
631
- {
632
- "time": 6,
633
- "value": 0,
634
- "out": {
635
- "type": "cubicBezier",
636
- "x1": 0.16,
637
- "y1": 1,
638
- "x2": 0.3,
639
- "y2": 1
640
- }
641
- },
642
- {
643
- "time": 6.5,
644
- "value": 1
645
- },
646
- {
647
- "time": 9.5,
648
- "value": 1,
649
- "out": {
650
- "type": "cubicBezier",
651
- "x1": 0.16,
652
- "y1": 1,
653
- "x2": 0.3,
654
- "y2": 1
655
- }
656
- },
657
- {
658
- "time": 10,
659
- "value": 0
660
- }
661
- ]
662
- }
663
- }
664
- }
665
- },
666
- {
667
- "id": "cta-headline",
668
- "type": "text",
669
- "x": 640,
670
- "y": 300,
671
- "text": "Start building",
672
- "align": "center",
673
- "valign": "middle",
674
- "fontSize": 52,
675
- "fontFamily": "Inter, system-ui, sans-serif",
676
- "weight": 800,
677
- "fill": "#ffffff",
678
- "opacity": 0,
679
- "timeline": {
680
- "tracks": {
681
- "opacity": {
682
- "keyframes": [
683
- {
684
- "time": 10,
685
- "value": 0,
686
- "out": {
687
- "type": "cubicBezier",
688
- "x1": 0.16,
689
- "y1": 1,
690
- "x2": 0.3,
691
- "y2": 1
692
- }
693
- },
694
- {
695
- "time": 10.5,
696
- "value": 1
697
- }
698
- ]
699
- },
700
- "y": {
701
- "keyframes": [
702
- {
703
- "time": 10,
704
- "value": 320,
705
- "out": {
706
- "type": "cubicBezier",
707
- "x1": 0.16,
708
- "y1": 1,
709
- "x2": 0.3,
710
- "y2": 1
711
- }
712
- },
713
- {
714
- "time": 10.5,
715
- "value": 300
716
- }
717
- ]
718
- }
719
- }
720
- }
721
- },
722
- {
723
- "id": "cta-btn-bg",
724
- "type": "path",
725
- "d": "M 548 370 L 732 370 Q 740 370 740 378 L 740 414 Q 740 422 732 422 L 548 422 Q 540 422 540 414 L 540 378 Q 540 370 548 370 Z",
726
- "fill": "#ffffff",
727
- "stroke": "none",
728
- "opacity": 0,
729
- "timeline": {
730
- "tracks": {
731
- "opacity": {
732
- "keyframes": [
733
- {
734
- "time": 10.3,
735
- "value": 0,
736
- "out": {
737
- "type": "cubicBezier",
738
- "x1": 0.16,
739
- "y1": 1,
740
- "x2": 0.3,
741
- "y2": 1
742
- }
743
- },
744
- {
745
- "time": 10.7,
746
- "value": 1
747
- }
748
- ]
749
- },
750
- "y": {
751
- "keyframes": [
752
- {
753
- "time": 10.3,
754
- "value": 390,
755
- "out": {
756
- "type": "cubicBezier",
757
- "x1": 0.16,
758
- "y1": 1,
759
- "x2": 0.3,
760
- "y2": 1
761
- }
762
- },
763
- {
764
- "time": 10.7,
765
- "value": 370
766
- }
767
- ]
768
- }
769
- }
770
- }
771
- },
772
- {
773
- "id": "cta-btn-text",
774
- "type": "text",
775
- "x": 640,
776
- "y": 396,
777
- "text": "Get Started",
778
- "align": "center",
779
- "valign": "middle",
780
- "fontSize": 16,
781
- "fontFamily": "Inter, system-ui, sans-serif",
782
- "weight": 600,
783
- "fill": "#0f172a",
784
- "opacity": 0,
785
- "timeline": {
786
- "tracks": {
787
- "opacity": {
788
- "keyframes": [
789
- {
790
- "time": 10.3,
791
- "value": 0,
792
- "out": {
793
- "type": "cubicBezier",
794
- "x1": 0.16,
795
- "y1": 1,
796
- "x2": 0.3,
797
- "y2": 1
798
- }
799
- },
800
- {
801
- "time": 10.7,
802
- "value": 1
803
- }
804
- ]
805
- },
806
- "y": {
807
- "keyframes": [
808
- {
809
- "time": 10.3,
810
- "value": 416,
811
- "out": {
812
- "type": "cubicBezier",
813
- "x1": 0.16,
814
- "y1": 1,
815
- "x2": 0.3,
816
- "y2": 1
817
- }
818
- },
819
- {
820
- "time": 10.7,
821
- "value": 396
822
- }
823
- ]
824
- }
825
- }
826
- }
827
- },
828
- {
829
- "id": "footer-label",
830
- "type": "text",
831
- "x": 640,
832
- "y": 680,
833
- "text": "sketchmark.dev",
834
- "align": "center",
835
- "valign": "middle",
836
- "fontSize": 14,
837
- "fontFamily": "Inter, system-ui, sans-serif",
838
- "weight": 500,
839
- "fill": "#94a3b8",
840
- "opacity": 0,
841
- "timeline": {
842
- "tracks": {
843
- "opacity": {
844
- "keyframes": [
845
- {
846
- "time": 10.5,
847
- "value": 0,
848
- "out": {
849
- "type": "cubicBezier",
850
- "x1": 0.16,
851
- "y1": 1,
852
- "x2": 0.3,
853
- "y2": 1
854
- }
855
- },
856
- {
857
- "time": 11,
858
- "value": 0.7
859
- }
860
- ]
861
- }
862
- }
863
- }
864
- }
865
- ]
866
- }