fancy-ui-svelte 0.4.1 → 0.5.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.
- package/README.md +18 -4
- package/dist/fancy-ui/fluid-cursor/FluidCursor.svelte +168 -32
- package/dist/fancy-ui/fluid-cursor/FluidCursor.svelte.d.ts +7 -0
- package/dist/fancy-ui/fluid-cursor/FluidCursor.test.js +36 -9
- package/dist/fancy-ui/fluid-cursor/index.d.ts +4 -1
- package/dist/fancy-ui/fluid-cursor/index.js +4 -1
- package/dist/fancy-ui/registry.js +1463 -0
- package/dist/fancy-ui/shimmer-button/ShimmerButton.svelte +1 -1
- package/dist/fancy-ui/tailwind.css +2 -2
- package/dist/types.d.ts +35 -0
- package/package.json +7 -1
- package/dist/fancy-ui/fluid-cursor/FluidCursorAdvanced.svelte +0 -1556
- package/dist/fancy-ui/fluid-cursor/FluidCursorAdvanced.svelte.d.ts +0 -33
- package/dist/fancy-ui/fluid-cursor/FluidCursorAdvanced.test.d.ts +0 -1
- package/dist/fancy-ui/fluid-cursor/FluidCursorAdvanced.test.js +0 -86
|
@@ -77,6 +77,15 @@ export const registry = {
|
|
|
77
77
|
url: "https://ui.aceternity.com/components/apple-cards-carousel",
|
|
78
78
|
},
|
|
79
79
|
],
|
|
80
|
+
tags: ["carousel", "cards", "animation", "spring", "scroll"],
|
|
81
|
+
props: [
|
|
82
|
+
{
|
|
83
|
+
name: "cards",
|
|
84
|
+
type: "AppleCardData[]",
|
|
85
|
+
description: "Cards to display in the carousel",
|
|
86
|
+
required: true,
|
|
87
|
+
},
|
|
88
|
+
],
|
|
80
89
|
},
|
|
81
90
|
"animated-beam": {
|
|
82
91
|
name: "AnimatedBeam",
|
|
@@ -85,6 +94,95 @@ export const registry = {
|
|
|
85
94
|
category: "effects",
|
|
86
95
|
status: "done",
|
|
87
96
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/animated-beam" }],
|
|
97
|
+
tags: ["animation", "svg", "beam", "gradient", "connection"],
|
|
98
|
+
props: [
|
|
99
|
+
{
|
|
100
|
+
name: "containerRef",
|
|
101
|
+
type: "HTMLElement",
|
|
102
|
+
description: "Reference to the container element that holds both endpoints",
|
|
103
|
+
required: true,
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
name: "fromRef",
|
|
107
|
+
type: "HTMLElement",
|
|
108
|
+
description: "Reference to the source element",
|
|
109
|
+
required: true,
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
name: "toRef",
|
|
113
|
+
type: "HTMLElement",
|
|
114
|
+
description: "Reference to the destination element",
|
|
115
|
+
required: true,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
name: "curvature",
|
|
119
|
+
type: "number",
|
|
120
|
+
default: "0",
|
|
121
|
+
description: "Vertical curvature of the beam path",
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: "reverse",
|
|
125
|
+
type: "boolean",
|
|
126
|
+
default: "false",
|
|
127
|
+
description: "Reverse the animation direction",
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
name: "pathColor",
|
|
131
|
+
type: "string",
|
|
132
|
+
default: '"gray"',
|
|
133
|
+
description: "Color of the static background path",
|
|
134
|
+
},
|
|
135
|
+
{ name: "pathWidth", type: "number", default: "2", description: "Stroke width of the path" },
|
|
136
|
+
{
|
|
137
|
+
name: "pathOpacity",
|
|
138
|
+
type: "number",
|
|
139
|
+
default: "0.2",
|
|
140
|
+
description: "Opacity of the background path",
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
name: "gradientStartColor",
|
|
144
|
+
type: "string",
|
|
145
|
+
default: '"#FFAA40"',
|
|
146
|
+
description: "Start color of the animated gradient",
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
name: "gradientStopColor",
|
|
150
|
+
type: "string",
|
|
151
|
+
default: '"#9C40FF"',
|
|
152
|
+
description: "End color of the animated gradient",
|
|
153
|
+
},
|
|
154
|
+
{ name: "delay", type: "number", default: "0", description: "Animation delay in seconds" },
|
|
155
|
+
{
|
|
156
|
+
name: "duration",
|
|
157
|
+
type: "number",
|
|
158
|
+
default: "random 4-7",
|
|
159
|
+
description: "Animation duration in seconds",
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
name: "startXOffset",
|
|
163
|
+
type: "number",
|
|
164
|
+
default: "0",
|
|
165
|
+
description: "Horizontal offset for the start point",
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
name: "startYOffset",
|
|
169
|
+
type: "number",
|
|
170
|
+
default: "0",
|
|
171
|
+
description: "Vertical offset for the start point",
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
name: "endXOffset",
|
|
175
|
+
type: "number",
|
|
176
|
+
default: "0",
|
|
177
|
+
description: "Horizontal offset for the end point",
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
name: "endYOffset",
|
|
181
|
+
type: "number",
|
|
182
|
+
default: "0",
|
|
183
|
+
description: "Vertical offset for the end point",
|
|
184
|
+
},
|
|
185
|
+
],
|
|
88
186
|
},
|
|
89
187
|
"animated-testimonials": {
|
|
90
188
|
name: "AnimatedTestimonials",
|
|
@@ -92,6 +190,27 @@ export const registry = {
|
|
|
92
190
|
description: "Testimonial carousel with smooth slide animations and optional autoplay",
|
|
93
191
|
category: "data-display",
|
|
94
192
|
status: "done",
|
|
193
|
+
tags: ["testimonials", "carousel", "animation", "social-proof"],
|
|
194
|
+
props: [
|
|
195
|
+
{
|
|
196
|
+
name: "testimonials",
|
|
197
|
+
type: "Testimonial[]",
|
|
198
|
+
description: "Array of testimonials to display",
|
|
199
|
+
required: true,
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
name: "autoplay",
|
|
203
|
+
type: "boolean",
|
|
204
|
+
default: "false",
|
|
205
|
+
description: "Auto-advance testimonials",
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
name: "interval",
|
|
209
|
+
type: "number",
|
|
210
|
+
default: "5000",
|
|
211
|
+
description: "Interval between auto-advances in ms",
|
|
212
|
+
},
|
|
213
|
+
],
|
|
95
214
|
},
|
|
96
215
|
"bg-falling-stars": {
|
|
97
216
|
name: "FallingStarsBg",
|
|
@@ -99,6 +218,11 @@ export const registry = {
|
|
|
99
218
|
description: "Canvas-based 3D starfield with perspective projection, motion trails, and glow",
|
|
100
219
|
category: "backgrounds",
|
|
101
220
|
status: "done",
|
|
221
|
+
tags: ["background", "stars", "canvas", "animation", "3d", "space"],
|
|
222
|
+
props: [
|
|
223
|
+
{ name: "color", type: "string", default: '"#FFF"', description: "Star color as hex string" },
|
|
224
|
+
{ name: "count", type: "number", default: "200", description: "Number of stars" },
|
|
225
|
+
],
|
|
102
226
|
},
|
|
103
227
|
"animated-tooltip": {
|
|
104
228
|
name: "AnimatedTooltip",
|
|
@@ -109,6 +233,15 @@ export const registry = {
|
|
|
109
233
|
credits: [
|
|
110
234
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/animated-tooltip" },
|
|
111
235
|
],
|
|
236
|
+
tags: ["tooltip", "avatar", "animation", "hover", "team"],
|
|
237
|
+
props: [
|
|
238
|
+
{
|
|
239
|
+
name: "items",
|
|
240
|
+
type: "TooltipItem[]",
|
|
241
|
+
description: "Array of items with id, name, designation, and image URL",
|
|
242
|
+
required: true,
|
|
243
|
+
},
|
|
244
|
+
],
|
|
112
245
|
},
|
|
113
246
|
"blur-reveal": {
|
|
114
247
|
name: "BlurReveal",
|
|
@@ -117,6 +250,36 @@ export const registry = {
|
|
|
117
250
|
category: "text",
|
|
118
251
|
status: "done",
|
|
119
252
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/blur-fade" }],
|
|
253
|
+
tags: ["animation", "reveal", "blur", "scroll", "stagger"],
|
|
254
|
+
props: [
|
|
255
|
+
{
|
|
256
|
+
name: "duration",
|
|
257
|
+
type: "number",
|
|
258
|
+
default: "1",
|
|
259
|
+
description: "Animation duration in seconds",
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
name: "delay",
|
|
263
|
+
type: "number",
|
|
264
|
+
default: "0.2",
|
|
265
|
+
description: "Stagger delay between children in seconds",
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
name: "blur",
|
|
269
|
+
type: "string",
|
|
270
|
+
default: '"20px"',
|
|
271
|
+
description: "Initial blur amount (CSS value)",
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
name: "yOffset",
|
|
275
|
+
type: "number",
|
|
276
|
+
default: "20",
|
|
277
|
+
description: "Initial vertical offset in pixels",
|
|
278
|
+
},
|
|
279
|
+
],
|
|
280
|
+
slots: [
|
|
281
|
+
{ name: "children", description: "Content elements to reveal with staggered animation" },
|
|
282
|
+
],
|
|
120
283
|
},
|
|
121
284
|
"border-beam": {
|
|
122
285
|
name: "BorderBeam",
|
|
@@ -125,6 +288,31 @@ export const registry = {
|
|
|
125
288
|
category: "effects",
|
|
126
289
|
status: "done",
|
|
127
290
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/border-beam" }],
|
|
291
|
+
tags: ["animation", "border", "gradient", "beam"],
|
|
292
|
+
props: [
|
|
293
|
+
{ name: "size", type: "number", default: "200", description: "Size of the beam in pixels" },
|
|
294
|
+
{
|
|
295
|
+
name: "duration",
|
|
296
|
+
type: "number",
|
|
297
|
+
default: "15",
|
|
298
|
+
description: "Animation duration in seconds",
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
name: "borderWidth",
|
|
302
|
+
type: "number",
|
|
303
|
+
default: "1.5",
|
|
304
|
+
description: "Border width in pixels",
|
|
305
|
+
},
|
|
306
|
+
{ name: "anchor", type: "number", default: "90", description: "Anchor position (0-100)" },
|
|
307
|
+
{
|
|
308
|
+
name: "colorFrom",
|
|
309
|
+
type: "string",
|
|
310
|
+
default: '"#ffaa40"',
|
|
311
|
+
description: "Gradient start color",
|
|
312
|
+
},
|
|
313
|
+
{ name: "colorTo", type: "string", default: '"#9c40ff"', description: "Gradient end color" },
|
|
314
|
+
{ name: "delay", type: "number", default: "0", description: "Animation delay in seconds" },
|
|
315
|
+
],
|
|
128
316
|
},
|
|
129
317
|
compare: {
|
|
130
318
|
name: "Compare",
|
|
@@ -133,6 +321,86 @@ export const registry = {
|
|
|
133
321
|
category: "media",
|
|
134
322
|
status: "done",
|
|
135
323
|
credits: [{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/compare" }],
|
|
324
|
+
tags: ["media", "image", "slider", "comparison", "before-after", "interactive"],
|
|
325
|
+
props: [
|
|
326
|
+
{
|
|
327
|
+
name: "firstImage",
|
|
328
|
+
type: "string",
|
|
329
|
+
default: '""',
|
|
330
|
+
description: "URL of the first (left) image",
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
name: "secondImage",
|
|
334
|
+
type: "string",
|
|
335
|
+
default: '""',
|
|
336
|
+
description: "URL of the second (right) image",
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
name: "firstImageAlt",
|
|
340
|
+
type: "string",
|
|
341
|
+
default: '"First image"',
|
|
342
|
+
description: "Alt text for the first image",
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
name: "secondImageAlt",
|
|
346
|
+
type: "string",
|
|
347
|
+
default: '"Second image"',
|
|
348
|
+
description: "Alt text for the second image",
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
name: "firstContentClass",
|
|
352
|
+
type: "string",
|
|
353
|
+
default: '""',
|
|
354
|
+
description: "CSS classes for the first content container",
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
name: "secondContentClass",
|
|
358
|
+
type: "string",
|
|
359
|
+
default: '""',
|
|
360
|
+
description: "CSS classes for the second content container",
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
name: "initialSliderPercentage",
|
|
364
|
+
type: "number",
|
|
365
|
+
default: "50",
|
|
366
|
+
description: "Initial slider position (0-100)",
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
name: "slideMode",
|
|
370
|
+
type: '"hover" | "drag"',
|
|
371
|
+
default: '"hover"',
|
|
372
|
+
description: "How the slider is controlled",
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
name: "showHandlebar",
|
|
376
|
+
type: "boolean",
|
|
377
|
+
default: "true",
|
|
378
|
+
description: "Show the drag handle bar",
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
name: "autoplay",
|
|
382
|
+
type: "boolean",
|
|
383
|
+
default: "false",
|
|
384
|
+
description: "Automatically animate the slider back and forth",
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
name: "autoplayDuration",
|
|
388
|
+
type: "number",
|
|
389
|
+
default: "5000",
|
|
390
|
+
description: "Duration of one autoplay cycle in ms",
|
|
391
|
+
},
|
|
392
|
+
],
|
|
393
|
+
slots: [
|
|
394
|
+
{
|
|
395
|
+
name: "firstContent",
|
|
396
|
+
description: "Custom content to render in the first (left) panel instead of an image",
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
name: "secondContent",
|
|
400
|
+
description: "Custom content to render in the second (right) panel instead of an image",
|
|
401
|
+
},
|
|
402
|
+
{ name: "handle", description: "Custom drag handle element" },
|
|
403
|
+
],
|
|
136
404
|
},
|
|
137
405
|
"image-trail-cursor": {
|
|
138
406
|
name: "ImageTrailCursor",
|
|
@@ -140,6 +408,21 @@ export const registry = {
|
|
|
140
408
|
description: "Cursor-following image trail with 8 animation variants",
|
|
141
409
|
category: "effects",
|
|
142
410
|
status: "done",
|
|
411
|
+
tags: ["cursor", "animation", "images", "trail", "interactive"],
|
|
412
|
+
props: [
|
|
413
|
+
{
|
|
414
|
+
name: "images",
|
|
415
|
+
type: "string[]",
|
|
416
|
+
default: "[]",
|
|
417
|
+
description: "Array of image URLs to show in the trail",
|
|
418
|
+
},
|
|
419
|
+
{
|
|
420
|
+
name: "variant",
|
|
421
|
+
type: '"type1" | "type2" | ... | "type8"',
|
|
422
|
+
default: '"type1"',
|
|
423
|
+
description: "Animation variant controlling how images appear and move",
|
|
424
|
+
},
|
|
425
|
+
],
|
|
143
426
|
},
|
|
144
427
|
"interactive-grid-pattern": {
|
|
145
428
|
name: "InteractiveGridPattern",
|
|
@@ -153,6 +436,32 @@ export const registry = {
|
|
|
153
436
|
url: "https://magicui.design/docs/components/interactive-grid-pattern",
|
|
154
437
|
},
|
|
155
438
|
],
|
|
439
|
+
tags: ["grid", "pattern", "interactive", "hover", "svg", "background"],
|
|
440
|
+
props: [
|
|
441
|
+
{
|
|
442
|
+
name: "squaresClassName",
|
|
443
|
+
type: "string",
|
|
444
|
+
description: "Additional CSS classes for individual squares",
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
name: "width",
|
|
448
|
+
type: "number",
|
|
449
|
+
default: "40",
|
|
450
|
+
description: "Width of each square in pixels",
|
|
451
|
+
},
|
|
452
|
+
{
|
|
453
|
+
name: "height",
|
|
454
|
+
type: "number",
|
|
455
|
+
default: "40",
|
|
456
|
+
description: "Height of each square in pixels",
|
|
457
|
+
},
|
|
458
|
+
{
|
|
459
|
+
name: "squares",
|
|
460
|
+
type: "[number, number]",
|
|
461
|
+
default: "[24, 24]",
|
|
462
|
+
description: "Grid dimensions as [columns, rows]",
|
|
463
|
+
},
|
|
464
|
+
],
|
|
156
465
|
},
|
|
157
466
|
"line-hover-link": {
|
|
158
467
|
name: "LineHoverLink",
|
|
@@ -161,6 +470,20 @@ export const registry = {
|
|
|
161
470
|
category: "navigation",
|
|
162
471
|
status: "done",
|
|
163
472
|
credits: [{ source: "VengenceUI", url: "https://www.vengence-ui.com/docs/line-hover-link" }],
|
|
473
|
+
tags: ["link", "navigation", "hover", "animation", "underline", "css"],
|
|
474
|
+
props: [
|
|
475
|
+
{
|
|
476
|
+
name: "variant",
|
|
477
|
+
type: '"slide" | "double" | "grow" | "strike" | "fade" | "pulse" | "swap" | "sweep" | "bounce" | "arc" | "scribble"',
|
|
478
|
+
default: '"slide"',
|
|
479
|
+
description: "The animation variant",
|
|
480
|
+
},
|
|
481
|
+
{ name: "href", type: "string", default: '"#"', description: "Link href" },
|
|
482
|
+
{ name: "target", type: "string", description: "Link target attribute" },
|
|
483
|
+
{ name: "rel", type: "string", description: "Link rel attribute" },
|
|
484
|
+
{ name: "aria-label", type: "string", description: "Accessible label" },
|
|
485
|
+
],
|
|
486
|
+
slots: [{ name: "children", description: "Link text content" }],
|
|
164
487
|
},
|
|
165
488
|
"logo-cloud": {
|
|
166
489
|
name: "LogoCloud",
|
|
@@ -169,6 +492,16 @@ export const registry = {
|
|
|
169
492
|
category: "data-display",
|
|
170
493
|
status: "done",
|
|
171
494
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/marquee" }],
|
|
495
|
+
tags: ["logos", "marquee", "brands", "animation", "scrolling"],
|
|
496
|
+
props: [
|
|
497
|
+
{ name: "title", type: "string", description: "Optional title displayed above the logos" },
|
|
498
|
+
{
|
|
499
|
+
name: "logos",
|
|
500
|
+
type: "Logo[]",
|
|
501
|
+
default: "[]",
|
|
502
|
+
description: "Array of logos with name and image path",
|
|
503
|
+
},
|
|
504
|
+
],
|
|
172
505
|
},
|
|
173
506
|
"direction-aware-hover": {
|
|
174
507
|
name: "DirectionAwareHover",
|
|
@@ -182,6 +515,34 @@ export const registry = {
|
|
|
182
515
|
url: "https://ui.aceternity.com/components/direction-aware-hover",
|
|
183
516
|
},
|
|
184
517
|
],
|
|
518
|
+
tags: ["card", "hover", "image", "animation", "direction", "interactive"],
|
|
519
|
+
props: [
|
|
520
|
+
{
|
|
521
|
+
name: "imageUrl",
|
|
522
|
+
type: "string",
|
|
523
|
+
description: "URL of the background image",
|
|
524
|
+
required: true,
|
|
525
|
+
},
|
|
526
|
+
{
|
|
527
|
+
name: "imageAlt",
|
|
528
|
+
type: "string",
|
|
529
|
+
default: '"image"',
|
|
530
|
+
description: "Alt text for the image",
|
|
531
|
+
},
|
|
532
|
+
{
|
|
533
|
+
name: "childrenClass",
|
|
534
|
+
type: "string",
|
|
535
|
+
default: '""',
|
|
536
|
+
description: "CSS classes for the overlay content wrapper",
|
|
537
|
+
},
|
|
538
|
+
{
|
|
539
|
+
name: "imageClass",
|
|
540
|
+
type: "string",
|
|
541
|
+
default: '""',
|
|
542
|
+
description: "CSS classes for the image element",
|
|
543
|
+
},
|
|
544
|
+
],
|
|
545
|
+
slots: [{ name: "children", description: "Content shown in the overlay when hovered" }],
|
|
185
546
|
},
|
|
186
547
|
"rainbow-button": {
|
|
187
548
|
name: "RainbowButton",
|
|
@@ -190,6 +551,12 @@ export const registry = {
|
|
|
190
551
|
category: "buttons",
|
|
191
552
|
status: "done",
|
|
192
553
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/rainbow-button" }],
|
|
554
|
+
tags: ["button", "animation", "rainbow", "gradient", "cta"],
|
|
555
|
+
props: [
|
|
556
|
+
{ name: "speed", type: "number", default: "2", description: "Animation speed in seconds" },
|
|
557
|
+
{ name: "href", type: "string", description: "Render as anchor element when provided" },
|
|
558
|
+
],
|
|
559
|
+
slots: [{ name: "children", description: "Button label content" }],
|
|
193
560
|
},
|
|
194
561
|
"ripple-button": {
|
|
195
562
|
name: "RippleButton",
|
|
@@ -198,6 +565,22 @@ export const registry = {
|
|
|
198
565
|
category: "buttons",
|
|
199
566
|
status: "done",
|
|
200
567
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/ripple-button" }],
|
|
568
|
+
tags: ["button", "ripple", "click", "animation", "material"],
|
|
569
|
+
props: [
|
|
570
|
+
{
|
|
571
|
+
name: "rippleColor",
|
|
572
|
+
type: "string",
|
|
573
|
+
default: '"#ADD8E6"',
|
|
574
|
+
description: "Color of the ripple effect",
|
|
575
|
+
},
|
|
576
|
+
{
|
|
577
|
+
name: "duration",
|
|
578
|
+
type: "number",
|
|
579
|
+
default: "600",
|
|
580
|
+
description: "Animation duration in milliseconds",
|
|
581
|
+
},
|
|
582
|
+
],
|
|
583
|
+
slots: [{ name: "children", description: "Button content" }],
|
|
201
584
|
},
|
|
202
585
|
"shimmer-button": {
|
|
203
586
|
name: "ShimmerButton",
|
|
@@ -206,6 +589,40 @@ export const registry = {
|
|
|
206
589
|
category: "buttons",
|
|
207
590
|
status: "done",
|
|
208
591
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/shimmer-button" }],
|
|
592
|
+
tags: ["button", "shimmer", "gradient", "animation", "cta"],
|
|
593
|
+
props: [
|
|
594
|
+
{
|
|
595
|
+
name: "shimmerColor",
|
|
596
|
+
type: "string",
|
|
597
|
+
default: '"#ffffff"',
|
|
598
|
+
description: "Shimmer highlight color",
|
|
599
|
+
},
|
|
600
|
+
{
|
|
601
|
+
name: "shimmerSize",
|
|
602
|
+
type: "string",
|
|
603
|
+
default: '"0.05em"',
|
|
604
|
+
description: "Thickness of the shimmer border",
|
|
605
|
+
},
|
|
606
|
+
{
|
|
607
|
+
name: "borderRadius",
|
|
608
|
+
type: "string",
|
|
609
|
+
default: '"100px"',
|
|
610
|
+
description: "Button border radius",
|
|
611
|
+
},
|
|
612
|
+
{
|
|
613
|
+
name: "shimmerDuration",
|
|
614
|
+
type: "string",
|
|
615
|
+
default: '"3s"',
|
|
616
|
+
description: "Duration of the shimmer animation cycle",
|
|
617
|
+
},
|
|
618
|
+
{
|
|
619
|
+
name: "background",
|
|
620
|
+
type: "string",
|
|
621
|
+
default: '"rgba(0, 0, 0, 1)"',
|
|
622
|
+
description: "Button background color",
|
|
623
|
+
},
|
|
624
|
+
],
|
|
625
|
+
slots: [{ name: "children", description: "Button content" }],
|
|
209
626
|
},
|
|
210
627
|
timeline: {
|
|
211
628
|
name: "Timeline",
|
|
@@ -214,6 +631,23 @@ export const registry = {
|
|
|
214
631
|
category: "navigation",
|
|
215
632
|
status: "done",
|
|
216
633
|
credits: [{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/timeline" }],
|
|
634
|
+
tags: ["timeline", "scroll", "navigation", "progress", "vertical"],
|
|
635
|
+
props: [
|
|
636
|
+
{
|
|
637
|
+
name: "items",
|
|
638
|
+
type: "TimelineItem[]",
|
|
639
|
+
default: "[]",
|
|
640
|
+
description: "Timeline entries with id and label",
|
|
641
|
+
},
|
|
642
|
+
{ name: "title", type: "string", description: "Heading text" },
|
|
643
|
+
{ name: "description", type: "string", description: "Subheading text" },
|
|
644
|
+
],
|
|
645
|
+
slots: [
|
|
646
|
+
{
|
|
647
|
+
name: "content",
|
|
648
|
+
description: "Content snippet called for each timeline item, receives the item as argument",
|
|
649
|
+
},
|
|
650
|
+
],
|
|
217
651
|
},
|
|
218
652
|
"bg-stars": {
|
|
219
653
|
name: "StarsBackground",
|
|
@@ -224,6 +658,35 @@ export const registry = {
|
|
|
224
658
|
credits: [
|
|
225
659
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/stars-background" },
|
|
226
660
|
],
|
|
661
|
+
tags: ["background", "stars", "parallax", "animation", "space", "mouse"],
|
|
662
|
+
props: [
|
|
663
|
+
{
|
|
664
|
+
name: "factor",
|
|
665
|
+
type: "number",
|
|
666
|
+
default: "0.05",
|
|
667
|
+
description: "Parallax factor for mouse movement",
|
|
668
|
+
},
|
|
669
|
+
{
|
|
670
|
+
name: "speed",
|
|
671
|
+
type: "number",
|
|
672
|
+
default: "50",
|
|
673
|
+
description: "Base animation speed in seconds",
|
|
674
|
+
},
|
|
675
|
+
{
|
|
676
|
+
name: "stiffness",
|
|
677
|
+
type: "number",
|
|
678
|
+
default: "50",
|
|
679
|
+
description: "Spring stiffness for parallax",
|
|
680
|
+
},
|
|
681
|
+
{
|
|
682
|
+
name: "damping",
|
|
683
|
+
type: "number",
|
|
684
|
+
default: "20",
|
|
685
|
+
description: "Spring damping for parallax",
|
|
686
|
+
},
|
|
687
|
+
{ name: "starColor", type: "string", default: '"#fff"', description: "Color of the stars" },
|
|
688
|
+
],
|
|
689
|
+
slots: [{ name: "children", description: "Child content to render over the stars" }],
|
|
227
690
|
},
|
|
228
691
|
dock: {
|
|
229
692
|
name: "Dock",
|
|
@@ -232,6 +695,34 @@ export const registry = {
|
|
|
232
695
|
category: "navigation",
|
|
233
696
|
status: "done",
|
|
234
697
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/dock" }],
|
|
698
|
+
tags: ["dock", "navigation", "macos", "magnification", "hover"],
|
|
699
|
+
props: [
|
|
700
|
+
{
|
|
701
|
+
name: "magnification",
|
|
702
|
+
type: "number",
|
|
703
|
+
default: "60",
|
|
704
|
+
description: "Maximum icon size in pixels when magnified",
|
|
705
|
+
},
|
|
706
|
+
{
|
|
707
|
+
name: "distance",
|
|
708
|
+
type: "number",
|
|
709
|
+
default: "140",
|
|
710
|
+
description: "Distance in pixels over which magnification takes effect",
|
|
711
|
+
},
|
|
712
|
+
{
|
|
713
|
+
name: "direction",
|
|
714
|
+
type: '"top" | "middle" | "bottom"',
|
|
715
|
+
default: '"middle"',
|
|
716
|
+
description: "Vertical alignment of icons relative to the dock bar",
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
name: "orientation",
|
|
720
|
+
type: '"horizontal" | "vertical"',
|
|
721
|
+
default: '"horizontal"',
|
|
722
|
+
description: "Dock orientation",
|
|
723
|
+
},
|
|
724
|
+
],
|
|
725
|
+
slots: [{ name: "children", description: "DockIcon and DockSeparator elements" }],
|
|
235
726
|
},
|
|
236
727
|
"fluid-cursor": {
|
|
237
728
|
name: "FluidCursor",
|
|
@@ -242,6 +733,127 @@ export const registry = {
|
|
|
242
733
|
credits: [
|
|
243
734
|
{ source: "Inspira UI", url: "https://inspira-ui.com/components/cursor/fluid-cursor" },
|
|
244
735
|
],
|
|
736
|
+
tags: ["cursor", "webgl", "fluid", "simulation", "interactive"],
|
|
737
|
+
props: [
|
|
738
|
+
{
|
|
739
|
+
name: "simResolution",
|
|
740
|
+
type: "number",
|
|
741
|
+
default: "128",
|
|
742
|
+
description: "Simulation grid resolution",
|
|
743
|
+
},
|
|
744
|
+
{
|
|
745
|
+
name: "dyeResolution",
|
|
746
|
+
type: "number",
|
|
747
|
+
default: "1440",
|
|
748
|
+
description: "Dye/color buffer resolution",
|
|
749
|
+
},
|
|
750
|
+
{
|
|
751
|
+
name: "captureResolution",
|
|
752
|
+
type: "number",
|
|
753
|
+
default: "512",
|
|
754
|
+
description: "Capture buffer resolution",
|
|
755
|
+
},
|
|
756
|
+
{
|
|
757
|
+
name: "densityDissipation",
|
|
758
|
+
type: "number",
|
|
759
|
+
default: "3.5",
|
|
760
|
+
description: "Rate at which density fades",
|
|
761
|
+
},
|
|
762
|
+
{
|
|
763
|
+
name: "velocityDissipation",
|
|
764
|
+
type: "number",
|
|
765
|
+
default: "2",
|
|
766
|
+
description: "Rate at which velocity fades",
|
|
767
|
+
},
|
|
768
|
+
{ name: "pressure", type: "number", default: "0.1", description: "Pressure solver strength" },
|
|
769
|
+
{
|
|
770
|
+
name: "pressureIterations",
|
|
771
|
+
type: "number",
|
|
772
|
+
default: "20",
|
|
773
|
+
description: "Number of pressure solver iterations",
|
|
774
|
+
},
|
|
775
|
+
{ name: "curl", type: "number", default: "3", description: "Amount of curl/vorticity" },
|
|
776
|
+
{
|
|
777
|
+
name: "splatRadius",
|
|
778
|
+
type: "number",
|
|
779
|
+
default: "0.2",
|
|
780
|
+
description: "Radius of fluid splats",
|
|
781
|
+
},
|
|
782
|
+
{ name: "splatForce", type: "number", default: "6000", description: "Force of fluid splats" },
|
|
783
|
+
{ name: "shading", type: "boolean", default: "true", description: "Enable fluid shading" },
|
|
784
|
+
{
|
|
785
|
+
name: "colorUpdateSpeed",
|
|
786
|
+
type: "number",
|
|
787
|
+
default: "10",
|
|
788
|
+
description: "Speed of color changes",
|
|
789
|
+
},
|
|
790
|
+
{
|
|
791
|
+
name: "backColor",
|
|
792
|
+
type: "ColorRGB | string",
|
|
793
|
+
default: "{ r: 0.5, g: 0, b: 0 }",
|
|
794
|
+
description: "Background color",
|
|
795
|
+
},
|
|
796
|
+
{
|
|
797
|
+
name: "transparent",
|
|
798
|
+
type: "boolean",
|
|
799
|
+
default: "true",
|
|
800
|
+
description: "Transparent background",
|
|
801
|
+
},
|
|
802
|
+
{ name: "fluidColor", type: "string", description: "Override all fluid with a single color" },
|
|
803
|
+
{
|
|
804
|
+
name: "fluidColors",
|
|
805
|
+
type: "string[]",
|
|
806
|
+
description: "Array of colors to cycle through for fluid splats",
|
|
807
|
+
},
|
|
808
|
+
{
|
|
809
|
+
name: "colorIntensity",
|
|
810
|
+
type: "number",
|
|
811
|
+
default: "0.15",
|
|
812
|
+
description: "Intensity of color mixing",
|
|
813
|
+
},
|
|
814
|
+
{
|
|
815
|
+
name: "autoSplat",
|
|
816
|
+
type: "boolean",
|
|
817
|
+
default: "false",
|
|
818
|
+
description: "Automatically create random splats",
|
|
819
|
+
},
|
|
820
|
+
{
|
|
821
|
+
name: "autoSplatInterval",
|
|
822
|
+
type: "number",
|
|
823
|
+
default: "1500",
|
|
824
|
+
description: "Interval between auto-splats in ms",
|
|
825
|
+
},
|
|
826
|
+
{
|
|
827
|
+
name: "interactive",
|
|
828
|
+
type: "boolean",
|
|
829
|
+
default: "true",
|
|
830
|
+
description: "React to mouse/touch input",
|
|
831
|
+
},
|
|
832
|
+
{
|
|
833
|
+
name: "pauseWhenHidden",
|
|
834
|
+
type: "boolean",
|
|
835
|
+
default: "true",
|
|
836
|
+
description: "Pause simulation when tab is hidden",
|
|
837
|
+
},
|
|
838
|
+
{
|
|
839
|
+
name: "splatOnMount",
|
|
840
|
+
type: "boolean",
|
|
841
|
+
default: "false",
|
|
842
|
+
description: "Create a splat on mount",
|
|
843
|
+
},
|
|
844
|
+
{
|
|
845
|
+
name: "allowMultiple",
|
|
846
|
+
type: "boolean",
|
|
847
|
+
default: "false",
|
|
848
|
+
description: "Allow multiple instances simultaneously",
|
|
849
|
+
},
|
|
850
|
+
{
|
|
851
|
+
name: "contained",
|
|
852
|
+
type: "boolean",
|
|
853
|
+
default: "true",
|
|
854
|
+
description: "Confine simulation to parent container",
|
|
855
|
+
},
|
|
856
|
+
],
|
|
245
857
|
},
|
|
246
858
|
"fluid-cursor-advanced": {
|
|
247
859
|
name: "FluidCursorAdvanced",
|
|
@@ -252,6 +864,7 @@ export const registry = {
|
|
|
252
864
|
credits: [
|
|
253
865
|
{ source: "Inspira UI", url: "https://inspira-ui.com/components/cursor/fluid-cursor" },
|
|
254
866
|
],
|
|
867
|
+
tags: ["cursor", "webgl", "fluid", "simulation", "interactive", "contained"],
|
|
255
868
|
},
|
|
256
869
|
"glow-border": {
|
|
257
870
|
name: "GlowBorder",
|
|
@@ -262,6 +875,28 @@ export const registry = {
|
|
|
262
875
|
credits: [
|
|
263
876
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/background-gradient" },
|
|
264
877
|
],
|
|
878
|
+
tags: ["border", "glow", "animation", "gradient", "decoration"],
|
|
879
|
+
props: [
|
|
880
|
+
{
|
|
881
|
+
name: "borderRadius",
|
|
882
|
+
type: "number",
|
|
883
|
+
default: "10",
|
|
884
|
+
description: "Border radius in pixels",
|
|
885
|
+
},
|
|
886
|
+
{
|
|
887
|
+
name: "color",
|
|
888
|
+
type: "string | string[]",
|
|
889
|
+
default: '"#FFF"',
|
|
890
|
+
description: "Glow color or array of colors for gradient",
|
|
891
|
+
},
|
|
892
|
+
{ name: "borderWidth", type: "number", default: "2", description: "Border width in pixels" },
|
|
893
|
+
{
|
|
894
|
+
name: "duration",
|
|
895
|
+
type: "number",
|
|
896
|
+
default: "10",
|
|
897
|
+
description: "Animation duration in seconds",
|
|
898
|
+
},
|
|
899
|
+
],
|
|
265
900
|
},
|
|
266
901
|
"gradient-button": {
|
|
267
902
|
name: "GradientButton",
|
|
@@ -272,6 +907,41 @@ export const registry = {
|
|
|
272
907
|
credits: [
|
|
273
908
|
{ source: "Inspira UI", url: "https://inspira-ui.com/components/buttons/gradient-button" },
|
|
274
909
|
],
|
|
910
|
+
tags: ["button", "gradient", "animation", "rainbow", "border", "cta"],
|
|
911
|
+
props: [
|
|
912
|
+
{
|
|
913
|
+
name: "colors",
|
|
914
|
+
type: "string[]",
|
|
915
|
+
default: '["#FF0000","#FFA500","#FFFF00","#008000","#0000FF","#4B0082","#EE82EE","#FF0000"]',
|
|
916
|
+
description: "Gradient colors for the conic-gradient border",
|
|
917
|
+
},
|
|
918
|
+
{
|
|
919
|
+
name: "duration",
|
|
920
|
+
type: "number",
|
|
921
|
+
default: "2500",
|
|
922
|
+
description: "Animation duration in milliseconds",
|
|
923
|
+
},
|
|
924
|
+
{ name: "borderWidth", type: "number", default: "2", description: "Border width in pixels" },
|
|
925
|
+
{
|
|
926
|
+
name: "borderRadius",
|
|
927
|
+
type: "number",
|
|
928
|
+
default: "8",
|
|
929
|
+
description: "Border radius in pixels",
|
|
930
|
+
},
|
|
931
|
+
{
|
|
932
|
+
name: "blur",
|
|
933
|
+
type: "number",
|
|
934
|
+
default: "4",
|
|
935
|
+
description: "Blur amount for the gradient in pixels",
|
|
936
|
+
},
|
|
937
|
+
{
|
|
938
|
+
name: "bgColor",
|
|
939
|
+
type: "string",
|
|
940
|
+
default: '"#000"',
|
|
941
|
+
description: "Background color of the button content area",
|
|
942
|
+
},
|
|
943
|
+
],
|
|
944
|
+
slots: [{ name: "children", description: "Button content" }],
|
|
275
945
|
},
|
|
276
946
|
"interactive-hover-button": {
|
|
277
947
|
name: "InteractiveHoverButton",
|
|
@@ -285,6 +955,16 @@ export const registry = {
|
|
|
285
955
|
url: "https://magicui.design/docs/components/interactive-hover-button",
|
|
286
956
|
},
|
|
287
957
|
],
|
|
958
|
+
tags: ["button", "hover", "animation", "interactive", "reveal"],
|
|
959
|
+
props: [
|
|
960
|
+
{
|
|
961
|
+
name: "text",
|
|
962
|
+
type: "string",
|
|
963
|
+
default: '"Button"',
|
|
964
|
+
description: "Button label text (used when children slot is not provided)",
|
|
965
|
+
},
|
|
966
|
+
],
|
|
967
|
+
slots: [{ name: "children", description: "Button content (overrides text prop)" }],
|
|
288
968
|
},
|
|
289
969
|
marquee: {
|
|
290
970
|
name: "Marquee",
|
|
@@ -293,6 +973,34 @@ export const registry = {
|
|
|
293
973
|
category: "layout",
|
|
294
974
|
status: "done",
|
|
295
975
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/marquee" }],
|
|
976
|
+
tags: ["marquee", "scrolling", "animation", "layout", "infinite"],
|
|
977
|
+
props: [
|
|
978
|
+
{
|
|
979
|
+
name: "reverse",
|
|
980
|
+
type: "boolean",
|
|
981
|
+
default: "false",
|
|
982
|
+
description: "Reverse the scroll direction",
|
|
983
|
+
},
|
|
984
|
+
{
|
|
985
|
+
name: "pauseOnHover",
|
|
986
|
+
type: "boolean",
|
|
987
|
+
default: "false",
|
|
988
|
+
description: "Pause animation on hover",
|
|
989
|
+
},
|
|
990
|
+
{
|
|
991
|
+
name: "vertical",
|
|
992
|
+
type: "boolean",
|
|
993
|
+
default: "false",
|
|
994
|
+
description: "Scroll vertically instead of horizontally",
|
|
995
|
+
},
|
|
996
|
+
{
|
|
997
|
+
name: "repeat",
|
|
998
|
+
type: "number",
|
|
999
|
+
default: "4",
|
|
1000
|
+
description: "Number of times to repeat children for seamless loop",
|
|
1001
|
+
},
|
|
1002
|
+
],
|
|
1003
|
+
slots: [{ name: "children", description: "Content to repeat and scroll" }],
|
|
296
1004
|
},
|
|
297
1005
|
meteors: {
|
|
298
1006
|
name: "Meteors",
|
|
@@ -301,6 +1009,10 @@ export const registry = {
|
|
|
301
1009
|
category: "effects",
|
|
302
1010
|
status: "done",
|
|
303
1011
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/meteors" }],
|
|
1012
|
+
tags: ["animation", "meteors", "particles", "decoration", "space"],
|
|
1013
|
+
props: [
|
|
1014
|
+
{ name: "count", type: "number", default: "20", description: "Number of meteors to render" },
|
|
1015
|
+
],
|
|
304
1016
|
},
|
|
305
1017
|
"flickering-grid": {
|
|
306
1018
|
name: "FlickeringGrid",
|
|
@@ -311,6 +1023,49 @@ export const registry = {
|
|
|
311
1023
|
credits: [
|
|
312
1024
|
{ source: "Magic UI", url: "https://magicui.design/docs/components/flickering-grid" },
|
|
313
1025
|
],
|
|
1026
|
+
tags: ["background", "grid", "canvas", "animation", "pattern"],
|
|
1027
|
+
props: [
|
|
1028
|
+
{
|
|
1029
|
+
name: "squareSize",
|
|
1030
|
+
type: "number",
|
|
1031
|
+
default: "4",
|
|
1032
|
+
description: "Size of each grid square in pixels",
|
|
1033
|
+
},
|
|
1034
|
+
{
|
|
1035
|
+
name: "gridGap",
|
|
1036
|
+
type: "number",
|
|
1037
|
+
default: "6",
|
|
1038
|
+
description: "Gap between squares in pixels",
|
|
1039
|
+
},
|
|
1040
|
+
{
|
|
1041
|
+
name: "flickerChance",
|
|
1042
|
+
type: "number",
|
|
1043
|
+
default: "0.3",
|
|
1044
|
+
description: "Probability of a square changing opacity each second (0-1)",
|
|
1045
|
+
},
|
|
1046
|
+
{
|
|
1047
|
+
name: "color",
|
|
1048
|
+
type: "string",
|
|
1049
|
+
default: '"#000000"',
|
|
1050
|
+
description: "Color of the squares (hex format)",
|
|
1051
|
+
},
|
|
1052
|
+
{
|
|
1053
|
+
name: "maxOpacity",
|
|
1054
|
+
type: "number",
|
|
1055
|
+
default: "0.3",
|
|
1056
|
+
description: "Maximum opacity of squares (0-1)",
|
|
1057
|
+
},
|
|
1058
|
+
{
|
|
1059
|
+
name: "width",
|
|
1060
|
+
type: "number",
|
|
1061
|
+
description: "Fixed width in pixels (defaults to container width)",
|
|
1062
|
+
},
|
|
1063
|
+
{
|
|
1064
|
+
name: "height",
|
|
1065
|
+
type: "number",
|
|
1066
|
+
description: "Fixed height in pixels (defaults to container height)",
|
|
1067
|
+
},
|
|
1068
|
+
],
|
|
314
1069
|
},
|
|
315
1070
|
"neon-border": {
|
|
316
1071
|
name: "NeonBorder",
|
|
@@ -321,6 +1076,26 @@ export const registry = {
|
|
|
321
1076
|
credits: [
|
|
322
1077
|
{ source: "Magic UI", url: "https://magicui.design/docs/components/neon-gradient-card" },
|
|
323
1078
|
],
|
|
1079
|
+
tags: ["border", "neon", "glow", "animation", "gradient", "decoration"],
|
|
1080
|
+
props: [
|
|
1081
|
+
{ name: "color1", type: "string", default: '"#0496ff"', description: "First neon color" },
|
|
1082
|
+
{ name: "color2", type: "string", default: '"#ff0a54"', description: "Second neon color" },
|
|
1083
|
+
{
|
|
1084
|
+
name: "animationType",
|
|
1085
|
+
type: '"none" | "half" | "full"',
|
|
1086
|
+
default: '"half"',
|
|
1087
|
+
description: "Animation type: none (static), half (50% coverage), full (100% coverage)",
|
|
1088
|
+
},
|
|
1089
|
+
{
|
|
1090
|
+
name: "duration",
|
|
1091
|
+
type: "number",
|
|
1092
|
+
default: "6",
|
|
1093
|
+
description: "Animation duration in seconds",
|
|
1094
|
+
},
|
|
1095
|
+
],
|
|
1096
|
+
slots: [
|
|
1097
|
+
{ name: "children", description: "Content to display inside the neon border container" },
|
|
1098
|
+
],
|
|
324
1099
|
},
|
|
325
1100
|
"colourful-text": {
|
|
326
1101
|
name: "ColourfulText",
|
|
@@ -331,6 +1106,28 @@ export const registry = {
|
|
|
331
1106
|
credits: [
|
|
332
1107
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/colourful-text" },
|
|
333
1108
|
],
|
|
1109
|
+
tags: ["text", "animation", "color", "gradient", "typography"],
|
|
1110
|
+
props: [
|
|
1111
|
+
{ name: "text", type: "string", description: "Text to animate", required: true },
|
|
1112
|
+
{
|
|
1113
|
+
name: "colors",
|
|
1114
|
+
type: "string[]",
|
|
1115
|
+
default: "[10 preset colors]",
|
|
1116
|
+
description: "Array of colors to cycle through",
|
|
1117
|
+
},
|
|
1118
|
+
{
|
|
1119
|
+
name: "startColor",
|
|
1120
|
+
type: "string",
|
|
1121
|
+
default: '"rgb(255, 255, 255)"',
|
|
1122
|
+
description: "Initial color before animation",
|
|
1123
|
+
},
|
|
1124
|
+
{
|
|
1125
|
+
name: "duration",
|
|
1126
|
+
type: "number",
|
|
1127
|
+
default: "0.5",
|
|
1128
|
+
description: "Transition duration in seconds for each character",
|
|
1129
|
+
},
|
|
1130
|
+
],
|
|
334
1131
|
},
|
|
335
1132
|
"flip-words": {
|
|
336
1133
|
name: "FlipWords",
|
|
@@ -339,6 +1136,21 @@ export const registry = {
|
|
|
339
1136
|
category: "text",
|
|
340
1137
|
status: "done",
|
|
341
1138
|
credits: [{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/flip-words" }],
|
|
1139
|
+
tags: ["text", "animation", "words", "cycling", "typography", "blur"],
|
|
1140
|
+
props: [
|
|
1141
|
+
{
|
|
1142
|
+
name: "words",
|
|
1143
|
+
type: "string[]",
|
|
1144
|
+
description: "Array of words to cycle through",
|
|
1145
|
+
required: true,
|
|
1146
|
+
},
|
|
1147
|
+
{
|
|
1148
|
+
name: "duration",
|
|
1149
|
+
type: "number",
|
|
1150
|
+
default: "3000",
|
|
1151
|
+
description: "Time each word stays visible in ms",
|
|
1152
|
+
},
|
|
1153
|
+
],
|
|
342
1154
|
},
|
|
343
1155
|
"hyper-text": {
|
|
344
1156
|
name: "HyperText",
|
|
@@ -347,6 +1159,22 @@ export const registry = {
|
|
|
347
1159
|
category: "text",
|
|
348
1160
|
status: "done",
|
|
349
1161
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/hyper-text" }],
|
|
1162
|
+
tags: ["text", "animation", "scramble", "hover", "glitch", "typography"],
|
|
1163
|
+
props: [
|
|
1164
|
+
{ name: "text", type: "string", description: "Text to display and scramble", required: true },
|
|
1165
|
+
{
|
|
1166
|
+
name: "duration",
|
|
1167
|
+
type: "number",
|
|
1168
|
+
default: "800",
|
|
1169
|
+
description: "Total animation duration in ms",
|
|
1170
|
+
},
|
|
1171
|
+
{
|
|
1172
|
+
name: "animateOnLoad",
|
|
1173
|
+
type: "boolean",
|
|
1174
|
+
default: "false",
|
|
1175
|
+
description: "Whether to animate on initial load",
|
|
1176
|
+
},
|
|
1177
|
+
],
|
|
350
1178
|
},
|
|
351
1179
|
"letter-pullup": {
|
|
352
1180
|
name: "LetterPullup",
|
|
@@ -355,6 +1183,21 @@ export const registry = {
|
|
|
355
1183
|
category: "text",
|
|
356
1184
|
status: "done",
|
|
357
1185
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/letter-pullup" }],
|
|
1186
|
+
tags: ["text", "animation", "letters", "stagger", "entrance", "typography"],
|
|
1187
|
+
props: [
|
|
1188
|
+
{
|
|
1189
|
+
name: "words",
|
|
1190
|
+
type: "string",
|
|
1191
|
+
description: "Text to animate (each character gets its own animation)",
|
|
1192
|
+
required: true,
|
|
1193
|
+
},
|
|
1194
|
+
{
|
|
1195
|
+
name: "delay",
|
|
1196
|
+
type: "number",
|
|
1197
|
+
default: "0.05",
|
|
1198
|
+
description: "Delay between each letter animation in seconds",
|
|
1199
|
+
},
|
|
1200
|
+
],
|
|
358
1201
|
},
|
|
359
1202
|
"number-ticker": {
|
|
360
1203
|
name: "NumberTicker",
|
|
@@ -363,6 +1206,34 @@ export const registry = {
|
|
|
363
1206
|
category: "text",
|
|
364
1207
|
status: "done",
|
|
365
1208
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/number-ticker" }],
|
|
1209
|
+
tags: ["text", "counter", "animation", "number", "scroll", "statistics"],
|
|
1210
|
+
props: [
|
|
1211
|
+
{ name: "value", type: "number", default: "0", description: "Target number to animate to" },
|
|
1212
|
+
{
|
|
1213
|
+
name: "direction",
|
|
1214
|
+
type: '"up" | "down"',
|
|
1215
|
+
default: '"up"',
|
|
1216
|
+
description: 'Animation direction: "up" counts 0→value, "down" counts value→0',
|
|
1217
|
+
},
|
|
1218
|
+
{
|
|
1219
|
+
name: "duration",
|
|
1220
|
+
type: "number",
|
|
1221
|
+
default: "1000",
|
|
1222
|
+
description: "Animation duration in ms",
|
|
1223
|
+
},
|
|
1224
|
+
{
|
|
1225
|
+
name: "delay",
|
|
1226
|
+
type: "number",
|
|
1227
|
+
default: "0",
|
|
1228
|
+
description: "Delay before animation starts in ms",
|
|
1229
|
+
},
|
|
1230
|
+
{
|
|
1231
|
+
name: "decimalPlaces",
|
|
1232
|
+
type: "number",
|
|
1233
|
+
default: "0",
|
|
1234
|
+
description: "Number of decimal places to display",
|
|
1235
|
+
},
|
|
1236
|
+
],
|
|
366
1237
|
},
|
|
367
1238
|
"sparkles-text": {
|
|
368
1239
|
name: "SparklesText",
|
|
@@ -371,6 +1242,22 @@ export const registry = {
|
|
|
371
1242
|
category: "text",
|
|
372
1243
|
status: "done",
|
|
373
1244
|
credits: [{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/sparkles" }],
|
|
1245
|
+
tags: ["text", "sparkles", "animation", "stars", "decoration", "typography"],
|
|
1246
|
+
props: [
|
|
1247
|
+
{ name: "text", type: "string", description: "Text to display", required: true },
|
|
1248
|
+
{
|
|
1249
|
+
name: "sparklesCount",
|
|
1250
|
+
type: "number",
|
|
1251
|
+
default: "10",
|
|
1252
|
+
description: "Number of sparkle stars",
|
|
1253
|
+
},
|
|
1254
|
+
{
|
|
1255
|
+
name: "colors",
|
|
1256
|
+
type: "{ first: string; second: string }",
|
|
1257
|
+
default: '{ first: "#9E7AFF", second: "#FE8BBB" }',
|
|
1258
|
+
description: "Two colors for sparkle stars",
|
|
1259
|
+
},
|
|
1260
|
+
],
|
|
374
1261
|
},
|
|
375
1262
|
"box-reveal": {
|
|
376
1263
|
name: "BoxReveal",
|
|
@@ -379,6 +1266,28 @@ export const registry = {
|
|
|
379
1266
|
category: "text",
|
|
380
1267
|
status: "done",
|
|
381
1268
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/box-reveal" }],
|
|
1269
|
+
tags: ["text", "animation", "reveal", "scroll", "entrance"],
|
|
1270
|
+
props: [
|
|
1271
|
+
{
|
|
1272
|
+
name: "color",
|
|
1273
|
+
type: "string",
|
|
1274
|
+
default: '"#5046e6"',
|
|
1275
|
+
description: "Color of the reveal box",
|
|
1276
|
+
},
|
|
1277
|
+
{
|
|
1278
|
+
name: "duration",
|
|
1279
|
+
type: "number",
|
|
1280
|
+
default: "0.5",
|
|
1281
|
+
description: "Animation duration in seconds",
|
|
1282
|
+
},
|
|
1283
|
+
{
|
|
1284
|
+
name: "delay",
|
|
1285
|
+
type: "number",
|
|
1286
|
+
default: "0.25",
|
|
1287
|
+
description: "Delay before animation starts in seconds",
|
|
1288
|
+
},
|
|
1289
|
+
],
|
|
1290
|
+
slots: [{ name: "children", description: "Content to reveal" }],
|
|
382
1291
|
},
|
|
383
1292
|
"card-3d": {
|
|
384
1293
|
name: "Card3D",
|
|
@@ -389,6 +1298,16 @@ export const registry = {
|
|
|
389
1298
|
credits: [
|
|
390
1299
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/3d-card-effect" },
|
|
391
1300
|
],
|
|
1301
|
+
tags: ["card", "3d", "perspective", "hover", "animation", "interactive"],
|
|
1302
|
+
props: [
|
|
1303
|
+
{
|
|
1304
|
+
name: "containerClass",
|
|
1305
|
+
type: "string",
|
|
1306
|
+
default: '""',
|
|
1307
|
+
description: "CSS classes for the outer perspective wrapper",
|
|
1308
|
+
},
|
|
1309
|
+
],
|
|
1310
|
+
slots: [{ name: "children", description: "CardBody and CardItem elements" }],
|
|
392
1311
|
},
|
|
393
1312
|
"card-spotlight": {
|
|
394
1313
|
name: "CardSpotlight",
|
|
@@ -399,6 +1318,34 @@ export const registry = {
|
|
|
399
1318
|
credits: [
|
|
400
1319
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/card-spotlight" },
|
|
401
1320
|
],
|
|
1321
|
+
tags: ["card", "spotlight", "mouse", "gradient", "interactive", "hover"],
|
|
1322
|
+
props: [
|
|
1323
|
+
{
|
|
1324
|
+
name: "slotClass",
|
|
1325
|
+
type: "string",
|
|
1326
|
+
default: '""',
|
|
1327
|
+
description: "CSS classes for the inner content wrapper",
|
|
1328
|
+
},
|
|
1329
|
+
{
|
|
1330
|
+
name: "gradientSize",
|
|
1331
|
+
type: "number",
|
|
1332
|
+
default: "200",
|
|
1333
|
+
description: "Size of the spotlight gradient in pixels",
|
|
1334
|
+
},
|
|
1335
|
+
{
|
|
1336
|
+
name: "gradientColor",
|
|
1337
|
+
type: "string",
|
|
1338
|
+
default: '"#262626"',
|
|
1339
|
+
description: "Color of the spotlight gradient",
|
|
1340
|
+
},
|
|
1341
|
+
{
|
|
1342
|
+
name: "gradientOpacity",
|
|
1343
|
+
type: "number",
|
|
1344
|
+
default: "0.8",
|
|
1345
|
+
description: "Opacity of the spotlight gradient",
|
|
1346
|
+
},
|
|
1347
|
+
],
|
|
1348
|
+
slots: [{ name: "children", description: "Card content" }],
|
|
402
1349
|
},
|
|
403
1350
|
"bento-grid": {
|
|
404
1351
|
name: "BentoGrid",
|
|
@@ -407,6 +1354,8 @@ export const registry = {
|
|
|
407
1354
|
category: "cards",
|
|
408
1355
|
status: "done",
|
|
409
1356
|
credits: [{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/bento-grid" }],
|
|
1357
|
+
tags: ["grid", "layout", "bento", "cards", "dashboard"],
|
|
1358
|
+
slots: [{ name: "children", description: "BentoGridItem components to arrange in the grid" }],
|
|
410
1359
|
},
|
|
411
1360
|
"flip-card": {
|
|
412
1361
|
name: "FlipCard",
|
|
@@ -414,6 +1363,19 @@ export const registry = {
|
|
|
414
1363
|
description: "Card that flips to reveal back content on hover using CSS 3D transforms",
|
|
415
1364
|
category: "cards",
|
|
416
1365
|
status: "done",
|
|
1366
|
+
tags: ["card", "flip", "3d", "hover", "animation", "interactive"],
|
|
1367
|
+
props: [
|
|
1368
|
+
{
|
|
1369
|
+
name: "rotate",
|
|
1370
|
+
type: '"x" | "y"',
|
|
1371
|
+
default: '"y"',
|
|
1372
|
+
description: "Axis of rotation for the flip effect",
|
|
1373
|
+
},
|
|
1374
|
+
],
|
|
1375
|
+
slots: [
|
|
1376
|
+
{ name: "children", description: "Front face content" },
|
|
1377
|
+
{ name: "back", description: "Back face content revealed on hover" },
|
|
1378
|
+
],
|
|
417
1379
|
},
|
|
418
1380
|
book: {
|
|
419
1381
|
name: "Book",
|
|
@@ -422,6 +1384,36 @@ export const registry = {
|
|
|
422
1384
|
category: "cards",
|
|
423
1385
|
status: "done",
|
|
424
1386
|
credits: [{ source: "Inspira UI", url: "https://inspira-ui.com/components/cards/book" }],
|
|
1387
|
+
tags: ["card", "book", "3d", "hover", "animation"],
|
|
1388
|
+
props: [
|
|
1389
|
+
{
|
|
1390
|
+
name: "duration",
|
|
1391
|
+
type: "number",
|
|
1392
|
+
default: "1000",
|
|
1393
|
+
description: "Hover animation duration in ms",
|
|
1394
|
+
},
|
|
1395
|
+
{
|
|
1396
|
+
name: "color",
|
|
1397
|
+
type: "BookColor",
|
|
1398
|
+
default: '"zinc"',
|
|
1399
|
+
description: "Color theme for the book cover gradient",
|
|
1400
|
+
},
|
|
1401
|
+
{
|
|
1402
|
+
name: "isStatic",
|
|
1403
|
+
type: "boolean",
|
|
1404
|
+
default: "false",
|
|
1405
|
+
description: "Show book in open position without hover animation",
|
|
1406
|
+
},
|
|
1407
|
+
{ name: "size", type: "BookSize", default: '"md"', description: "Size variant of the book" },
|
|
1408
|
+
{ name: "radius", type: "BookRadius", default: '"md"', description: "Border radius variant" },
|
|
1409
|
+
{
|
|
1410
|
+
name: "shadowSize",
|
|
1411
|
+
type: "BookShadowSize",
|
|
1412
|
+
default: '"lg"',
|
|
1413
|
+
description: "Drop shadow size variant",
|
|
1414
|
+
},
|
|
1415
|
+
],
|
|
1416
|
+
slots: [{ name: "children", description: "Content rendered on the book cover (front face)" }],
|
|
425
1417
|
},
|
|
426
1418
|
"glare-card": {
|
|
427
1419
|
name: "GlareCard",
|
|
@@ -430,6 +1422,10 @@ export const registry = {
|
|
|
430
1422
|
category: "cards",
|
|
431
1423
|
status: "done",
|
|
432
1424
|
credits: [{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/glare-card" }],
|
|
1425
|
+
tags: ["card", "glare", "holographic", "mouse", "3d", "foil", "interactive"],
|
|
1426
|
+
slots: [
|
|
1427
|
+
{ name: "children", description: "Card content rendered inside the holographic surface" },
|
|
1428
|
+
],
|
|
433
1429
|
},
|
|
434
1430
|
"text-reveal-card": {
|
|
435
1431
|
name: "TextRevealCard",
|
|
@@ -440,6 +1436,26 @@ export const registry = {
|
|
|
440
1436
|
credits: [
|
|
441
1437
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/text-reveal-card" },
|
|
442
1438
|
],
|
|
1439
|
+
tags: ["card", "text", "reveal", "drag", "interactive", "particles"],
|
|
1440
|
+
props: [
|
|
1441
|
+
{
|
|
1442
|
+
name: "starsCount",
|
|
1443
|
+
type: "number",
|
|
1444
|
+
default: "130",
|
|
1445
|
+
description: "Number of star particles in the background",
|
|
1446
|
+
},
|
|
1447
|
+
{
|
|
1448
|
+
name: "starsClass",
|
|
1449
|
+
type: "string",
|
|
1450
|
+
default: '""',
|
|
1451
|
+
description: "CSS classes for the stars container",
|
|
1452
|
+
},
|
|
1453
|
+
],
|
|
1454
|
+
slots: [
|
|
1455
|
+
{ name: "children", description: "Content rendered above the reveal area (e.g., title)" },
|
|
1456
|
+
{ name: "text", description: "Text shown in the revealed layer (dragged to reveal)" },
|
|
1457
|
+
{ name: "revealText", description: "Text visible in the background star layer" },
|
|
1458
|
+
],
|
|
443
1459
|
},
|
|
444
1460
|
"container-scroll": {
|
|
445
1461
|
name: "ContainerScroll",
|
|
@@ -453,6 +1469,17 @@ export const registry = {
|
|
|
453
1469
|
url: "https://ui.aceternity.com/components/container-scroll-animation",
|
|
454
1470
|
},
|
|
455
1471
|
],
|
|
1472
|
+
tags: ["layout", "scroll", "animation", "3d", "perspective"],
|
|
1473
|
+
slots: [
|
|
1474
|
+
{
|
|
1475
|
+
name: "titleContent",
|
|
1476
|
+
description: "Header/title content that translates upward on scroll",
|
|
1477
|
+
},
|
|
1478
|
+
{
|
|
1479
|
+
name: "cardContent",
|
|
1480
|
+
description: "Content inside the animated card that tilts flat on scroll",
|
|
1481
|
+
},
|
|
1482
|
+
],
|
|
456
1483
|
},
|
|
457
1484
|
"container-text-flip": {
|
|
458
1485
|
name: "ContainerTextFlip",
|
|
@@ -461,6 +1488,33 @@ export const registry = {
|
|
|
461
1488
|
category: "text",
|
|
462
1489
|
status: "done",
|
|
463
1490
|
credits: [{ source: "Inspira UI", url: "https://inspira-ui.com/components/text/text-flip" }],
|
|
1491
|
+
tags: ["text", "animation", "words", "cycling", "blur", "typography"],
|
|
1492
|
+
props: [
|
|
1493
|
+
{
|
|
1494
|
+
name: "words",
|
|
1495
|
+
type: "string[]",
|
|
1496
|
+
default: '["better","modern","beautiful","awesome"]',
|
|
1497
|
+
description: "Array of words to cycle through",
|
|
1498
|
+
},
|
|
1499
|
+
{
|
|
1500
|
+
name: "interval",
|
|
1501
|
+
type: "number",
|
|
1502
|
+
default: "3000",
|
|
1503
|
+
description: "Time between word changes in ms",
|
|
1504
|
+
},
|
|
1505
|
+
{
|
|
1506
|
+
name: "animationDuration",
|
|
1507
|
+
type: "number",
|
|
1508
|
+
default: "700",
|
|
1509
|
+
description: "Per-character animation duration in ms",
|
|
1510
|
+
},
|
|
1511
|
+
{
|
|
1512
|
+
name: "textClass",
|
|
1513
|
+
type: "string",
|
|
1514
|
+
default: '""',
|
|
1515
|
+
description: "CSS classes for the text content span",
|
|
1516
|
+
},
|
|
1517
|
+
],
|
|
464
1518
|
},
|
|
465
1519
|
focus: {
|
|
466
1520
|
name: "Focus",
|
|
@@ -469,6 +1523,45 @@ export const registry = {
|
|
|
469
1523
|
category: "text",
|
|
470
1524
|
status: "done",
|
|
471
1525
|
credits: [{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/focus-cards" }],
|
|
1526
|
+
tags: ["text", "animation", "focus", "blur", "words", "typography"],
|
|
1527
|
+
props: [
|
|
1528
|
+
{
|
|
1529
|
+
name: "sentence",
|
|
1530
|
+
type: "string",
|
|
1531
|
+
default: '"Fancy Focus"',
|
|
1532
|
+
description: "Space-separated words to cycle focus through",
|
|
1533
|
+
},
|
|
1534
|
+
{
|
|
1535
|
+
name: "manualMode",
|
|
1536
|
+
type: "boolean",
|
|
1537
|
+
default: "false",
|
|
1538
|
+
description: "Enable manual control via mouse hover instead of auto-cycling",
|
|
1539
|
+
},
|
|
1540
|
+
{
|
|
1541
|
+
name: "blurAmount",
|
|
1542
|
+
type: "number",
|
|
1543
|
+
default: "5",
|
|
1544
|
+
description: "Blur amount in pixels for unfocused words",
|
|
1545
|
+
},
|
|
1546
|
+
{
|
|
1547
|
+
name: "borderColor",
|
|
1548
|
+
type: "string",
|
|
1549
|
+
default: '"green"',
|
|
1550
|
+
description: "Color of the corner frame border",
|
|
1551
|
+
},
|
|
1552
|
+
{
|
|
1553
|
+
name: "animationDuration",
|
|
1554
|
+
type: "number",
|
|
1555
|
+
default: "0.5",
|
|
1556
|
+
description: "Transition duration in seconds",
|
|
1557
|
+
},
|
|
1558
|
+
{
|
|
1559
|
+
name: "pauseBetweenAnimations",
|
|
1560
|
+
type: "number",
|
|
1561
|
+
default: "1",
|
|
1562
|
+
description: "Pause between word cycles in seconds",
|
|
1563
|
+
},
|
|
1564
|
+
],
|
|
472
1565
|
},
|
|
473
1566
|
"liquid-glass": {
|
|
474
1567
|
name: "LiquidGlass",
|
|
@@ -482,6 +1575,79 @@ export const registry = {
|
|
|
482
1575
|
url: "https://inspira-ui.com/components/special-effects/liquid-glass",
|
|
483
1576
|
},
|
|
484
1577
|
],
|
|
1578
|
+
tags: ["glass", "effect", "svg", "filter", "chromatic", "displacement", "blur"],
|
|
1579
|
+
props: [
|
|
1580
|
+
{ name: "radius", type: "number", default: "16", description: "Border radius in pixels" },
|
|
1581
|
+
{
|
|
1582
|
+
name: "border",
|
|
1583
|
+
type: "number",
|
|
1584
|
+
default: "0.07",
|
|
1585
|
+
description: "Border thickness as fraction of min dimension",
|
|
1586
|
+
},
|
|
1587
|
+
{
|
|
1588
|
+
name: "lightness",
|
|
1589
|
+
type: "number",
|
|
1590
|
+
default: "50",
|
|
1591
|
+
description: "Background lightness percentage",
|
|
1592
|
+
},
|
|
1593
|
+
{
|
|
1594
|
+
name: "displace",
|
|
1595
|
+
type: "number",
|
|
1596
|
+
description: "Optional Gaussian blur on the displacement output",
|
|
1597
|
+
},
|
|
1598
|
+
{
|
|
1599
|
+
name: "blend",
|
|
1600
|
+
type: "string",
|
|
1601
|
+
default: '"difference"',
|
|
1602
|
+
description: "SVG blend mode for the displacement channels",
|
|
1603
|
+
},
|
|
1604
|
+
{
|
|
1605
|
+
name: "xChannel",
|
|
1606
|
+
type: '"R" | "G" | "B"',
|
|
1607
|
+
default: '"R"',
|
|
1608
|
+
description: "X displacement channel selector",
|
|
1609
|
+
},
|
|
1610
|
+
{
|
|
1611
|
+
name: "yChannel",
|
|
1612
|
+
type: '"R" | "G" | "B"',
|
|
1613
|
+
default: '"B"',
|
|
1614
|
+
description: "Y displacement channel selector",
|
|
1615
|
+
},
|
|
1616
|
+
{ name: "alpha", type: "number", default: "0.93", description: "Background fill alpha" },
|
|
1617
|
+
{
|
|
1618
|
+
name: "blur",
|
|
1619
|
+
type: "number",
|
|
1620
|
+
default: "11",
|
|
1621
|
+
description: "Blur applied to the background fill layer",
|
|
1622
|
+
},
|
|
1623
|
+
{
|
|
1624
|
+
name: "rOffset",
|
|
1625
|
+
type: "number",
|
|
1626
|
+
default: "0",
|
|
1627
|
+
description: "Red channel displacement offset",
|
|
1628
|
+
},
|
|
1629
|
+
{
|
|
1630
|
+
name: "gOffset",
|
|
1631
|
+
type: "number",
|
|
1632
|
+
default: "10",
|
|
1633
|
+
description: "Green channel displacement offset",
|
|
1634
|
+
},
|
|
1635
|
+
{
|
|
1636
|
+
name: "bOffset",
|
|
1637
|
+
type: "number",
|
|
1638
|
+
default: "20",
|
|
1639
|
+
description: "Blue channel displacement offset",
|
|
1640
|
+
},
|
|
1641
|
+
{ name: "scale", type: "number", default: "-180", description: "Displacement scale" },
|
|
1642
|
+
{ name: "frost", type: "number", default: "0.05", description: "Frosted glass opacity" },
|
|
1643
|
+
{
|
|
1644
|
+
name: "containerClass",
|
|
1645
|
+
type: "string",
|
|
1646
|
+
default: '""',
|
|
1647
|
+
description: "CSS classes for the outer container",
|
|
1648
|
+
},
|
|
1649
|
+
],
|
|
1650
|
+
slots: [{ name: "children", description: "Content rendered inside the glass effect" }],
|
|
485
1651
|
},
|
|
486
1652
|
"smooth-cursor": {
|
|
487
1653
|
name: "SmoothCursor",
|
|
@@ -492,6 +1658,16 @@ export const registry = {
|
|
|
492
1658
|
credits: [
|
|
493
1659
|
{ source: "Inspira UI", url: "https://inspira-ui.com/components/cursor/smooth-cursor" },
|
|
494
1660
|
],
|
|
1661
|
+
tags: ["cursor", "animation", "spring", "physics", "interactive"],
|
|
1662
|
+
props: [
|
|
1663
|
+
{
|
|
1664
|
+
name: "springConfig",
|
|
1665
|
+
type: "SpringConfig",
|
|
1666
|
+
default: "{}",
|
|
1667
|
+
description: "Spring physics configuration with damping, stiffness, and mass",
|
|
1668
|
+
},
|
|
1669
|
+
],
|
|
1670
|
+
slots: [{ name: "cursor", description: "Custom cursor element (defaults to arrow SVG)" }],
|
|
495
1671
|
},
|
|
496
1672
|
"glowing-effect": {
|
|
497
1673
|
name: "GlowingEffect",
|
|
@@ -500,6 +1676,58 @@ export const registry = {
|
|
|
500
1676
|
category: "effects",
|
|
501
1677
|
status: "done",
|
|
502
1678
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/glowing-effect" }],
|
|
1679
|
+
tags: ["border", "glow", "mouse", "gradient", "conic", "animation"],
|
|
1680
|
+
props: [
|
|
1681
|
+
{
|
|
1682
|
+
name: "blur",
|
|
1683
|
+
type: "number",
|
|
1684
|
+
default: "0",
|
|
1685
|
+
description: "Blur amount applied to the glow layer",
|
|
1686
|
+
},
|
|
1687
|
+
{
|
|
1688
|
+
name: "inactiveZone",
|
|
1689
|
+
type: "number",
|
|
1690
|
+
default: "0.7",
|
|
1691
|
+
description: "Fraction of element radius where glow is inactive",
|
|
1692
|
+
},
|
|
1693
|
+
{
|
|
1694
|
+
name: "proximity",
|
|
1695
|
+
type: "number",
|
|
1696
|
+
default: "0",
|
|
1697
|
+
description: "Extra pixel range outside element bounds where glow activates",
|
|
1698
|
+
},
|
|
1699
|
+
{
|
|
1700
|
+
name: "spread",
|
|
1701
|
+
type: "number",
|
|
1702
|
+
default: "20",
|
|
1703
|
+
description: "Angular spread of the conic gradient in degrees",
|
|
1704
|
+
},
|
|
1705
|
+
{
|
|
1706
|
+
name: "variant",
|
|
1707
|
+
type: '"default" | "white"',
|
|
1708
|
+
default: '"default"',
|
|
1709
|
+
description: "Color variant of the glow",
|
|
1710
|
+
},
|
|
1711
|
+
{
|
|
1712
|
+
name: "glow",
|
|
1713
|
+
type: "boolean",
|
|
1714
|
+
default: "false",
|
|
1715
|
+
description: "Always show glow regardless of mouse position",
|
|
1716
|
+
},
|
|
1717
|
+
{
|
|
1718
|
+
name: "disabled",
|
|
1719
|
+
type: "boolean",
|
|
1720
|
+
default: "true",
|
|
1721
|
+
description: "Disable the glowing effect",
|
|
1722
|
+
},
|
|
1723
|
+
{
|
|
1724
|
+
name: "movementDuration",
|
|
1725
|
+
type: "number",
|
|
1726
|
+
default: "2",
|
|
1727
|
+
description: "Duration of the angle lerp animation",
|
|
1728
|
+
},
|
|
1729
|
+
{ name: "borderWidth", type: "number", default: "1", description: "Border width in pixels" },
|
|
1730
|
+
],
|
|
503
1731
|
},
|
|
504
1732
|
sparkles: {
|
|
505
1733
|
name: "Sparkles",
|
|
@@ -508,6 +1736,40 @@ export const registry = {
|
|
|
508
1736
|
category: "backgrounds",
|
|
509
1737
|
status: "done",
|
|
510
1738
|
credits: [{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/sparkles" }],
|
|
1739
|
+
tags: ["background", "particles", "canvas", "animation", "sparkles"],
|
|
1740
|
+
props: [
|
|
1741
|
+
{
|
|
1742
|
+
name: "background",
|
|
1743
|
+
type: "string",
|
|
1744
|
+
default: '"#0d47a1"',
|
|
1745
|
+
description: "Background color of the canvas container",
|
|
1746
|
+
},
|
|
1747
|
+
{
|
|
1748
|
+
name: "particleColor",
|
|
1749
|
+
type: "string",
|
|
1750
|
+
default: '"#ffffff"',
|
|
1751
|
+
description: "Color of the particles",
|
|
1752
|
+
},
|
|
1753
|
+
{
|
|
1754
|
+
name: "minSize",
|
|
1755
|
+
type: "number",
|
|
1756
|
+
default: "1",
|
|
1757
|
+
description: "Minimum particle radius in pixels",
|
|
1758
|
+
},
|
|
1759
|
+
{
|
|
1760
|
+
name: "maxSize",
|
|
1761
|
+
type: "number",
|
|
1762
|
+
default: "3",
|
|
1763
|
+
description: "Maximum particle radius in pixels",
|
|
1764
|
+
},
|
|
1765
|
+
{ name: "speed", type: "number", default: "4", description: "Particle speed multiplier" },
|
|
1766
|
+
{
|
|
1767
|
+
name: "particleDensity",
|
|
1768
|
+
type: "number",
|
|
1769
|
+
default: "120",
|
|
1770
|
+
description: "Number of particles",
|
|
1771
|
+
},
|
|
1772
|
+
],
|
|
511
1773
|
},
|
|
512
1774
|
confetti: {
|
|
513
1775
|
name: "Confetti",
|
|
@@ -516,6 +1778,28 @@ export const registry = {
|
|
|
516
1778
|
category: "effects",
|
|
517
1779
|
status: "done",
|
|
518
1780
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/confetti" }],
|
|
1781
|
+
tags: ["confetti", "celebration", "animation", "canvas", "particles"],
|
|
1782
|
+
props: [
|
|
1783
|
+
{
|
|
1784
|
+
name: "options",
|
|
1785
|
+
type: "ConfettiOptions",
|
|
1786
|
+
default: "{}",
|
|
1787
|
+
description: "canvas-confetti options passed to each fire() call",
|
|
1788
|
+
},
|
|
1789
|
+
{
|
|
1790
|
+
name: "globalOptions",
|
|
1791
|
+
type: "ConfettiGlobalOptions",
|
|
1792
|
+
default: "{}",
|
|
1793
|
+
description: "Global canvas-confetti initialization options",
|
|
1794
|
+
},
|
|
1795
|
+
{
|
|
1796
|
+
name: "manualStart",
|
|
1797
|
+
type: "boolean",
|
|
1798
|
+
default: "false",
|
|
1799
|
+
description: "Prevent auto-firing on mount; call fire() manually",
|
|
1800
|
+
},
|
|
1801
|
+
],
|
|
1802
|
+
slots: [{ name: "children", description: "ConfettiButton or other trigger elements" }],
|
|
519
1803
|
},
|
|
520
1804
|
ripple: {
|
|
521
1805
|
name: "Ripple",
|
|
@@ -524,6 +1808,51 @@ export const registry = {
|
|
|
524
1808
|
category: "effects",
|
|
525
1809
|
status: "done",
|
|
526
1810
|
credits: [{ source: "Magic UI", url: "https://magicui.design/docs/components/ripple" }],
|
|
1811
|
+
tags: ["animation", "ripple", "circles", "decoration", "pulse"],
|
|
1812
|
+
props: [
|
|
1813
|
+
{
|
|
1814
|
+
name: "baseCircleSize",
|
|
1815
|
+
type: "number",
|
|
1816
|
+
default: "210",
|
|
1817
|
+
description: "Diameter of the smallest (innermost) circle in pixels",
|
|
1818
|
+
},
|
|
1819
|
+
{
|
|
1820
|
+
name: "baseCircleOpacity",
|
|
1821
|
+
type: "number",
|
|
1822
|
+
default: "0.24",
|
|
1823
|
+
description: "Opacity of the innermost circle",
|
|
1824
|
+
},
|
|
1825
|
+
{
|
|
1826
|
+
name: "spaceBetweenCircle",
|
|
1827
|
+
type: "number",
|
|
1828
|
+
default: "70",
|
|
1829
|
+
description: "Extra pixels added to each successive circle",
|
|
1830
|
+
},
|
|
1831
|
+
{
|
|
1832
|
+
name: "circleOpacityDowngradeRatio",
|
|
1833
|
+
type: "number",
|
|
1834
|
+
default: "0.03",
|
|
1835
|
+
description: "Opacity reduction per circle outward",
|
|
1836
|
+
},
|
|
1837
|
+
{
|
|
1838
|
+
name: "circleClass",
|
|
1839
|
+
type: "string",
|
|
1840
|
+
default: '""',
|
|
1841
|
+
description: "Additional CSS classes applied to each circle",
|
|
1842
|
+
},
|
|
1843
|
+
{
|
|
1844
|
+
name: "waveSpeed",
|
|
1845
|
+
type: "number",
|
|
1846
|
+
default: "80",
|
|
1847
|
+
description: "Animation delay between circles in ms",
|
|
1848
|
+
},
|
|
1849
|
+
{
|
|
1850
|
+
name: "numberOfCircles",
|
|
1851
|
+
type: "number",
|
|
1852
|
+
default: "7",
|
|
1853
|
+
description: "Total number of concentric circles",
|
|
1854
|
+
},
|
|
1855
|
+
],
|
|
527
1856
|
},
|
|
528
1857
|
"text-generate-effect": {
|
|
529
1858
|
name: "TextGenerateEffect",
|
|
@@ -534,6 +1863,34 @@ export const registry = {
|
|
|
534
1863
|
credits: [
|
|
535
1864
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/text-generate-effect" },
|
|
536
1865
|
],
|
|
1866
|
+
tags: ["text", "animation", "typewriter", "reveal", "blur", "typography"],
|
|
1867
|
+
props: [
|
|
1868
|
+
{ name: "words", type: "string", description: "Text to reveal word by word", required: true },
|
|
1869
|
+
{
|
|
1870
|
+
name: "filter",
|
|
1871
|
+
type: "boolean",
|
|
1872
|
+
default: "true",
|
|
1873
|
+
description: "Apply blur filter during reveal animation",
|
|
1874
|
+
},
|
|
1875
|
+
{
|
|
1876
|
+
name: "duration",
|
|
1877
|
+
type: "number",
|
|
1878
|
+
default: "0.7",
|
|
1879
|
+
description: "Fade-in duration per word in seconds",
|
|
1880
|
+
},
|
|
1881
|
+
{
|
|
1882
|
+
name: "delay",
|
|
1883
|
+
type: "number",
|
|
1884
|
+
default: "0",
|
|
1885
|
+
description: "Initial delay before animation starts in ms",
|
|
1886
|
+
},
|
|
1887
|
+
{
|
|
1888
|
+
name: "stagger",
|
|
1889
|
+
type: "number",
|
|
1890
|
+
default: "200",
|
|
1891
|
+
description: "Delay between each word in ms",
|
|
1892
|
+
},
|
|
1893
|
+
],
|
|
537
1894
|
},
|
|
538
1895
|
"line-shadow-text": {
|
|
539
1896
|
name: "LineShadowText",
|
|
@@ -544,6 +1901,22 @@ export const registry = {
|
|
|
544
1901
|
credits: [
|
|
545
1902
|
{ source: "Magic UI", url: "https://magicui.design/docs/components/line-shadow-text" },
|
|
546
1903
|
],
|
|
1904
|
+
tags: ["text", "animation", "shadow", "pattern", "typography", "decoration"],
|
|
1905
|
+
props: [
|
|
1906
|
+
{ name: "text", type: "string", description: "Text content to display", required: true },
|
|
1907
|
+
{
|
|
1908
|
+
name: "shadowColor",
|
|
1909
|
+
type: "string",
|
|
1910
|
+
default: '"black"',
|
|
1911
|
+
description: "Color of the diagonal line shadow",
|
|
1912
|
+
},
|
|
1913
|
+
{
|
|
1914
|
+
name: "as",
|
|
1915
|
+
type: '"span" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "p" | "div"',
|
|
1916
|
+
default: '"span"',
|
|
1917
|
+
description: "HTML element to render as",
|
|
1918
|
+
},
|
|
1919
|
+
],
|
|
547
1920
|
},
|
|
548
1921
|
"tracing-beam": {
|
|
549
1922
|
name: "TracingBeam",
|
|
@@ -554,6 +1927,10 @@ export const registry = {
|
|
|
554
1927
|
credits: [
|
|
555
1928
|
{ source: "Aceternity UI", url: "https://ui.aceternity.com/components/tracing-beam" },
|
|
556
1929
|
],
|
|
1930
|
+
tags: ["scroll", "animation", "svg", "beam", "progress", "sidebar"],
|
|
1931
|
+
slots: [
|
|
1932
|
+
{ name: "children", description: "Long-form content rendered alongside the tracing beam" },
|
|
1933
|
+
],
|
|
557
1934
|
},
|
|
558
1935
|
"displacement-text": {
|
|
559
1936
|
name: "DisplacementText",
|
|
@@ -562,6 +1939,25 @@ export const registry = {
|
|
|
562
1939
|
category: "text",
|
|
563
1940
|
status: "done",
|
|
564
1941
|
credits: [{ source: "VengenceUI", url: "https://vengenceui.com/docs/liquid-text" }],
|
|
1942
|
+
tags: ["text", "webgl", "3d", "displacement", "cursor", "shader", "threejs"],
|
|
1943
|
+
props: [
|
|
1944
|
+
{ name: "text", type: "string", default: '"Hover Me"', description: "Text to display" },
|
|
1945
|
+
{ name: "fontSize", type: "number", default: "200", description: "Font size in pixels" },
|
|
1946
|
+
{ name: "font", type: "string", default: '"Inter, sans-serif"', description: "Font family" },
|
|
1947
|
+
{ name: "color", type: "string", description: "Fixed text color (overrides theme colors)" },
|
|
1948
|
+
{
|
|
1949
|
+
name: "lightColor",
|
|
1950
|
+
type: "string",
|
|
1951
|
+
default: '"#000000"',
|
|
1952
|
+
description: "Text color in light mode",
|
|
1953
|
+
},
|
|
1954
|
+
{
|
|
1955
|
+
name: "darkColor",
|
|
1956
|
+
type: "string",
|
|
1957
|
+
default: '"#ffffff"',
|
|
1958
|
+
description: "Text color in dark mode",
|
|
1959
|
+
},
|
|
1960
|
+
],
|
|
565
1961
|
},
|
|
566
1962
|
"matrix-rain": {
|
|
567
1963
|
name: "MatrixRain",
|
|
@@ -569,6 +1965,34 @@ export const registry = {
|
|
|
569
1965
|
description: "Canvas-based Matrix-style falling glyph rain with configurable color, speed, and density",
|
|
570
1966
|
category: "backgrounds",
|
|
571
1967
|
status: "done",
|
|
1968
|
+
tags: ["background", "matrix", "canvas", "animation", "glyphs", "cyberpunk"],
|
|
1969
|
+
props: [
|
|
1970
|
+
{
|
|
1971
|
+
name: "color",
|
|
1972
|
+
type: "string",
|
|
1973
|
+
default: '"#00ff41"',
|
|
1974
|
+
description: "Glyph color (the classic Matrix green)",
|
|
1975
|
+
},
|
|
1976
|
+
{
|
|
1977
|
+
name: "speed",
|
|
1978
|
+
type: "number",
|
|
1979
|
+
default: "1.0",
|
|
1980
|
+
description: "Fall speed multiplier (< 1 slower, > 1 faster)",
|
|
1981
|
+
},
|
|
1982
|
+
{ name: "density", type: "number", default: "1.0", description: "Column density multiplier" },
|
|
1983
|
+
{
|
|
1984
|
+
name: "glyphSize",
|
|
1985
|
+
type: "number",
|
|
1986
|
+
default: "16",
|
|
1987
|
+
description: "Font size of each glyph in pixels",
|
|
1988
|
+
},
|
|
1989
|
+
{
|
|
1990
|
+
name: "fadeOpacity",
|
|
1991
|
+
type: "number",
|
|
1992
|
+
default: "0.05",
|
|
1993
|
+
description: "Opacity of the black overlay used to create trailing fade effect",
|
|
1994
|
+
},
|
|
1995
|
+
],
|
|
572
1996
|
},
|
|
573
1997
|
"terminal-text": {
|
|
574
1998
|
name: "TerminalText",
|
|
@@ -576,6 +2000,45 @@ export const registry = {
|
|
|
576
2000
|
description: "Terminal-style text streamer with per-character animation, blinking cursor, and glitch effect",
|
|
577
2001
|
category: "text",
|
|
578
2002
|
status: "done",
|
|
2003
|
+
tags: ["text", "terminal", "animation", "typewriter", "glitch", "code"],
|
|
2004
|
+
props: [
|
|
2005
|
+
{
|
|
2006
|
+
name: "lines",
|
|
2007
|
+
type: "string[]",
|
|
2008
|
+
description: "Array of lines to stream character by character",
|
|
2009
|
+
required: true,
|
|
2010
|
+
},
|
|
2011
|
+
{
|
|
2012
|
+
name: "speed",
|
|
2013
|
+
type: "number",
|
|
2014
|
+
default: "40",
|
|
2015
|
+
description: "Delay between each character in ms",
|
|
2016
|
+
},
|
|
2017
|
+
{
|
|
2018
|
+
name: "delay",
|
|
2019
|
+
type: "number",
|
|
2020
|
+
default: "0",
|
|
2021
|
+
description: "Initial delay before streaming starts in ms",
|
|
2022
|
+
},
|
|
2023
|
+
{ name: "cursor", type: "boolean", default: "true", description: "Show blinking cursor" },
|
|
2024
|
+
{
|
|
2025
|
+
name: "cursorChar",
|
|
2026
|
+
type: "string",
|
|
2027
|
+
default: '"█"',
|
|
2028
|
+
description: "Character used as the cursor",
|
|
2029
|
+
},
|
|
2030
|
+
{
|
|
2031
|
+
name: "glitch",
|
|
2032
|
+
type: "boolean",
|
|
2033
|
+
default: "false",
|
|
2034
|
+
description: "Enable random character glitch effect after streaming",
|
|
2035
|
+
},
|
|
2036
|
+
{
|
|
2037
|
+
name: "onComplete",
|
|
2038
|
+
type: "() => void",
|
|
2039
|
+
description: "Callback fired when all lines finish streaming",
|
|
2040
|
+
},
|
|
2041
|
+
],
|
|
579
2042
|
},
|
|
580
2043
|
};
|
|
581
2044
|
// =============================================================================
|