{"$schema":"https://shadcn-svelte.com/schema/registry.json","name":"fancy-ui","homepage":"https://fancy-ui.rama.app","items":[{"name":"accordion","type":"registry:ui","title":"Accordion","description":"A stack of headed sections where one or several open at a time, with a collapse that animates without measuring, arrow-key navigation between headers and labelled regions for assistive tech.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/collapsible.json"],"files":[{"path":"src/lib/fancy-ui/accordion/Accordion.svelte","type":"registry:ui","target":"fancy/accordion/Accordion.svelte"},{"path":"src/lib/fancy-ui/accordion/AccordionContent.svelte","type":"registry:ui","target":"fancy/accordion/AccordionContent.svelte"},{"path":"src/lib/fancy-ui/accordion/AccordionItem.svelte","type":"registry:ui","target":"fancy/accordion/AccordionItem.svelte"},{"path":"src/lib/fancy-ui/accordion/AccordionTrigger.svelte","type":"registry:ui","target":"fancy/accordion/AccordionTrigger.svelte"},{"path":"src/lib/fancy-ui/accordion/accordion-core.ts","type":"registry:ui","target":"fancy/accordion/accordion-core.ts"},{"path":"src/lib/fancy-ui/accordion/index.ts","type":"registry:ui","target":"fancy/accordion/index.ts"},{"path":"src/lib/fancy-ui/accordion/types.ts","type":"registry:ui","target":"fancy/accordion/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/accordion"}},{"name":"agent-plan","type":"registry:ui","title":"AgentPlan","description":"Glanceable checklist of an agent's plan: a done/total count and completion bar over one row per step, with a status glyph, an optional detail line, and substeps indented under a rail","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/agent-plan/AgentPlan.svelte","type":"registry:ui","target":"fancy/agent-plan/AgentPlan.svelte"},{"path":"src/lib/fancy-ui/agent-plan/index.ts","type":"registry:ui","target":"fancy/agent-plan/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/agent-plan"}},{"name":"ai-data-table","type":"registry:ui","title":"AiDataTable","description":"Compact comparison table for a model's structured answer: real table semantics, tabular numeric columns, check-or-dash booleans, and one tintable column — rendered in the order it arrived, with no sorting","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/ai-data-table/AiDataTable.svelte","type":"registry:ui","target":"fancy/ai-data-table/AiDataTable.svelte"},{"path":"src/lib/fancy-ui/ai-data-table/index.ts","type":"registry:ui","target":"fancy/ai-data-table/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/ai-data-table"}},{"name":"alert-dialog","type":"registry:ui","title":"AlertDialog","description":"A confirmation dialog for consequential, hard-to-undo actions — fixed confirm/cancel actions, never dismissed by an outside click","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["overlays"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/button.json","https://fancy-ui.rama.app/r/svelte/dialog.json","https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/alert-dialog/AlertDialog.svelte","type":"registry:ui","target":"fancy/alert-dialog/AlertDialog.svelte"},{"path":"src/lib/fancy-ui/alert-dialog/index.ts","type":"registry:ui","target":"fancy/alert-dialog/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/alert-dialog"}},{"name":"animated-beam","type":"registry:ui","title":"AnimatedBeam","description":"Fibre-optic connector between two elements: a light packet with a dispersing chromatic tail runs along a glass fibre and blooms behind the destination on arrival; theme-aware, seeded and still under reduced motion.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/animated-beam/AnimatedBeam.svelte","type":"registry:ui","target":"fancy/animated-beam/AnimatedBeam.svelte"},{"path":"src/lib/fancy-ui/animated-beam/index.ts","type":"registry:ui","target":"fancy/animated-beam/index.ts"},{"path":"src/lib/fancy-ui/animated-beam/types.ts","type":"registry:ui","target":"fancy/animated-beam/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/animated-beam"}},{"name":"animated-testimonials","type":"registry:ui","title":"AnimatedTestimonials","description":"Testimonial carousel with smooth slide animations and optional autoplay","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["data-display"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/animated-testimonials/AnimatedTestimonials.svelte","type":"registry:ui","target":"fancy/animated-testimonials/AnimatedTestimonials.svelte"},{"path":"src/lib/fancy-ui/animated-testimonials/index.ts","type":"registry:ui","target":"fancy/animated-testimonials/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/animated-testimonials"}},{"name":"animated-tooltip","type":"registry:ui","title":"AnimatedTooltip","description":"Presence stack of overlapping avatars with a thin, dimmed ring each that lights up on hover or focus while the avatar lifts, its neighbours part to make room, and a glass name card rises, leaning toward the pointer, as one line of light sweeps under the name","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["feedback"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/animated-tooltip/AnimatedTooltip.svelte","type":"registry:ui","target":"fancy/animated-tooltip/AnimatedTooltip.svelte"},{"path":"src/lib/fancy-ui/animated-tooltip/index.ts","type":"registry:ui","target":"fancy/animated-tooltip/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/animated-tooltip"}},{"name":"apple-card-carousel","type":"registry:ui","title":"AppleCardCarousel","description":"Horizontal card carousel where the focused card expands into a spring-animated full-screen view","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/apple-card-carousel/AppleCard.svelte","type":"registry:ui","target":"fancy/apple-card-carousel/AppleCard.svelte"},{"path":"src/lib/fancy-ui/apple-card-carousel/AppleCardCarousel.svelte","type":"registry:ui","target":"fancy/apple-card-carousel/AppleCardCarousel.svelte"},{"path":"src/lib/fancy-ui/apple-card-carousel/index.ts","type":"registry:ui","target":"fancy/apple-card-carousel/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/apple-card-carousel"}},{"name":"approval-card","type":"registry:ui","title":"ApprovalCard","description":"A human-in-the-loop gate before a side effect: the agent states what it is about to do, and the footer swaps its approve and deny buttons for a one-line verdict once someone decides","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/approval-card/ApprovalCard.svelte","type":"registry:ui","target":"fancy/approval-card/ApprovalCard.svelte"},{"path":"src/lib/fancy-ui/approval-card/index.ts","type":"registry:ui","target":"fancy/approval-card/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/approval-card"}},{"name":"artifact-card","type":"registry:ui","title":"ArtifactCard","description":"A generated document as a tangible object: title, kind, a version navigator, and the first six lines of the text itself streaming in behind a fade","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json","https://fancy-ui.rama.app/r/svelte/streaming-text.json"],"files":[{"path":"src/lib/fancy-ui/artifact-card/ArtifactCard.svelte","type":"registry:ui","target":"fancy/artifact-card/ArtifactCard.svelte"},{"path":"src/lib/fancy-ui/artifact-card/index.ts","type":"registry:ui","target":"fancy/artifact-card/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/artifact-card"}},{"name":"autocomplete","type":"registry:ui","title":"Autocomplete","description":"A free-text field with a portalled panel of matching suggestions — any typed value is valid; the panel only ever helps finish it faster.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/autocomplete/Autocomplete.svelte","type":"registry:ui","target":"fancy/autocomplete/Autocomplete.svelte"},{"path":"src/lib/fancy-ui/autocomplete/AutocompletePanel.svelte","type":"registry:ui","target":"fancy/autocomplete/AutocompletePanel.svelte"},{"path":"src/lib/fancy-ui/autocomplete/index.ts","type":"registry:ui","target":"fancy/autocomplete/index.ts"},{"path":"src/lib/fancy-ui/autocomplete/match.ts","type":"registry:ui","target":"fancy/autocomplete/match.ts"},{"path":"src/lib/fancy-ui/autocomplete/types.ts","type":"registry:ui","target":"fancy/autocomplete/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/autocomplete"}},{"name":"avatar","type":"registry:ui","title":"Avatar","description":"A person or account as an image that shows a skeleton while it loads and falls back to one or two initials on a colour fixed by the name, as a circle or a rounded square","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["data-display"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/avatar/Avatar.svelte","type":"registry:ui","target":"fancy/avatar/Avatar.svelte"},{"path":"src/lib/fancy-ui/avatar/avatar-core.ts","type":"registry:ui","target":"fancy/avatar/avatar-core.ts"},{"path":"src/lib/fancy-ui/avatar/index.ts","type":"registry:ui","target":"fancy/avatar/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/avatar"}},{"name":"badge","type":"registry:ui","title":"Badge","description":"A short pill of status text in five treatments and two sizes, with native span attributes passed through","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["data-display"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/badge/Badge.svelte","type":"registry:ui","target":"fancy/badge/Badge.svelte"},{"path":"src/lib/fancy-ui/badge/index.ts","type":"registry:ui","target":"fancy/badge/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/badge"}},{"name":"bento-grid","type":"registry:ui","title":"BentoGrid","description":"Grid of framed tiles, each a hairline frame around a softly top-lit panel, where an accent glow rises from below on hover while the content lifts and the call to action slides in, and the tiles fade up in a stagger the first time the grid scrolls into view.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/bento-grid/BentoFrame.svelte","type":"registry:ui","target":"fancy/bento-grid/BentoFrame.svelte"},{"path":"src/lib/fancy-ui/bento-grid/BentoGrid.svelte","type":"registry:ui","target":"fancy/bento-grid/BentoGrid.svelte"},{"path":"src/lib/fancy-ui/bento-grid/BentoGridCard.svelte","type":"registry:ui","target":"fancy/bento-grid/BentoGridCard.svelte"},{"path":"src/lib/fancy-ui/bento-grid/BentoGridItem.svelte","type":"registry:ui","target":"fancy/bento-grid/BentoGridItem.svelte"},{"path":"src/lib/fancy-ui/bento-grid/index.ts","type":"registry:ui","target":"fancy/bento-grid/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/bento-grid"}},{"name":"bg-falling-stars","type":"registry:ui","title":"FallingStarsBg","description":"Canvas-based 3D starfield with perspective projection, motion trails, and glow","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["backgrounds"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/bg-falling-stars/FallingStarsBg.svelte","type":"registry:ui","target":"fancy/bg-falling-stars/FallingStarsBg.svelte"},{"path":"src/lib/fancy-ui/bg-falling-stars/bg-falling-stars-core.ts","type":"registry:ui","target":"fancy/bg-falling-stars/bg-falling-stars-core.ts"},{"path":"src/lib/fancy-ui/bg-falling-stars/index.ts","type":"registry:ui","target":"fancy/bg-falling-stars/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/bg-falling-stars"}},{"name":"bg-stars","type":"registry:ui","title":"StarsBackground","description":"Three-layer starfield background that scrolls continuously while parallax-shifting in response to cursor movement via spring physics, with stars rendered as box-shadow dots across near, mid, and far depth layers","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["backgrounds"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/bg-stars/StarsBackground.svelte","type":"registry:ui","target":"fancy/bg-stars/StarsBackground.svelte"},{"path":"src/lib/fancy-ui/bg-stars/bg-stars-core.ts","type":"registry:ui","target":"fancy/bg-stars/bg-stars-core.ts"},{"path":"src/lib/fancy-ui/bg-stars/index.ts","type":"registry:ui","target":"fancy/bg-stars/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/bg-stars"}},{"name":"blur-reveal","type":"registry:ui","title":"BlurReveal","description":"Scroll-triggered reveal that unblurs and slides each direct child into place as the container enters the viewport, staggering up to 10 children via CSS nth-child delays and respecting reduced motion","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/blur-reveal/BlurReveal.svelte","type":"registry:ui","target":"fancy/blur-reveal/BlurReveal.svelte"},{"path":"src/lib/fancy-ui/blur-reveal/index.ts","type":"registry:ui","target":"fancy/blur-reveal/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/blur-reveal"}},{"name":"book","type":"registry:ui","title":"Book","description":"3D book component with cover, spine, and back face that opens on hover","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/book/Book.svelte","type":"registry:ui","target":"fancy/book/Book.svelte"},{"path":"src/lib/fancy-ui/book/BookDescription.svelte","type":"registry:ui","target":"fancy/book/BookDescription.svelte"},{"path":"src/lib/fancy-ui/book/BookHeader.svelte","type":"registry:ui","target":"fancy/book/BookHeader.svelte"},{"path":"src/lib/fancy-ui/book/BookTitle.svelte","type":"registry:ui","target":"fancy/book/BookTitle.svelte"},{"path":"src/lib/fancy-ui/book/index.ts","type":"registry:ui","target":"fancy/book/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/book"}},{"name":"border-beam","type":"registry:ui","title":"BorderBeam","description":"A single comet of light riding a container's border: a white-hot head, a long feathered tail fading between two colours, a dim hairline that lights up only within the comet's reach, and a soft bloom that sits on the edge.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/border-beam/BorderBeam.svelte","type":"registry:ui","target":"fancy/border-beam/BorderBeam.svelte"},{"path":"src/lib/fancy-ui/border-beam/index.ts","type":"registry:ui","target":"fancy/border-beam/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/border-beam"}},{"name":"box-reveal","type":"registry:ui","title":"BoxReveal","description":"Reveal animation where a solid color box slides left to right across content on viewport entry, unveiling it as it fades up into place underneath, triggered once via IntersectionObserver","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/box-reveal/BoxReveal.svelte","type":"registry:ui","target":"fancy/box-reveal/BoxReveal.svelte"},{"path":"src/lib/fancy-ui/box-reveal/index.ts","type":"registry:ui","target":"fancy/box-reveal/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/box-reveal"}},{"name":"breadcrumb","type":"registry:ui","title":"Breadcrumb","description":"A data-driven trail of links with automatic truncation, a decorative separator, and the current page marked for assistive tech.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/breadcrumb/Breadcrumb.svelte","type":"registry:ui","target":"fancy/breadcrumb/Breadcrumb.svelte"},{"path":"src/lib/fancy-ui/breadcrumb/index.ts","type":"registry:ui","target":"fancy/breadcrumb/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/breadcrumb"}},{"name":"button","type":"registry:ui","title":"Button","description":"The foundational push-button: six variants, three sizes, a loading state, and a polymorphic href/anchor mode","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["actions"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/button/Button.svelte","type":"registry:ui","target":"fancy/button/Button.svelte"},{"path":"src/lib/fancy-ui/button/index.ts","type":"registry:ui","target":"fancy/button/index.ts"},{"path":"src/lib/fancy-ui/button/types.ts","type":"registry:ui","target":"fancy/button/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/button"}},{"name":"button-group","type":"registry:ui","title":"ButtonGroup","description":"Joins a row of adjacent actions into one seamless control — one border, one divider, no doubled edges","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["actions"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/button-group/ButtonGroup.svelte","type":"registry:ui","target":"fancy/button-group/ButtonGroup.svelte"},{"path":"src/lib/fancy-ui/button-group/index.ts","type":"registry:ui","target":"fancy/button-group/index.ts"},{"path":"src/lib/fancy-ui/button-group/types.ts","type":"registry:ui","target":"fancy/button-group/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/button-group"}},{"name":"card-3d","type":"registry:ui","title":"Card3D","description":"Interactive 3D perspective card with depth effects on child elements","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/card-3d/CardBody.svelte","type":"registry:ui","target":"fancy/card-3d/CardBody.svelte"},{"path":"src/lib/fancy-ui/card-3d/CardContainer.svelte","type":"registry:ui","target":"fancy/card-3d/CardContainer.svelte"},{"path":"src/lib/fancy-ui/card-3d/CardItem.svelte","type":"registry:ui","target":"fancy/card-3d/CardItem.svelte"},{"path":"src/lib/fancy-ui/card-3d/index.ts","type":"registry:ui","target":"fancy/card-3d/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/card-3d"}},{"name":"card-spotlight","type":"registry:ui","title":"CardSpotlight","description":"Card whose radial-gradient spotlight tracks the cursor as it moves inside, fading in on hover and parking itself off-canvas when the pointer leaves, with configurable gradient size, color, and opacity","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/card-spotlight/CardSpotlight.svelte","type":"registry:ui","target":"fancy/card-spotlight/CardSpotlight.svelte"},{"path":"src/lib/fancy-ui/card-spotlight/index.ts","type":"registry:ui","target":"fancy/card-spotlight/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/card-spotlight"}},{"name":"chat-error","type":"registry:ui","title":"ChatError","description":"Quiet inline failure banner for a chat turn: the error, an optional detail line, and a retry button that disables itself while the retry is in flight","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/chat-error/ChatError.svelte","type":"registry:ui","target":"fancy/chat-error/ChatError.svelte"},{"path":"src/lib/fancy-ui/chat-error/index.ts","type":"registry:ui","target":"fancy/chat-error/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/chat-error"}},{"name":"chat-message","type":"registry:ui","title":"ChatMessage","description":"One conversation turn, aligned and dressed by its role, streaming its body while the answer arrives, with an action rail that fades in on hover and a version navigator underneath","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json","https://fancy-ui.rama.app/r/svelte/streaming-text.json"],"files":[{"path":"src/lib/fancy-ui/chat-message/ChatMessage.svelte","type":"registry:ui","target":"fancy/chat-message/ChatMessage.svelte"},{"path":"src/lib/fancy-ui/chat-message/ChatMessageAction.svelte","type":"registry:ui","target":"fancy/chat-message/ChatMessageAction.svelte"},{"path":"src/lib/fancy-ui/chat-message/ChatMessageActions.svelte","type":"registry:ui","target":"fancy/chat-message/ChatMessageActions.svelte"},{"path":"src/lib/fancy-ui/chat-message/ChatMessageBranches.svelte","type":"registry:ui","target":"fancy/chat-message/ChatMessageBranches.svelte"},{"path":"src/lib/fancy-ui/chat-message/index.ts","type":"registry:ui","target":"fancy/chat-message/index.ts"},{"path":"src/lib/fancy-ui/chat-message/types.ts","type":"registry:ui","target":"fancy/chat-message/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/chat-message"}},{"name":"chat-panel","type":"registry:ui","title":"ChatPanel","description":"The shell a conversation lives in: a sticky header, a transcript that pins itself to the bottom while an answer arrives and offers the way back once you scroll up, and a sticky composer row","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/chat-panel/ChatEmptyState.svelte","type":"registry:ui","target":"fancy/chat-panel/ChatEmptyState.svelte"},{"path":"src/lib/fancy-ui/chat-panel/ChatPanel.svelte","type":"registry:ui","target":"fancy/chat-panel/ChatPanel.svelte"},{"path":"src/lib/fancy-ui/chat-panel/index.ts","type":"registry:ui","target":"fancy/chat-panel/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/chat-panel"}},{"name":"checkbox","type":"registry:ui","title":"Checkbox","description":"A tri-look checkbox — unchecked, checked, indeterminate and disabled — built on a native checkbox input","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/checkbox/Checkbox.svelte","type":"registry:ui","target":"fancy/checkbox/Checkbox.svelte"},{"path":"src/lib/fancy-ui/checkbox/index.ts","type":"registry:ui","target":"fancy/checkbox/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/checkbox"}},{"name":"code-diff","type":"registry:ui","title":"CodeDiff","description":"Unified diff tuned for chat width: one foldable card per file, tinted add/delete rows, and a copy-safe gutter","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/code-diff/CodeDiff.svelte","type":"registry:ui","target":"fancy/code-diff/CodeDiff.svelte"},{"path":"src/lib/fancy-ui/code-diff/index.ts","type":"registry:ui","target":"fancy/code-diff/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/code-diff"}},{"name":"collapsible","type":"registry:ui","title":"Collapsible","description":"A single disclosure: a trigger that expands and collapses a region, animated without measuring so an interrupted toggle simply reverses, with the closed content kept in the page.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/collapsible/Collapsible.svelte","type":"registry:ui","target":"fancy/collapsible/Collapsible.svelte"},{"path":"src/lib/fancy-ui/collapsible/CollapsibleContent.svelte","type":"registry:ui","target":"fancy/collapsible/CollapsibleContent.svelte"},{"path":"src/lib/fancy-ui/collapsible/CollapsibleTrigger.svelte","type":"registry:ui","target":"fancy/collapsible/CollapsibleTrigger.svelte"},{"path":"src/lib/fancy-ui/collapsible/collapsible-core.ts","type":"registry:ui","target":"fancy/collapsible/collapsible-core.ts"},{"path":"src/lib/fancy-ui/collapsible/index.ts","type":"registry:ui","target":"fancy/collapsible/index.ts"},{"path":"src/lib/fancy-ui/collapsible/types.ts","type":"registry:ui","target":"fancy/collapsible/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/collapsible"}},{"name":"colourful-text","type":"registry:ui","title":"ColourfulText","description":"Per-character text animation where each glyph transitions to a new color from a shuffled palette, staggered across characters and reshuffling automatically every 5 seconds using pure CSS transitions","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/colourful-text/ColourfulText.svelte","type":"registry:ui","target":"fancy/colourful-text/ColourfulText.svelte"},{"path":"src/lib/fancy-ui/colourful-text/index.ts","type":"registry:ui","target":"fancy/colourful-text/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/colourful-text"}},{"name":"combobox","type":"registry:ui","title":"Combobox","description":"A single-choice text field over a closed set of options — typing filters a portalled listbox, and a value outside the list can never be selected.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/combobox/Combobox.svelte","type":"registry:ui","target":"fancy/combobox/Combobox.svelte"},{"path":"src/lib/fancy-ui/combobox/ComboboxPanel.svelte","type":"registry:ui","target":"fancy/combobox/ComboboxPanel.svelte"},{"path":"src/lib/fancy-ui/combobox/index.ts","type":"registry:ui","target":"fancy/combobox/index.ts"},{"path":"src/lib/fancy-ui/combobox/match.ts","type":"registry:ui","target":"fancy/combobox/match.ts"},{"path":"src/lib/fancy-ui/combobox/types.ts","type":"registry:ui","target":"fancy/combobox/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/combobox"}},{"name":"command-menu","type":"registry:ui","title":"CommandMenu","description":"A modal search palette over a flat vocabulary of items — grouped results, diacritic-insensitive filtering, match highlighting, and full keyboard navigation with focus that never leaves the search field.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/command-menu/CommandMenu.svelte","type":"registry:ui","target":"fancy/command-menu/CommandMenu.svelte"},{"path":"src/lib/fancy-ui/command-menu/index.ts","type":"registry:ui","target":"fancy/command-menu/index.ts"},{"path":"src/lib/fancy-ui/command-menu/match.ts","type":"registry:ui","target":"fancy/command-menu/match.ts"},{"path":"src/lib/fancy-ui/command-menu/types.ts","type":"registry:ui","target":"fancy/command-menu/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/command-menu"}},{"name":"compare","type":"registry:ui","title":"Compare","description":"Before/after image comparison slider split by a blade of light: a white-hot seam with a chromatic fringe, pulses running along it and a trail that stretches with the speed of the gesture","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["media"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/compare/Compare.svelte","type":"registry:ui","target":"fancy/compare/Compare.svelte"},{"path":"src/lib/fancy-ui/compare/StarField.svelte","type":"registry:ui","target":"fancy/compare/StarField.svelte"},{"path":"src/lib/fancy-ui/compare/index.ts","type":"registry:ui","target":"fancy/compare/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/compare"}},{"name":"composer","type":"registry:ui","title":"Composer","description":"The input at the bottom of a chat, taken apart: a root that owns the draft and eight parts that read it — a growing textarea, a send button that becomes a stop button, a toolbar, a model picker, an attachment row with its chips, and a completion menu you can mount twice on the same draft for / commands and @ mentions","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/composer/Composer.svelte","type":"registry:ui","target":"fancy/composer/Composer.svelte"},{"path":"src/lib/fancy-ui/composer/ComposerAttachment.svelte","type":"registry:ui","target":"fancy/composer/ComposerAttachment.svelte"},{"path":"src/lib/fancy-ui/composer/ComposerAttachments.svelte","type":"registry:ui","target":"fancy/composer/ComposerAttachments.svelte"},{"path":"src/lib/fancy-ui/composer/ComposerCommandMenu.svelte","type":"registry:ui","target":"fancy/composer/ComposerCommandMenu.svelte"},{"path":"src/lib/fancy-ui/composer/ComposerInput.svelte","type":"registry:ui","target":"fancy/composer/ComposerInput.svelte"},{"path":"src/lib/fancy-ui/composer/ComposerModelPicker.svelte","type":"registry:ui","target":"fancy/composer/ComposerModelPicker.svelte"},{"path":"src/lib/fancy-ui/composer/ComposerSubmit.svelte","type":"registry:ui","target":"fancy/composer/ComposerSubmit.svelte"},{"path":"src/lib/fancy-ui/composer/ComposerToolbar.svelte","type":"registry:ui","target":"fancy/composer/ComposerToolbar.svelte"},{"path":"src/lib/fancy-ui/composer/caret.ts","type":"registry:ui","target":"fancy/composer/caret.ts"},{"path":"src/lib/fancy-ui/composer/index.ts","type":"registry:ui","target":"fancy/composer/index.ts"},{"path":"src/lib/fancy-ui/composer/types.ts","type":"registry:ui","target":"fancy/composer/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/composer"}},{"name":"confetti","type":"registry:ui","title":"Confetti","description":"Confetti celebration effect powered by canvas-confetti with button trigger support","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"dependencies":["canvas-confetti@^1.9.4"],"devDependencies":["@types/canvas-confetti@^1.9.0"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"docs":"Installs canvas-confetti as a dependency.","files":[{"path":"src/lib/fancy-ui/confetti/Confetti.svelte","type":"registry:ui","target":"fancy/confetti/Confetti.svelte"},{"path":"src/lib/fancy-ui/confetti/ConfettiButton.svelte","type":"registry:ui","target":"fancy/confetti/ConfettiButton.svelte"},{"path":"src/lib/fancy-ui/confetti/confetti-core.ts","type":"registry:ui","target":"fancy/confetti/confetti-core.ts"},{"path":"src/lib/fancy-ui/confetti/index.ts","type":"registry:ui","target":"fancy/confetti/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/confetti"}},{"name":"container-scroll","type":"registry:ui","title":"ContainerScroll","description":"Scroll-driven aperture: the card opens from a bright seam as it enters the viewport while its content settles into focus and the title blurs away, with no 3D tilt","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["layout"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/container-scroll/ContainerScroll.svelte","type":"registry:ui","target":"fancy/container-scroll/ContainerScroll.svelte"},{"path":"src/lib/fancy-ui/container-scroll/index.ts","type":"registry:ui","target":"fancy/container-scroll/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/container-scroll"}},{"name":"container-text-flip","type":"registry:ui","title":"ContainerTextFlip","description":"Text container that cycles through words with per-character blur animation","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/container-text-flip/ContainerTextFlip.svelte","type":"registry:ui","target":"fancy/container-text-flip/ContainerTextFlip.svelte"},{"path":"src/lib/fancy-ui/container-text-flip/index.ts","type":"registry:ui","target":"fancy/container-text-flip/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/container-text-flip"}},{"name":"context-menu","type":"registry:ui","title":"ContextMenu","description":"A menu that opens at the pointer on right-click, sharing DropdownMenu's item, submenu and keyboard behaviour but anchored to a virtual point instead of a trigger element.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/dropdown-menu.json","https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/context-menu/ContextMenu.svelte","type":"registry:ui","target":"fancy/context-menu/ContextMenu.svelte"},{"path":"src/lib/fancy-ui/context-menu/ContextMenuContent.svelte","type":"registry:ui","target":"fancy/context-menu/ContextMenuContent.svelte"},{"path":"src/lib/fancy-ui/context-menu/ContextMenuTrigger.svelte","type":"registry:ui","target":"fancy/context-menu/ContextMenuTrigger.svelte"},{"path":"src/lib/fancy-ui/context-menu/index.ts","type":"registry:ui","target":"fancy/context-menu/index.ts"},{"path":"src/lib/fancy-ui/context-menu/types.ts","type":"registry:ui","target":"fancy/context-menu/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/context-menu"}},{"name":"context-ring","type":"registry:ui","title":"ContextRing","description":"How much of the context window is gone, in the space of a favicon: a donut that fills as the conversation grows, the compact count beside it, and an optional popover breaking the total down by what is holding it","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/context-ring/ContextRing.svelte","type":"registry:ui","target":"fancy/context-ring/ContextRing.svelte"},{"path":"src/lib/fancy-ui/context-ring/index.ts","type":"registry:ui","target":"fancy/context-ring/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/context-ring"}},{"name":"copy-button","type":"registry:ui","title":"CopyButton","description":"Button preset wired to the clipboard, morphing its icon and label to a success or failure state for a moment after each copy attempt","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["actions"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/button.json","https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json","https://fancy-ui.rama.app/r/svelte/status-morph.json"],"files":[{"path":"src/lib/fancy-ui/copy-button/CopyButton.svelte","type":"registry:ui","target":"fancy/copy-button/CopyButton.svelte"},{"path":"src/lib/fancy-ui/copy-button/index.ts","type":"registry:ui","target":"fancy/copy-button/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/copy-button"}},{"name":"datamosh-transition","type":"registry:ui","title":"DatamoshTransition","description":"Page-transition overlay that looks like a corrupted video decode: a fixed grid of columns, narrow on the left and wide on the right, fills with flat blocks of saturated colour that fall, snap open through the middle of the frame and squeeze shut again; cover() drops the columns over the page right to left and reveal() lets them fall away, both as promises for any router's navigation hook","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/datamosh-transition/DatamoshTransition.svelte","type":"registry:ui","target":"fancy/datamosh-transition/DatamoshTransition.svelte"},{"path":"src/lib/fancy-ui/datamosh-transition/datamosh-transition-core.ts","type":"registry:ui","target":"fancy/datamosh-transition/datamosh-transition-core.ts"},{"path":"src/lib/fancy-ui/datamosh-transition/index.ts","type":"registry:ui","target":"fancy/datamosh-transition/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/datamosh-transition"}},{"name":"date-picker","type":"registry:ui","title":"DatePicker","description":"A field that opens a floating month grid, with full keyboard navigation (arrow keys across days, Page Up/Down across months, Shift for years), min/max and per-day disabling, and a fully localized accessible name on every day cell.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/date-picker/DatePicker.svelte","type":"registry:ui","target":"fancy/date-picker/DatePicker.svelte"},{"path":"src/lib/fancy-ui/date-picker/date-utils.ts","type":"registry:ui","target":"fancy/date-picker/date-utils.ts"},{"path":"src/lib/fancy-ui/date-picker/index.ts","type":"registry:ui","target":"fancy/date-picker/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/date-picker"}},{"name":"dialog","type":"registry:ui","title":"Dialog","description":"A modal panel with a title, description, body and free-form footer — portals out, traps focus, and locks the page's scroll while open","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["overlays"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/dialog/Dialog.svelte","type":"registry:ui","target":"fancy/dialog/Dialog.svelte"},{"path":"src/lib/fancy-ui/dialog/DialogSurface.svelte","type":"registry:ui","target":"fancy/dialog/DialogSurface.svelte"},{"path":"src/lib/fancy-ui/dialog/index.ts","type":"registry:ui","target":"fancy/dialog/index.ts"},{"path":"src/lib/fancy-ui/dialog/types.ts","type":"registry:ui","target":"fancy/dialog/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/dialog"}},{"name":"dim-siblings","type":"registry:ui","title":"DimSiblings","description":"Wraps a group of cards, links, or list items so hovering or keyboard-focusing one dims (or blurs) every other one — a pure CSS :has() affordance with zero pointer-tracking JavaScript","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/dim-siblings/DimSiblings.svelte","type":"registry:ui","target":"fancy/dim-siblings/DimSiblings.svelte"},{"path":"src/lib/fancy-ui/dim-siblings/index.ts","type":"registry:ui","target":"fancy/dim-siblings/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/dim-siblings"}},{"name":"direction-aware-hover","type":"registry:ui","title":"DirectionAwareHover","description":"Image card with overlay that slides in from the mouse entry direction","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/direction-aware-hover/DirectionAwareHover.svelte","type":"registry:ui","target":"fancy/direction-aware-hover/DirectionAwareHover.svelte"},{"path":"src/lib/fancy-ui/direction-aware-hover/index.ts","type":"registry:ui","target":"fancy/direction-aware-hover/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/direction-aware-hover"}},{"name":"displacement-text","type":"registry:ui","title":"DisplacementText","description":"3D text with WebGL displacement that follows the cursor using Three.js shaders","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"dependencies":["three@^0.183.2"],"devDependencies":["@types/three@^0.183.1"],"registryDependencies":[],"docs":"Installs three as a dependency.","files":[{"path":"src/lib/fancy-ui/displacement-text/DisplacementText.svelte","type":"registry:ui","target":"fancy/displacement-text/DisplacementText.svelte"},{"path":"src/lib/fancy-ui/displacement-text/displacement-text-core.ts","type":"registry:ui","target":"fancy/displacement-text/displacement-text-core.ts"},{"path":"src/lib/fancy-ui/displacement-text/index.ts","type":"registry:ui","target":"fancy/displacement-text/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/displacement-text"}},{"name":"dock","type":"registry:ui","title":"Dock","description":"Icon dock on a lit glass shelf: icons swell on a smooth cosine curve toward the pointer, a soft pool of light and a brightening edge follow it across the shelf, and a small dot and floor reflection mark the icon underneath.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/dock/Dock.svelte","type":"registry:ui","target":"fancy/dock/Dock.svelte"},{"path":"src/lib/fancy-ui/dock/DockIcon.svelte","type":"registry:ui","target":"fancy/dock/DockIcon.svelte"},{"path":"src/lib/fancy-ui/dock/DockSeparator.svelte","type":"registry:ui","target":"fancy/dock/DockSeparator.svelte"},{"path":"src/lib/fancy-ui/dock/index.ts","type":"registry:ui","target":"fancy/dock/index.ts"},{"path":"src/lib/fancy-ui/dock/types.ts","type":"registry:ui","target":"fancy/dock/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/dock"}},{"name":"drawer","type":"registry:ui","title":"Drawer","description":"A modal bottom sheet with a grab handle, draggable shut with a downward swipe — for filters, quick actions, or any touch-first task","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["overlays"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/drawer/Drawer.svelte","type":"registry:ui","target":"fancy/drawer/Drawer.svelte"},{"path":"src/lib/fancy-ui/drawer/index.ts","type":"registry:ui","target":"fancy/drawer/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/drawer"}},{"name":"dropdown-menu","type":"registry:ui","title":"DropdownMenu","description":"A menu of actions or options that opens from a trigger button, with full keyboard navigation, submenus and real DOM focus on every item.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenu.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenu.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenuContent.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenuContent.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenuItem.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenuItem.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenuLabel.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenuLabel.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenuSeparator.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenuSeparator.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenuSub.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenuSub.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenuSubContent.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenuSubContent.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenuSubTrigger.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenuSubTrigger.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/DropdownMenuTrigger.svelte","type":"registry:ui","target":"fancy/dropdown-menu/DropdownMenuTrigger.svelte"},{"path":"src/lib/fancy-ui/dropdown-menu/index.ts","type":"registry:ui","target":"fancy/dropdown-menu/index.ts"},{"path":"src/lib/fancy-ui/dropdown-menu/menu-shared.ts","type":"registry:ui","target":"fancy/dropdown-menu/menu-shared.ts"},{"path":"src/lib/fancy-ui/dropdown-menu/types.ts","type":"registry:ui","target":"fancy/dropdown-menu/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/dropdown-menu"}},{"name":"editorial-engine","type":"registry:ui","title":"EditorialEngine","description":"Live magazine layout: multi-column text flowing around draggable orbs with zero DOM reads, powered by pretext","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"dependencies":["@chenglou/pretext@^0.0.5"],"registryDependencies":[],"docs":"Installs @chenglou/pretext as a dependency.","files":[{"path":"src/lib/fancy-ui/editorial-engine/EditorialEngine.svelte","type":"registry:ui","target":"fancy/editorial-engine/EditorialEngine.svelte"},{"path":"src/lib/fancy-ui/editorial-engine/engine.ts","type":"registry:ui","target":"fancy/editorial-engine/engine.ts"},{"path":"src/lib/fancy-ui/editorial-engine/index.ts","type":"registry:ui","target":"fancy/editorial-engine/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/editorial-engine"}},{"name":"file-upload","type":"registry:ui","title":"FileUpload","description":"A drop zone backed by a native file input, with per-file progress, JS-side validation and a removable file list","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/file-upload/FileUpload.svelte","type":"registry:ui","target":"fancy/file-upload/FileUpload.svelte"},{"path":"src/lib/fancy-ui/file-upload/index.ts","type":"registry:ui","target":"fancy/file-upload/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/file-upload"}},{"name":"fireworks-hdr","type":"registry:ui","title":"FireworksHdr","description":"GPU fireworks background with a deterministic, DOM-free physics core (rockets, peony/willow/ring/glyph shells, sparks, embers, smoke) rendered by a WebGPU engine into a wide-gamut, extended-tone-mapping canvas so bursts and comet trails burn brighter than SDR white on HDR displays, degrading silently through a WebGL2 fallback and a soft-knee SDR path everywhere else","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"devDependencies":["@webgpu/types@^0.1.71"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json"],"files":[{"path":"src/lib/fancy-ui/fireworks-hdr/FireworksHdr.svelte","type":"registry:ui","target":"fancy/fireworks-hdr/FireworksHdr.svelte"},{"path":"src/lib/fancy-ui/fireworks-hdr/fireworks-hdr-core.ts","type":"registry:ui","target":"fancy/fireworks-hdr/fireworks-hdr-core.ts"},{"path":"src/lib/fancy-ui/fireworks-hdr/fireworks-shared.ts","type":"registry:ui","target":"fancy/fireworks-hdr/fireworks-shared.ts"},{"path":"src/lib/fancy-ui/fireworks-hdr/index.ts","type":"registry:ui","target":"fancy/fireworks-hdr/index.ts"},{"path":"src/lib/fancy-ui/fireworks-hdr/webgl2-renderer.ts","type":"registry:ui","target":"fancy/fireworks-hdr/webgl2-renderer.ts"},{"path":"src/lib/fancy-ui/fireworks-hdr/webgpu-renderer.ts","type":"registry:ui","target":"fancy/fireworks-hdr/webgpu-renderer.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/fireworks-hdr"}},{"name":"flickering-grid","type":"registry:ui","title":"FlickeringGrid","description":"Canvas grid of squares that flicker in and out of opacity at random each frame, pausing automatically via IntersectionObserver when scrolled off-screen and resizing to fit its container via ResizeObserver","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["backgrounds"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/flickering-grid/FlickeringGrid.svelte","type":"registry:ui","target":"fancy/flickering-grid/FlickeringGrid.svelte"},{"path":"src/lib/fancy-ui/flickering-grid/flickering-grid-core.ts","type":"registry:ui","target":"fancy/flickering-grid/flickering-grid-core.ts"},{"path":"src/lib/fancy-ui/flickering-grid/index.ts","type":"registry:ui","target":"fancy/flickering-grid/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/flickering-grid"}},{"name":"flip-card","type":"registry:ui","title":"FlipCard","description":"Card that flips in 3D to reveal its back, on hover (plus focus and tap) or as a click toggle; it lifts and lands with a slight overshoot, keeps turning the way the pointer travels, and its faces catch a sweeping sheen and shade edge-on","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/flip-card/FlipCard.svelte","type":"registry:ui","target":"fancy/flip-card/FlipCard.svelte"},{"path":"src/lib/fancy-ui/flip-card/index.ts","type":"registry:ui","target":"fancy/flip-card/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/flip-card"}},{"name":"flip-words","type":"registry:ui","title":"FlipWords","description":"Cycling word animation with per-letter fade-in and blur effects","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/flip-words/FlipWords.svelte","type":"registry:ui","target":"fancy/flip-words/FlipWords.svelte"},{"path":"src/lib/fancy-ui/flip-words/index.ts","type":"registry:ui","target":"fancy/flip-words/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/flip-words"}},{"name":"fluid-cursor","type":"registry:ui","title":"FluidCursor","description":"Full Navier-Stokes fluid simulation that swirls color in response to cursor and touch movement, running on WebGL2 with a WebGL1 fallback and an optional WebGPU HDR path for wide-gamut, brighter-than-white glow","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"devDependencies":["@webgpu/types@^0.1.71"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/fluid-cursor/FluidCursor.svelte","type":"registry:ui","target":"fancy/fluid-cursor/FluidCursor.svelte"},{"path":"src/lib/fancy-ui/fluid-cursor/fluid-cursor-core.ts","type":"registry:ui","target":"fancy/fluid-cursor/fluid-cursor-core.ts"},{"path":"src/lib/fancy-ui/fluid-cursor/fluid-shared.ts","type":"registry:ui","target":"fancy/fluid-cursor/fluid-shared.ts"},{"path":"src/lib/fancy-ui/fluid-cursor/index.ts","type":"registry:ui","target":"fancy/fluid-cursor/index.ts"},{"path":"src/lib/fancy-ui/fluid-cursor/webgpu-engine.ts","type":"registry:ui","target":"fancy/fluid-cursor/webgpu-engine.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/fluid-cursor"}},{"name":"focus","type":"registry:ui","title":"Focus","description":"Text component that cycles focus through words with blur and corner frame","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/focus/Focus.svelte","type":"registry:ui","target":"fancy/focus/Focus.svelte"},{"path":"src/lib/fancy-ui/focus/index.ts","type":"registry:ui","target":"fancy/focus/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/focus"}},{"name":"follow-button","type":"registry:ui","title":"FollowButton","description":"A follow toggle that shows the result at once, then commits when the server agrees or rolls back and says so, with the width held steady across every label","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["actions"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/button.json","https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json","https://fancy-ui.rama.app/r/svelte/status-morph.json"],"files":[{"path":"src/lib/fancy-ui/follow-button/FollowButton.svelte","type":"registry:ui","target":"fancy/follow-button/FollowButton.svelte"},{"path":"src/lib/fancy-ui/follow-button/follow-core.ts","type":"registry:ui","target":"fancy/follow-button/follow-core.ts"},{"path":"src/lib/fancy-ui/follow-button/index.ts","type":"registry:ui","target":"fancy/follow-button/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/follow-button"}},{"name":"form-field","type":"registry:ui","title":"FormField","description":"Wraps a control with a label, help/error text and id wiring, so a screen reader gets the full picture without manual aria plumbing","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/label.json"],"files":[{"path":"src/lib/fancy-ui/form-field/FormField.svelte","type":"registry:ui","target":"fancy/form-field/FormField.svelte"},{"path":"src/lib/fancy-ui/form-field/index.ts","type":"registry:ui","target":"fancy/form-field/index.ts"},{"path":"src/lib/fancy-ui/form-field/types.ts","type":"registry:ui","target":"fancy/form-field/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/form-field"}},{"name":"frosted-glass","type":"registry:ui","title":"FrostedGlass","description":"Frosted glass surface with organic turbulence-noise refraction, an alternative to LiquidGlass","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/frosted-glass/FrostedGlass.svelte","type":"registry:ui","target":"fancy/frosted-glass/FrostedGlass.svelte"},{"path":"src/lib/fancy-ui/frosted-glass/index.ts","type":"registry:ui","target":"fancy/frosted-glass/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/frosted-glass"}},{"name":"glare-card","type":"registry:ui","title":"GlareCard","description":"Holographic trading card effect with mouse-tracking glare and rainbow foil","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/glare-card/GlareCard.svelte","type":"registry:ui","target":"fancy/glare-card/GlareCard.svelte"},{"path":"src/lib/fancy-ui/glare-card/index.ts","type":"registry:ui","target":"fancy/glare-card/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/glare-card"}},{"name":"glow-border","type":"registry:ui","title":"GlowBorder","description":"Liquid-metal ring for a container's edge: two metallic conic fields turning against each other make iridescent reflections flow along a dark chrome border, while a glint rides around it and spills a soft glow; chromatic, silver and gold presets or custom tints","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/glow-border/GlowBorder.svelte","type":"registry:ui","target":"fancy/glow-border/GlowBorder.svelte"},{"path":"src/lib/fancy-ui/glow-border/index.ts","type":"registry:ui","target":"fancy/glow-border/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/glow-border"}},{"name":"glowing-effect","type":"registry:ui","title":"GlowingEffect","description":"Mouse-proximity based glowing border effect with animated conic gradient","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/glowing-effect/GlowingEffect.svelte","type":"registry:ui","target":"fancy/glowing-effect/GlowingEffect.svelte"},{"path":"src/lib/fancy-ui/glowing-effect/glowing-effect-core.ts","type":"registry:ui","target":"fancy/glowing-effect/glowing-effect-core.ts"},{"path":"src/lib/fancy-ui/glowing-effect/index.ts","type":"registry:ui","target":"fancy/glowing-effect/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/glowing-effect"}},{"name":"gradient-button","type":"registry:ui","title":"GradientButton","description":"Dark button with a beam of light that travels around its border and casts a soft coloured glow inside the face; the glow brightens on hover","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["buttons"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/gradient-button/GradientButton.svelte","type":"registry:ui","target":"fancy/gradient-button/GradientButton.svelte"},{"path":"src/lib/fancy-ui/gradient-button/index.ts","type":"registry:ui","target":"fancy/gradient-button/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/gradient-button"}},{"name":"hover-card","type":"registry:ui","title":"HoverCard","description":"An anchored panel that opens on hover or focus with a short delay, for richer previews than a tooltip — a profile card, a link preview","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["overlays"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/hover-card/HoverCard.svelte","type":"registry:ui","target":"fancy/hover-card/HoverCard.svelte"},{"path":"src/lib/fancy-ui/hover-card/index.ts","type":"registry:ui","target":"fancy/hover-card/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/hover-card"}},{"name":"hyper-text","type":"registry:ui","title":"HyperText","description":"Text that scrambles into random uppercase letters and resolves character-by-character back to the original on hover, with a staggered per-letter reveal and an optional animate-on-load mode","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/hyper-text/HyperText.svelte","type":"registry:ui","target":"fancy/hyper-text/HyperText.svelte"},{"path":"src/lib/fancy-ui/hyper-text/index.ts","type":"registry:ui","target":"fancy/hyper-text/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/hyper-text"}},{"name":"icon-button","type":"registry:ui","title":"IconButton","description":"Square or circular icon-only button built on Button, with a required accessible label","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["actions"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/button.json","https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/icon-button/IconButton.svelte","type":"registry:ui","target":"fancy/icon-button/IconButton.svelte"},{"path":"src/lib/fancy-ui/icon-button/index.ts","type":"registry:ui","target":"fancy/icon-button/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/icon-button"}},{"name":"image-generation","type":"registry:ui","title":"ImageGeneration","description":"Fixed frame that holds its place while a model draws: an empty outline, then a pixel grid working over a drifting dot field, then the finished image easing out of a blur","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/pixel-loader.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/image-generation/ImageGeneration.svelte","type":"registry:ui","target":"fancy/image-generation/ImageGeneration.svelte"},{"path":"src/lib/fancy-ui/image-generation/index.ts","type":"registry:ui","target":"fancy/image-generation/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/image-generation"}},{"name":"image-trail-cursor","type":"registry:ui","title":"ImageTrailCursor","description":"Trail of images that spawn and animate along the cursor's path, powered by GSAP timelines, with 18 selectable variants: fades, momentum drift, rotation flings, 3D perspective tilt, a hard-edge pixelated snap, a bouncy scale pop, images that fall or bounce under gravity, a flame flicker, and five fragment reveals (venetian, curtain, hexagon, liquid, zoom split)","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"dependencies":["gsap@^3.14.2"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"docs":"Installs gsap as a dependency.","files":[{"path":"src/lib/fancy-ui/image-trail-cursor/ImageTrailCursor.svelte","type":"registry:ui","target":"fancy/image-trail-cursor/ImageTrailCursor.svelte"},{"path":"src/lib/fancy-ui/image-trail-cursor/index.ts","type":"registry:ui","target":"fancy/image-trail-cursor/index.ts"},{"path":"src/lib/fancy-ui/image-trail-cursor/trail-variants.ts","type":"registry:ui","target":"fancy/image-trail-cursor/trail-variants.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/image-trail-cursor"}},{"name":"inline-citation","type":"registry:ui","title":"InlineCitation","description":"A numbered reference that sits inside a sentence and reveals the document behind it — title, domain and snippet — in a floating card on hover or focus","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json","https://fancy-ui.rama.app/r/svelte/sources.json"],"files":[{"path":"src/lib/fancy-ui/inline-citation/InlineCitation.svelte","type":"registry:ui","target":"fancy/inline-citation/InlineCitation.svelte"},{"path":"src/lib/fancy-ui/inline-citation/index.ts","type":"registry:ui","target":"fancy/inline-citation/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/inline-citation"}},{"name":"input","type":"registry:ui","title":"Input","description":"A single-line text field with resting, focus, error and disabled looks, built on a native input","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json"],"files":[{"path":"src/lib/fancy-ui/input/Input.svelte","type":"registry:ui","target":"fancy/input/Input.svelte"},{"path":"src/lib/fancy-ui/input/index.ts","type":"registry:ui","target":"fancy/input/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/input"}},{"name":"interactive-grid-pattern","type":"registry:ui","title":"InteractiveGridPattern","description":"SVG grid of squares that highlight on hover with smooth fade transitions","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/interactive-grid-pattern/InteractiveGridPattern.svelte","type":"registry:ui","target":"fancy/interactive-grid-pattern/InteractiveGridPattern.svelte"},{"path":"src/lib/fancy-ui/interactive-grid-pattern/index.ts","type":"registry:ui","target":"fancy/interactive-grid-pattern/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/interactive-grid-pattern"}},{"name":"interactive-hover-button","type":"registry:ui","title":"InteractiveHoverButton","description":"Button whose dot opens into a circle that fills it on hover, while the label rolls up and out and returns with an arrow","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["buttons"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/interactive-hover-button/InteractiveHoverButton.svelte","type":"registry:ui","target":"fancy/interactive-hover-button/InteractiveHoverButton.svelte"},{"path":"src/lib/fancy-ui/interactive-hover-button/index.ts","type":"registry:ui","target":"fancy/interactive-hover-button/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/interactive-hover-button"}},{"name":"internals","type":"registry:lib","title":"Shared internals","description":"Actions and helpers the components share: positioning, focus, dismissal, ids, text streaming, markdown and portals.","author":"fancy-ui <https://fancy-ui.rama.app>","registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/_internals/Markdown.svelte","type":"registry:ui","target":"fancy/_internals/Markdown.svelte"},{"path":"src/lib/fancy-ui/_internals/MarkdownInline.svelte","type":"registry:ui","target":"fancy/_internals/MarkdownInline.svelte"},{"path":"src/lib/fancy-ui/_internals/StreamText.svelte","type":"registry:ui","target":"fancy/_internals/StreamText.svelte"},{"path":"src/lib/fancy-ui/_internals/ai-types.ts","type":"registry:ui","target":"fancy/_internals/ai-types.ts"},{"path":"src/lib/fancy-ui/_internals/anchor-position.ts","type":"registry:ui","target":"fancy/_internals/anchor-position.ts"},{"path":"src/lib/fancy-ui/_internals/autoscroll.ts","type":"registry:ui","target":"fancy/_internals/autoscroll.ts"},{"path":"src/lib/fancy-ui/_internals/calendar-core.ts","type":"registry:ui","target":"fancy/_internals/calendar-core.ts"},{"path":"src/lib/fancy-ui/_internals/clipboard.svelte.ts","type":"registry:ui","target":"fancy/_internals/clipboard.svelte.ts"},{"path":"src/lib/fancy-ui/_internals/diff.ts","type":"registry:ui","target":"fancy/_internals/diff.ts"},{"path":"src/lib/fancy-ui/_internals/dismissable.ts","type":"registry:ui","target":"fancy/_internals/dismissable.ts"},{"path":"src/lib/fancy-ui/_internals/elapsed.svelte.ts","type":"registry:ui","target":"fancy/_internals/elapsed.svelte.ts"},{"path":"src/lib/fancy-ui/_internals/env.ts","type":"registry:ui","target":"fancy/_internals/env.ts"},{"path":"src/lib/fancy-ui/_internals/field.svelte.ts","type":"registry:ui","target":"fancy/_internals/field.svelte.ts"},{"path":"src/lib/fancy-ui/_internals/float.ts","type":"registry:ui","target":"fancy/_internals/float.ts"},{"path":"src/lib/fancy-ui/_internals/focus-trap.ts","type":"registry:ui","target":"fancy/_internals/focus-trap.ts"},{"path":"src/lib/fancy-ui/_internals/host.ts","type":"registry:ui","target":"fancy/_internals/host.ts"},{"path":"src/lib/fancy-ui/_internals/id.ts","type":"registry:ui","target":"fancy/_internals/id.ts"},{"path":"src/lib/fancy-ui/_internals/listbox.svelte.ts","type":"registry:ui","target":"fancy/_internals/listbox.svelte.ts"},{"path":"src/lib/fancy-ui/_internals/markdown.ts","type":"registry:ui","target":"fancy/_internals/markdown.ts"},{"path":"src/lib/fancy-ui/_internals/menu.svelte.ts","type":"registry:ui","target":"fancy/_internals/menu.svelte.ts"},{"path":"src/lib/fancy-ui/_internals/merge-ids.ts","type":"registry:ui","target":"fancy/_internals/merge-ids.ts"},{"path":"src/lib/fancy-ui/_internals/portal.ts","type":"registry:ui","target":"fancy/_internals/portal.ts"},{"path":"src/lib/fancy-ui/_internals/relative-time.ts","type":"registry:ui","target":"fancy/_internals/relative-time.ts"},{"path":"src/lib/fancy-ui/_internals/scroll-lock.ts","type":"registry:ui","target":"fancy/_internals/scroll-lock.ts"},{"path":"src/lib/fancy-ui/_internals/stream-text.svelte.ts","type":"registry:ui","target":"fancy/_internals/stream-text.svelte.ts"},{"path":"src/lib/fancy-ui/_internals/waveform-core.ts","type":"registry:ui","target":"fancy/_internals/waveform-core.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0"}},{"name":"internals-motion","type":"registry:lib","title":"Shared internals (motion)","description":"Animation primitives: easing, presence, stagger, in-view and motion tokens.","author":"fancy-ui <https://fancy-ui.rama.app>","registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json"],"files":[{"path":"src/lib/fancy-ui/_internals/motion/anchored.ts","type":"registry:ui","target":"fancy/_internals/motion/anchored.ts"},{"path":"src/lib/fancy-ui/_internals/motion/haptics.ts","type":"registry:ui","target":"fancy/_internals/motion/haptics.ts"},{"path":"src/lib/fancy-ui/_internals/motion/in-view.ts","type":"registry:ui","target":"fancy/_internals/motion/in-view.ts"},{"path":"src/lib/fancy-ui/_internals/motion/media-query.svelte.ts","type":"registry:ui","target":"fancy/_internals/motion/media-query.svelte.ts"},{"path":"src/lib/fancy-ui/_internals/motion/presets.ts","type":"registry:ui","target":"fancy/_internals/motion/presets.ts"},{"path":"src/lib/fancy-ui/_internals/motion/raf.ts","type":"registry:ui","target":"fancy/_internals/motion/raf.ts"},{"path":"src/lib/fancy-ui/_internals/motion/stagger.ts","type":"registry:ui","target":"fancy/_internals/motion/stagger.ts"},{"path":"src/lib/fancy-ui/_internals/motion/tokens.ts","type":"registry:ui","target":"fancy/_internals/motion/tokens.ts"},{"path":"src/lib/fancy-ui/_internals/motion/transitions.ts","type":"registry:ui","target":"fancy/_internals/motion/transitions.ts"},{"path":"src/lib/fancy-ui/_internals/motion/types.ts","type":"registry:ui","target":"fancy/_internals/motion/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0"}},{"name":"label","type":"registry:ui","title":"Label","description":"A form label with a decorative required asterisk, wired to a FormField's context when it has one","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json"],"files":[{"path":"src/lib/fancy-ui/label/Label.svelte","type":"registry:ui","target":"fancy/label/Label.svelte"},{"path":"src/lib/fancy-ui/label/index.ts","type":"registry:ui","target":"fancy/label/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/label"}},{"name":"letter-pullup","type":"registry:ui","title":"LetterPullup","description":"Staggered letter pull-up animation with wave entrance effect","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/letter-pullup/LetterPullup.svelte","type":"registry:ui","target":"fancy/letter-pullup/LetterPullup.svelte"},{"path":"src/lib/fancy-ui/letter-pullup/index.ts","type":"registry:ui","target":"fancy/letter-pullup/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/letter-pullup"}},{"name":"line-hover-link","type":"registry:ui","title":"LineHoverLink","description":"Link component with 12 animated underline hover effects — pure CSS, no JS on hover","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/line-hover-link/LineHoverLink.svelte","type":"registry:ui","target":"fancy/line-hover-link/LineHoverLink.svelte"},{"path":"src/lib/fancy-ui/line-hover-link/index.ts","type":"registry:ui","target":"fancy/line-hover-link/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/line-hover-link"}},{"name":"line-reveal","type":"registry:ui","title":"LineReveal","description":"Staggered line-by-line text reveal with lines computed by pretext instead of DOM splitting","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"dependencies":["@chenglou/pretext@^0.0.5"],"registryDependencies":[],"docs":"Installs @chenglou/pretext as a dependency.","files":[{"path":"src/lib/fancy-ui/line-reveal/LineReveal.svelte","type":"registry:ui","target":"fancy/line-reveal/LineReveal.svelte"},{"path":"src/lib/fancy-ui/line-reveal/index.ts","type":"registry:ui","target":"fancy/line-reveal/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/line-reveal"}},{"name":"line-shadow-text","type":"registry:ui","title":"LineShadowText","description":"Text with animated diagonal line shadow pattern that scrolls continuously","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/line-shadow-text/LineShadowText.svelte","type":"registry:ui","target":"fancy/line-shadow-text/LineShadowText.svelte"},{"path":"src/lib/fancy-ui/line-shadow-text/index.ts","type":"registry:ui","target":"fancy/line-shadow-text/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/line-shadow-text"}},{"name":"link","type":"registry:ui","title":"Link","description":"Inline text link with a muted variant, configurable underline, and a safe external-link mode with a new-tab arrow","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["actions"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/link/Link.svelte","type":"registry:ui","target":"fancy/link/Link.svelte"},{"path":"src/lib/fancy-ui/link/index.ts","type":"registry:ui","target":"fancy/link/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/link"}},{"name":"liquid-glass","type":"registry:ui","title":"LiquidGlass","description":"Glass-like visual effect using SVG filters for chromatic displacement","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/liquid-glass/LiquidGlass.svelte","type":"registry:ui","target":"fancy/liquid-glass/LiquidGlass.svelte"},{"path":"src/lib/fancy-ui/liquid-glass/index.ts","type":"registry:ui","target":"fancy/liquid-glass/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/liquid-glass"}},{"name":"liquid-text","type":"registry:ui","title":"LiquidText","description":"Big text that liquefies along the cursor's path via a raw-WebGL fluid solver, with chromatic-aberration fringing that relaxes back over time","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/liquid-text/LiquidText.svelte","type":"registry:ui","target":"fancy/liquid-text/LiquidText.svelte"},{"path":"src/lib/fancy-ui/liquid-text/index.ts","type":"registry:ui","target":"fancy/liquid-text/index.ts"},{"path":"src/lib/fancy-ui/liquid-text/liquid-text-core.ts","type":"registry:ui","target":"fancy/liquid-text/liquid-text-core.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/liquid-text"}},{"name":"logo-cloud","type":"registry:ui","title":"LogoCloud","description":"Logo display with animated marquee, static grid, and icon variants","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["data-display"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/logo-cloud/AnimatedLogoCloud.svelte","type":"registry:ui","target":"fancy/logo-cloud/AnimatedLogoCloud.svelte"},{"path":"src/lib/fancy-ui/logo-cloud/IconLogoCloud.svelte","type":"registry:ui","target":"fancy/logo-cloud/IconLogoCloud.svelte"},{"path":"src/lib/fancy-ui/logo-cloud/StaticLogoCloud.svelte","type":"registry:ui","target":"fancy/logo-cloud/StaticLogoCloud.svelte"},{"path":"src/lib/fancy-ui/logo-cloud/index.ts","type":"registry:ui","target":"fancy/logo-cloud/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/logo-cloud"}},{"name":"magnetic","type":"registry:ui","title":"Magnetic","description":"A generic wrapper that pulls its child toward the pointer once it enters an activation field larger than the child's own box, and springs back to rest the instant the pointer leaves — a fine-pointer affordance with no touch or keyboard equivalent","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/magnetic/Magnetic.svelte","type":"registry:ui","target":"fancy/magnetic/Magnetic.svelte"},{"path":"src/lib/fancy-ui/magnetic/index.ts","type":"registry:ui","target":"fancy/magnetic/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/magnetic"}},{"name":"magnetic-field","type":"registry:ui","title":"MagneticField","description":"Items are pulled toward a magnet and lean toward it, light ones more than heavy ones, then spring home. The magnet is the pointer or a draggable puck.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/magnetic-field/MagnetPuck.svelte","type":"registry:ui","target":"fancy/magnetic-field/MagnetPuck.svelte"},{"path":"src/lib/fancy-ui/magnetic-field/MagneticField.svelte","type":"registry:ui","target":"fancy/magnetic-field/MagneticField.svelte"},{"path":"src/lib/fancy-ui/magnetic-field/MagneticItem.svelte","type":"registry:ui","target":"fancy/magnetic-field/MagneticItem.svelte"},{"path":"src/lib/fancy-ui/magnetic-field/index.ts","type":"registry:ui","target":"fancy/magnetic-field/index.ts"},{"path":"src/lib/fancy-ui/magnetic-field/magnetic-field-core.ts","type":"registry:ui","target":"fancy/magnetic-field/magnetic-field-core.ts"},{"path":"src/lib/fancy-ui/magnetic-field/magnetic-field-source.ts","type":"registry:ui","target":"fancy/magnetic-field/magnetic-field-source.ts"},{"path":"src/lib/fancy-ui/magnetic-field/types.ts","type":"registry:ui","target":"fancy/magnetic-field/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/magnetic-field"}},{"name":"marquee","type":"registry:ui","title":"Marquee","description":"An eased conveyor of repeated content that dissolves into soft edge fades and, on hover or focus, brakes smoothly to a stop and pulls away again instead of freezing.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["layout"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/marquee/Marquee.svelte","type":"registry:ui","target":"fancy/marquee/Marquee.svelte"},{"path":"src/lib/fancy-ui/marquee/ReviewCard.svelte","type":"registry:ui","target":"fancy/marquee/ReviewCard.svelte"},{"path":"src/lib/fancy-ui/marquee/index.ts","type":"registry:ui","target":"fancy/marquee/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/marquee"}},{"name":"matrix-rain","type":"registry:ui","title":"MatrixRain","description":"Canvas-based falling glyph rain with configurable color, speed, and density","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["backgrounds"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/matrix-rain/MatrixRain.svelte","type":"registry:ui","target":"fancy/matrix-rain/MatrixRain.svelte"},{"path":"src/lib/fancy-ui/matrix-rain/index.ts","type":"registry:ui","target":"fancy/matrix-rain/index.ts"},{"path":"src/lib/fancy-ui/matrix-rain/matrix-rain-core.ts","type":"registry:ui","target":"fancy/matrix-rain/matrix-rain-core.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/matrix-rain"}},{"name":"meteors","type":"registry:ui","title":"Meteors","description":"Meteor shower in depth: seeded meteors with glowing heads and tapering tails fall diagonally in parallax (near ones larger, brighter and faster), fading in and burning out, a few flaring before they go","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/meteors/Meteors.svelte","type":"registry:ui","target":"fancy/meteors/Meteors.svelte"},{"path":"src/lib/fancy-ui/meteors/index.ts","type":"registry:ui","target":"fancy/meteors/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/meteors"}},{"name":"mosaic-glow","type":"registry:ui","title":"MosaicGlow","description":"Canvas mosaic of small tiles on a dark surface where a soft halo follows the cursor with a lag, lighting tiles to random gold intensities that decay into a comet trail, with an additive bloom over the gaps, a glassy per-tile highlight, ambient flicker and an autonomous drift when idle","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["backgrounds"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/mosaic-glow/MosaicGlow.svelte","type":"registry:ui","target":"fancy/mosaic-glow/MosaicGlow.svelte"},{"path":"src/lib/fancy-ui/mosaic-glow/index.ts","type":"registry:ui","target":"fancy/mosaic-glow/index.ts"},{"path":"src/lib/fancy-ui/mosaic-glow/mosaic-glow-core.ts","type":"registry:ui","target":"fancy/mosaic-glow/mosaic-glow-core.ts"},{"path":"src/lib/fancy-ui/mosaic-glow/mosaic-glow-hdr.ts","type":"registry:ui","target":"fancy/mosaic-glow/mosaic-glow-hdr.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/mosaic-glow"}},{"name":"navbar","type":"registry:ui","title":"Navbar","description":"A horizontal top-of-page bar with a brand mark, navigation links, and actions on the right.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/navbar/Navbar.svelte","type":"registry:ui","target":"fancy/navbar/Navbar.svelte"},{"path":"src/lib/fancy-ui/navbar/NavbarLink.svelte","type":"registry:ui","target":"fancy/navbar/NavbarLink.svelte"},{"path":"src/lib/fancy-ui/navbar/index.ts","type":"registry:ui","target":"fancy/navbar/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/navbar"}},{"name":"navigation-menu","type":"registry:ui","title":"NavigationMenu","description":"A horizontal row of triggers that each open a rich, multi-column panel below the row — disclosure-pattern site navigation, not an application menu.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/navigation-menu/NavigationMenu.svelte","type":"registry:ui","target":"fancy/navigation-menu/NavigationMenu.svelte"},{"path":"src/lib/fancy-ui/navigation-menu/NavigationMenuContent.svelte","type":"registry:ui","target":"fancy/navigation-menu/NavigationMenuContent.svelte"},{"path":"src/lib/fancy-ui/navigation-menu/NavigationMenuItem.svelte","type":"registry:ui","target":"fancy/navigation-menu/NavigationMenuItem.svelte"},{"path":"src/lib/fancy-ui/navigation-menu/NavigationMenuLink.svelte","type":"registry:ui","target":"fancy/navigation-menu/NavigationMenuLink.svelte"},{"path":"src/lib/fancy-ui/navigation-menu/NavigationMenuList.svelte","type":"registry:ui","target":"fancy/navigation-menu/NavigationMenuList.svelte"},{"path":"src/lib/fancy-ui/navigation-menu/NavigationMenuTrigger.svelte","type":"registry:ui","target":"fancy/navigation-menu/NavigationMenuTrigger.svelte"},{"path":"src/lib/fancy-ui/navigation-menu/index.ts","type":"registry:ui","target":"fancy/navigation-menu/index.ts"},{"path":"src/lib/fancy-ui/navigation-menu/types.ts","type":"registry:ui","target":"fancy/navigation-menu/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/navigation-menu"}},{"name":"neon-border","type":"registry:ui","title":"NeonBorder","description":"Two-colour neon tube around its content: two beams with white-hot cores chase each other along a faint tube, their glow spilling inside and outside the edge, humming slowly after a flicker on ignition","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/neon-border/NeonBorder.svelte","type":"registry:ui","target":"fancy/neon-border/NeonBorder.svelte"},{"path":"src/lib/fancy-ui/neon-border/index.ts","type":"registry:ui","target":"fancy/neon-border/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/neon-border"}},{"name":"noise-reveal","type":"registry:ui","title":"NoiseReveal","description":"WebGL image reveal with a Perlin-noise dissolve mask, contracting radial gradient, and wave displacement","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["media"],"dependencies":["three@^0.183.2"],"devDependencies":["@types/three@^0.183.1"],"registryDependencies":[],"docs":"Installs three as a dependency.","files":[{"path":"src/lib/fancy-ui/noise-reveal/NoiseReveal.svelte","type":"registry:ui","target":"fancy/noise-reveal/NoiseReveal.svelte"},{"path":"src/lib/fancy-ui/noise-reveal/index.ts","type":"registry:ui","target":"fancy/noise-reveal/index.ts"},{"path":"src/lib/fancy-ui/noise-reveal/noise-reveal-core.ts","type":"registry:ui","target":"fancy/noise-reveal/noise-reveal-core.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/noise-reveal"}},{"name":"number-input","type":"registry:ui","title":"NumberInput","description":"Numeric field with decrement/increment buttons that clamp to min/max, disable themselves at the bounds, and step fractional values without float drift","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/number-input/NumberInput.svelte","type":"registry:ui","target":"fancy/number-input/NumberInput.svelte"},{"path":"src/lib/fancy-ui/number-input/index.ts","type":"registry:ui","target":"fancy/number-input/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/number-input"}},{"name":"number-ticker","type":"registry:ui","title":"NumberTicker","description":"Animated number counter with easing, triggered on viewport entry","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/number-ticker/NumberTicker.svelte","type":"registry:ui","target":"fancy/number-ticker/NumberTicker.svelte"},{"path":"src/lib/fancy-ui/number-ticker/index.ts","type":"registry:ui","target":"fancy/number-ticker/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/number-ticker"}},{"name":"pagination","type":"registry:ui","title":"Pagination","description":"A page-number control with Previous/Next, ellipsis collapsing for long runs, and optional First/Last jump buttons; the current-page pill slides between numbers and the numbers glide when the visible run shifts.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/pagination/Pagination.svelte","type":"registry:ui","target":"fancy/pagination/Pagination.svelte"},{"path":"src/lib/fancy-ui/pagination/index.ts","type":"registry:ui","target":"fancy/pagination/index.ts"},{"path":"src/lib/fancy-ui/pagination/pagination-range.ts","type":"registry:ui","target":"fancy/pagination/pagination-range.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/pagination"}},{"name":"password-input","type":"registry:ui","title":"PasswordInput","description":"A password field with a show/hide reveal toggle and an optional strength meter that never relies on colour alone","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/password-input/PasswordInput.svelte","type":"registry:ui","target":"fancy/password-input/PasswordInput.svelte"},{"path":"src/lib/fancy-ui/password-input/index.ts","type":"registry:ui","target":"fancy/password-input/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/password-input"}},{"name":"pixel-loader","type":"registry:ui","title":"PixelLoader","description":"Grid of pixels pulsing in a diagonal wave as a pre-token loading indicator for AI responses","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/pixel-loader/PixelLoader.svelte","type":"registry:ui","target":"fancy/pixel-loader/PixelLoader.svelte"},{"path":"src/lib/fancy-ui/pixel-loader/index.ts","type":"registry:ui","target":"fancy/pixel-loader/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/pixel-loader"}},{"name":"pixel-scene","type":"registry:ui","title":"PixelScene","description":"An animated pixel-art landscape on a dot grid: sparse ink dots at rest, full colour under a round lens that follows the pointer, separate day and night palettes, and on HDR displays lit windows, stars and the sun drawn as squares brighter than SDR white. Four scenes: alpine, meadow, sea and mountains.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"devDependencies":["@webgpu/types@^0.1.71"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/pixel-scene/PixelScene.svelte","type":"registry:ui","target":"fancy/pixel-scene/PixelScene.svelte"},{"path":"src/lib/fancy-ui/pixel-scene/index.ts","type":"registry:ui","target":"fancy/pixel-scene/index.ts"},{"path":"src/lib/fancy-ui/pixel-scene/pixel-scene-core.ts","type":"registry:ui","target":"fancy/pixel-scene/pixel-scene-core.ts"},{"path":"src/lib/fancy-ui/pixel-scene/pixel-scene-hdr.ts","type":"registry:ui","target":"fancy/pixel-scene/pixel-scene-hdr.ts"},{"path":"src/lib/fancy-ui/pixel-scene/pixel-scene-scenes.ts","type":"registry:ui","target":"fancy/pixel-scene/pixel-scene-scenes.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/pixel-scene"}},{"name":"popover","type":"registry:ui","title":"Popover","description":"An anchored panel that opens next to a trigger and holds interactive content — quick settings, a small form, more than a tooltip can carry","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["overlays"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/popover/Popover.svelte","type":"registry:ui","target":"fancy/popover/Popover.svelte"},{"path":"src/lib/fancy-ui/popover/PopoverContent.svelte","type":"registry:ui","target":"fancy/popover/PopoverContent.svelte"},{"path":"src/lib/fancy-ui/popover/index.ts","type":"registry:ui","target":"fancy/popover/index.ts"},{"path":"src/lib/fancy-ui/popover/types.ts","type":"registry:ui","target":"fancy/popover/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/popover"}},{"name":"presence","type":"registry:ui","title":"Presence","description":"Mounts and unmounts content with a real entrance and exit through one direction-aware transition, tracking opening/open/closing state, marking the panel inert while it closes, and firing lifecycle callbacks","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/presence/Presence.svelte","type":"registry:ui","target":"fancy/presence/Presence.svelte"},{"path":"src/lib/fancy-ui/presence/index.ts","type":"registry:ui","target":"fancy/presence/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/presence"}},{"name":"pressable","type":"registry:ui","title":"Pressable","description":"A wrapper that gives any interactive child a consistent, cross-browser press animation — scale down on pointerdown/keydown, back to rest on release, with a static opacity fallback under reduced motion","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["buttons"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/pressable/Pressable.svelte","type":"registry:ui","target":"fancy/pressable/Pressable.svelte"},{"path":"src/lib/fancy-ui/pressable/index.ts","type":"registry:ui","target":"fancy/pressable/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/pressable"}},{"name":"prompt-suggestions","type":"registry:ui","title":"PromptSuggestions","description":"Row of prompt pills that cascade in after a reply lands, offering the user a next turn without composing one","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/prompt-suggestions/PromptSuggestions.svelte","type":"registry:ui","target":"fancy/prompt-suggestions/PromptSuggestions.svelte"},{"path":"src/lib/fancy-ui/prompt-suggestions/index.ts","type":"registry:ui","target":"fancy/prompt-suggestions/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/prompt-suggestions"}},{"name":"pulse-beam","type":"registry:ui","title":"PulseBeam","description":"Breathing border glow that wraps any card: colour blobs drift along the edges as a crisp 1px ring, a feathered inner glow and a blurred bloom, with slow hue rotation, fade in/out on an active flag, four palettes and an outside halo variant","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/pulse-beam/PulseBeam.svelte","type":"registry:ui","target":"fancy/pulse-beam/PulseBeam.svelte"},{"path":"src/lib/fancy-ui/pulse-beam/index.ts","type":"registry:ui","target":"fancy/pulse-beam/index.ts"},{"path":"src/lib/fancy-ui/pulse-beam/pulse-beam-data.ts","type":"registry:ui","target":"fancy/pulse-beam/pulse-beam-data.ts"},{"path":"src/lib/fancy-ui/pulse-beam/pulse-beam-loop.ts","type":"registry:ui","target":"fancy/pulse-beam/pulse-beam-loop.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/pulse-beam"}},{"name":"radio-group","type":"registry:ui","title":"RadioGroup","description":"A set of mutually exclusive options, built on real input type=radio elements sharing one name so the browser gives the roving tab stop and keyboard navigation for free.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/radio-group/RadioGroup.svelte","type":"registry:ui","target":"fancy/radio-group/RadioGroup.svelte"},{"path":"src/lib/fancy-ui/radio-group/RadioGroupItem.svelte","type":"registry:ui","target":"fancy/radio-group/RadioGroupItem.svelte"},{"path":"src/lib/fancy-ui/radio-group/index.ts","type":"registry:ui","target":"fancy/radio-group/index.ts"},{"path":"src/lib/fancy-ui/radio-group/types.ts","type":"registry:ui","target":"fancy/radio-group/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/radio-group"}},{"name":"rainbow-button","type":"registry:ui","title":"RainbowButton","description":"Animated button with a rainbow gradient border; on hover or focus a rainbow beam rides around the border with a soft halo. Other native attributes are forwarded to the rendered element","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["buttons"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/rainbow-button/RainbowButton.svelte","type":"registry:ui","target":"fancy/rainbow-button/RainbowButton.svelte"},{"path":"src/lib/fancy-ui/rainbow-button/index.ts","type":"registry:ui","target":"fancy/rainbow-button/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/rainbow-button"}},{"name":"reasoning-panel","type":"registry:ui","title":"ReasoningPanel","description":"Collapsible reasoning trace that streams while the model thinks, then folds itself into a one-line summary","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/reasoning-panel/ReasoningPanel.svelte","type":"registry:ui","target":"fancy/reasoning-panel/ReasoningPanel.svelte"},{"path":"src/lib/fancy-ui/reasoning-panel/index.ts","type":"registry:ui","target":"fancy/reasoning-panel/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/reasoning-panel"}},{"name":"recommendation-card","type":"registry:ui","title":"RecommendationCard","description":"An agent's proposal awaiting an answer: a kicker, the recommendation, a confidence figure counted up beside a ring that fills to match, and two buttons that collapse into one quiet resolved line","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/number-ticker.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/recommendation-card/RecommendationCard.svelte","type":"registry:ui","target":"fancy/recommendation-card/RecommendationCard.svelte"},{"path":"src/lib/fancy-ui/recommendation-card/index.ts","type":"registry:ui","target":"fancy/recommendation-card/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/recommendation-card"}},{"name":"reveal","type":"registry:ui","title":"Reveal","description":"Content-agnostic entrance animation triggered by scroll, mount, or a manual switch, with six directional/scale presets and an arbitrary-length JS-computed stagger for direct children","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/reveal/Reveal.svelte","type":"registry:ui","target":"fancy/reveal/Reveal.svelte"},{"path":"src/lib/fancy-ui/reveal/index.ts","type":"registry:ui","target":"fancy/reveal/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/reveal"}},{"name":"ripple","type":"registry:ui","title":"Ripple","description":"Set of concentric circles that pulse in a staggered wave, each ring larger, more transparent, and more delayed than the last, with the outermost ring rendered dashed to suggest a fading signal","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/ripple/Ripple.svelte","type":"registry:ui","target":"fancy/ripple/Ripple.svelte"},{"path":"src/lib/fancy-ui/ripple/index.ts","type":"registry:ui","target":"fancy/ripple/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/ripple"}},{"name":"ripple-button","type":"registry:ui","title":"RippleButton","description":"Button that answers each click with a ripple of light from the click point, a soft glow and two fine rings spreading out like a wave; on hover a glow follows the pointer with a faint ring pulsing from it","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["buttons"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/ripple-button/RippleButton.svelte","type":"registry:ui","target":"fancy/ripple-button/RippleButton.svelte"},{"path":"src/lib/fancy-ui/ripple-button/index.ts","type":"registry:ui","target":"fancy/ripple-button/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/ripple-button"}},{"name":"scroll-anchor","type":"registry:ui","title":"ScrollAnchor","description":"A scroll region that stays pinned to its last line while content streams in, lets go when the reader scrolls up, and floats a pill offering the way back down","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/scroll-anchor/ScrollAnchor.svelte","type":"registry:ui","target":"fancy/scroll-anchor/ScrollAnchor.svelte"},{"path":"src/lib/fancy-ui/scroll-anchor/index.ts","type":"registry:ui","target":"fancy/scroll-anchor/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/scroll-anchor"}},{"name":"scroll-progress","type":"registry:ui","title":"ScrollProgress","description":"Thin reading-progress bar that fills as the page — or a target element — scrolls, driven by a zero-JS CSS scroll-timeline where supported and a throttled scroll listener everywhere else, with an optional accessible progressbar label","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/scroll-progress/ScrollProgress.svelte","type":"registry:ui","target":"fancy/scroll-progress/ScrollProgress.svelte"},{"path":"src/lib/fancy-ui/scroll-progress/index.ts","type":"registry:ui","target":"fancy/scroll-progress/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/scroll-progress"}},{"name":"search-input","type":"registry:ui","title":"SearchInput","description":"A pill-shaped search field with a leading icon, a clear button once there's something to clear, and optional debounced search","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/search-input/SearchInput.svelte","type":"registry:ui","target":"fancy/search-input/SearchInput.svelte"},{"path":"src/lib/fancy-ui/search-input/index.ts","type":"registry:ui","target":"fancy/search-input/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/search-input"}},{"name":"select","type":"registry:ui","title":"Select","description":"A single-choice dropdown built on a real button and a portalled listbox panel, with full keyboard navigation, typeahead and focus that never leaves the trigger.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/select/Select.svelte","type":"registry:ui","target":"fancy/select/Select.svelte"},{"path":"src/lib/fancy-ui/select/SelectPanel.svelte","type":"registry:ui","target":"fancy/select/SelectPanel.svelte"},{"path":"src/lib/fancy-ui/select/index.ts","type":"registry:ui","target":"fancy/select/index.ts"},{"path":"src/lib/fancy-ui/select/types.ts","type":"registry:ui","target":"fancy/select/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/select"}},{"name":"sheet","type":"registry:ui","title":"Sheet","description":"A modal panel that slides in from an edge of the viewport, for settings, filters, or any focused task that doesn't need a full page","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["overlays"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/sheet/Sheet.svelte","type":"registry:ui","target":"fancy/sheet/Sheet.svelte"},{"path":"src/lib/fancy-ui/sheet/index.ts","type":"registry:ui","target":"fancy/sheet/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/sheet"}},{"name":"shimmer-button","type":"registry:ui","title":"ShimmerButton","description":"Pill button with a satin sheen: a soft band of light sweeps across the face and lifts the label, then rests; on hover the highlight follows the pointer","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["buttons"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/shimmer-button/ShimmerButton.svelte","type":"registry:ui","target":"fancy/shimmer-button/ShimmerButton.svelte"},{"path":"src/lib/fancy-ui/shimmer-button/index.ts","type":"registry:ui","target":"fancy/shimmer-button/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/shimmer-button"}},{"name":"sidebar","type":"registry:ui","title":"Sidebar","description":"A collapsible, grouped navigation rail with labelled sections, a current-item accent, and badges folded into each item's accessible name.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/sidebar/Sidebar.svelte","type":"registry:ui","target":"fancy/sidebar/Sidebar.svelte"},{"path":"src/lib/fancy-ui/sidebar/SidebarFooter.svelte","type":"registry:ui","target":"fancy/sidebar/SidebarFooter.svelte"},{"path":"src/lib/fancy-ui/sidebar/SidebarGroup.svelte","type":"registry:ui","target":"fancy/sidebar/SidebarGroup.svelte"},{"path":"src/lib/fancy-ui/sidebar/SidebarItem.svelte","type":"registry:ui","target":"fancy/sidebar/SidebarItem.svelte"},{"path":"src/lib/fancy-ui/sidebar/SidebarSeparator.svelte","type":"registry:ui","target":"fancy/sidebar/SidebarSeparator.svelte"},{"path":"src/lib/fancy-ui/sidebar/index.ts","type":"registry:ui","target":"fancy/sidebar/index.ts"},{"path":"src/lib/fancy-ui/sidebar/types.ts","type":"registry:ui","target":"fancy/sidebar/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/sidebar"}},{"name":"skeleton","type":"registry:ui","title":"Skeleton","description":"Placeholder bones — a block, one or more text lines, or a circular avatar — with a phase-synced shimmer sweep or opacity pulse, that swaps to real content once loading finishes while keeping aria-busy semantics correct throughout","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["feedback"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/skeleton/Skeleton.svelte","type":"registry:ui","target":"fancy/skeleton/Skeleton.svelte"},{"path":"src/lib/fancy-ui/skeleton/index.ts","type":"registry:ui","target":"fancy/skeleton/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/skeleton"}},{"name":"slider","type":"registry:ui","title":"Slider","description":"Restyled native range input with a purple-to-cyan gradient fill that tracks the current value and a glowing thumb","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/slider/Slider.svelte","type":"registry:ui","target":"fancy/slider/Slider.svelte"},{"path":"src/lib/fancy-ui/slider/index.ts","type":"registry:ui","target":"fancy/slider/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/slider"}},{"name":"smooth-cursor","type":"registry:ui","title":"SmoothCursor","description":"Multiplayer-style cursor: an upright coloured arrow with a white rim follows the pointer on a spring, and a name pill trails it on a softer spring and dims when idle.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/smooth-cursor/SmoothCursor.svelte","type":"registry:ui","target":"fancy/smooth-cursor/SmoothCursor.svelte"},{"path":"src/lib/fancy-ui/smooth-cursor/index.ts","type":"registry:ui","target":"fancy/smooth-cursor/index.ts"},{"path":"src/lib/fancy-ui/smooth-cursor/smooth-cursor-core.ts","type":"registry:ui","target":"fancy/smooth-cursor/smooth-cursor-core.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/smooth-cursor"}},{"name":"sound","type":"registry:lib","title":"Sound","description":"The opt-in interface sound engine, its themes, the sound action and toggle.","author":"fancy-ui <https://fancy-ui.rama.app>","registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/sound/SoundToggle.svelte","type":"registry:ui","target":"fancy/sound/SoundToggle.svelte"},{"path":"src/lib/fancy-ui/sound/engine.ts","type":"registry:ui","target":"fancy/sound/engine.ts"},{"path":"src/lib/fancy-ui/sound/index.ts","type":"registry:ui","target":"fancy/sound/index.ts"},{"path":"src/lib/fancy-ui/sound/sound-feedback.ts","type":"registry:ui","target":"fancy/sound/sound-feedback.ts"},{"path":"src/lib/fancy-ui/sound/sound.svelte.ts","type":"registry:ui","target":"fancy/sound/sound.svelte.ts"},{"path":"src/lib/fancy-ui/sound/themes.ts","type":"registry:ui","target":"fancy/sound/themes.ts"},{"path":"src/lib/fancy-ui/sound/types.ts","type":"registry:ui","target":"fancy/sound/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0"}},{"name":"sources","type":"registry:ui","title":"Sources","description":"The citations under an answer: a pill carrying a stack of domain monograms and a count, expanding into scannable source cards with title, host, and the line worth reading","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/sources/SourceCard.svelte","type":"registry:ui","target":"fancy/sources/SourceCard.svelte"},{"path":"src/lib/fancy-ui/sources/Sources.svelte","type":"registry:ui","target":"fancy/sources/Sources.svelte"},{"path":"src/lib/fancy-ui/sources/SourcesList.svelte","type":"registry:ui","target":"fancy/sources/SourcesList.svelte"},{"path":"src/lib/fancy-ui/sources/SourcesTrigger.svelte","type":"registry:ui","target":"fancy/sources/SourcesTrigger.svelte"},{"path":"src/lib/fancy-ui/sources/index.ts","type":"registry:ui","target":"fancy/sources/index.ts"},{"path":"src/lib/fancy-ui/sources/types.ts","type":"registry:ui","target":"fancy/sources/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/sources"}},{"name":"sparkles","type":"registry:ui","title":"Sparkles","description":"Canvas-based floating particle sparkle effect with configurable density and colors","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["backgrounds"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/sparkles/Sparkles.svelte","type":"registry:ui","target":"fancy/sparkles/Sparkles.svelte"},{"path":"src/lib/fancy-ui/sparkles/index.ts","type":"registry:ui","target":"fancy/sparkles/index.ts"},{"path":"src/lib/fancy-ui/sparkles/sparkles-core.ts","type":"registry:ui","target":"fancy/sparkles/sparkles-core.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/sparkles"}},{"name":"sparkles-text","type":"registry:ui","title":"SparklesText","description":"Text overlaid with small SVG star sparkles that scale, rotate, and fade in a continuous loop, each one regenerating at a random position once its lifespan expires, cycling between two configurable colors","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/sparkles-text/SparklesText.svelte","type":"registry:ui","target":"fancy/sparkles-text/SparklesText.svelte"},{"path":"src/lib/fancy-ui/sparkles-text/index.ts","type":"registry:ui","target":"fancy/sparkles-text/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/sparkles-text"}},{"name":"status-morph","type":"registry:ui","title":"StatusMorph","description":"A 1em SVG status icon that morphs between idle, loading, success, and error, closing its spinning ring into a drawn check or cross with a portalled live region announcing each state","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["feedback"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/status-morph/StatusMorph.svelte","type":"registry:ui","target":"fancy/status-morph/StatusMorph.svelte"},{"path":"src/lib/fancy-ui/status-morph/index.ts","type":"registry:ui","target":"fancy/status-morph/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/status-morph"}},{"name":"stepper","type":"registry:ui","title":"Stepper","description":"A multi-step progress indicator on light rails: each completed step sends a single sweep of light down the rail to the next, the current bullet breathes a soft halo, and each check draws itself.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/stepper/Step.svelte","type":"registry:ui","target":"fancy/stepper/Step.svelte"},{"path":"src/lib/fancy-ui/stepper/Stepper.svelte","type":"registry:ui","target":"fancy/stepper/Stepper.svelte"},{"path":"src/lib/fancy-ui/stepper/index.ts","type":"registry:ui","target":"fancy/stepper/index.ts"},{"path":"src/lib/fancy-ui/stepper/types.ts","type":"registry:ui","target":"fancy/stepper/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/stepper"}},{"name":"sticky-scroll","type":"registry:ui","title":"StickyScroll","description":"Two-column scroll narrative with a scrolling item list and a sticky panel that swaps its content to the item centred in view, stacking to a single top-sticky panel over the items on narrow containers","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["layout"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/sticky-scroll/StickyScroll.svelte","type":"registry:ui","target":"fancy/sticky-scroll/StickyScroll.svelte"},{"path":"src/lib/fancy-ui/sticky-scroll/index.ts","type":"registry:ui","target":"fancy/sticky-scroll/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/sticky-scroll"}},{"name":"story-thread","type":"registry:ui","title":"StoryThread","description":"A narrative thread for scroll stories: the page pans sideways through your sections while a dotted line draws itself from node to node, a glowing head rides its tip, nodes light up as it reaches them, and segments can fork and meet again.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/story-thread/StoryNode.svelte","type":"registry:ui","target":"fancy/story-thread/StoryNode.svelte"},{"path":"src/lib/fancy-ui/story-thread/StoryThread.svelte","type":"registry:ui","target":"fancy/story-thread/StoryThread.svelte"},{"path":"src/lib/fancy-ui/story-thread/index.ts","type":"registry:ui","target":"fancy/story-thread/index.ts"},{"path":"src/lib/fancy-ui/story-thread/story-thread-core.ts","type":"registry:ui","target":"fancy/story-thread/story-thread-core.ts"},{"path":"src/lib/fancy-ui/story-thread/types.ts","type":"registry:ui","target":"fancy/story-thread/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/story-thread"}},{"name":"streaming-text","type":"registry:ui","title":"StreamingText","description":"Renders a growing string as a live token stream: the appended delta lands tinted and settles, with an optional block cursor while the response is in flight","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json"],"files":[{"path":"src/lib/fancy-ui/streaming-text/StreamingText.svelte","type":"registry:ui","target":"fancy/streaming-text/StreamingText.svelte"},{"path":"src/lib/fancy-ui/streaming-text/index.ts","type":"registry:ui","target":"fancy/streaming-text/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/streaming-text"}},{"name":"subagent-list","type":"registry:ui","title":"SubagentList","description":"Fan-out panel for parallel workers: one row per delegated agent with its status dot, model badge, task, and its own progress bar","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/subagent-list/SubagentList.svelte","type":"registry:ui","target":"fancy/subagent-list/SubagentList.svelte"},{"path":"src/lib/fancy-ui/subagent-list/index.ts","type":"registry:ui","target":"fancy/subagent-list/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/subagent-list"}},{"name":"sun-switch","type":"registry:ui","title":"SunSwitch","description":"A theme switch drawn as a pixel sun. Hover it for a lens on its true colours; click it and the new theme spreads from the sun in a dithered, grid-aligned wave.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["buttons"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/sun-switch/SunSwitch.svelte","type":"registry:ui","target":"fancy/sun-switch/SunSwitch.svelte"},{"path":"src/lib/fancy-ui/sun-switch/index.ts","type":"registry:ui","target":"fancy/sun-switch/index.ts"},{"path":"src/lib/fancy-ui/sun-switch/pixel-wave-core.ts","type":"registry:ui","target":"fancy/sun-switch/pixel-wave-core.ts"},{"path":"src/lib/fancy-ui/sun-switch/sun-switch-core.ts","type":"registry:ui","target":"fancy/sun-switch/sun-switch-core.ts"},{"path":"src/lib/fancy-ui/sun-switch/sun-switch-hdr.ts","type":"registry:ui","target":"fancy/sun-switch/sun-switch-hdr.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/sun-switch"}},{"name":"switch","type":"registry:ui","title":"Switch","description":"A sliding on/off control that takes effect immediately, built on a native checkbox input","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/switch/Switch.svelte","type":"registry:ui","target":"fancy/switch/Switch.svelte"},{"path":"src/lib/fancy-ui/switch/index.ts","type":"registry:ui","target":"fancy/switch/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/switch"}},{"name":"tabs","type":"registry:ui","title":"Tabs","description":"A tablist compound with roving-tabindex keyboard navigation, automatic or manual activation, and an accent-underline or segmented visual style.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/tabs/Tabs.svelte","type":"registry:ui","target":"fancy/tabs/Tabs.svelte"},{"path":"src/lib/fancy-ui/tabs/TabsContent.svelte","type":"registry:ui","target":"fancy/tabs/TabsContent.svelte"},{"path":"src/lib/fancy-ui/tabs/TabsList.svelte","type":"registry:ui","target":"fancy/tabs/TabsList.svelte"},{"path":"src/lib/fancy-ui/tabs/TabsTrigger.svelte","type":"registry:ui","target":"fancy/tabs/TabsTrigger.svelte"},{"path":"src/lib/fancy-ui/tabs/index.ts","type":"registry:ui","target":"fancy/tabs/index.ts"},{"path":"src/lib/fancy-ui/tabs/types.ts","type":"registry:ui","target":"fancy/tabs/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/tabs"}},{"name":"terminal-block","type":"registry:ui","title":"TerminalBlock","description":"Live command transcript: the prompt line, output as it streams in with its ANSI colours read, a block cursor while it runs, and an exit-status footer when it stops","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json"],"files":[{"path":"src/lib/fancy-ui/terminal-block/TerminalBlock.svelte","type":"registry:ui","target":"fancy/terminal-block/TerminalBlock.svelte"},{"path":"src/lib/fancy-ui/terminal-block/ansi.ts","type":"registry:ui","target":"fancy/terminal-block/ansi.ts"},{"path":"src/lib/fancy-ui/terminal-block/index.ts","type":"registry:ui","target":"fancy/terminal-block/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/terminal-block"}},{"name":"terminal-text","type":"registry:ui","title":"TerminalText","description":"Terminal-style text streamer with per-character animation, blinking cursor, and glitch effect","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/terminal-text/TerminalText.svelte","type":"registry:ui","target":"fancy/terminal-text/TerminalText.svelte"},{"path":"src/lib/fancy-ui/terminal-text/index.ts","type":"registry:ui","target":"fancy/terminal-text/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/terminal-text"}},{"name":"text-generate-effect","type":"registry:ui","title":"TextGenerateEffect","description":"Typewriter-style text reveal that fades in words one by one with optional blur","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/text-generate-effect/TextGenerateEffect.svelte","type":"registry:ui","target":"fancy/text-generate-effect/TextGenerateEffect.svelte"},{"path":"src/lib/fancy-ui/text-generate-effect/index.ts","type":"registry:ui","target":"fancy/text-generate-effect/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/text-generate-effect"}},{"name":"text-reveal-card","type":"registry:ui","title":"TextRevealCard","description":"Card that reveals text on horizontal mouse drag with animated star particles","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["cards"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/text-reveal-card/TextRevealCard.svelte","type":"registry:ui","target":"fancy/text-reveal-card/TextRevealCard.svelte"},{"path":"src/lib/fancy-ui/text-reveal-card/TextRevealStars.svelte","type":"registry:ui","target":"fancy/text-reveal-card/TextRevealStars.svelte"},{"path":"src/lib/fancy-ui/text-reveal-card/index.ts","type":"registry:ui","target":"fancy/text-reveal-card/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/text-reveal-card"}},{"name":"text-roll","type":"registry:ui","title":"TextRoll","description":"Single-line text that rolls to its new value per grapheme, odometer-style, whenever the value prop changes — while the real, unsplit text stays selectable and readable","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["text"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/text-roll/TextRoll.svelte","type":"registry:ui","target":"fancy/text-roll/TextRoll.svelte"},{"path":"src/lib/fancy-ui/text-roll/index.ts","type":"registry:ui","target":"fancy/text-roll/index.ts"},{"path":"src/lib/fancy-ui/text-roll/roll-transitions.ts","type":"registry:ui","target":"fancy/text-roll/roll-transitions.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/text-roll"}},{"name":"textarea","type":"registry:ui","title":"Textarea","description":"A multi-line text field with an optional live character counter and auto-growing height, built on a native textarea","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json"],"files":[{"path":"src/lib/fancy-ui/textarea/Textarea.svelte","type":"registry:ui","target":"fancy/textarea/Textarea.svelte"},{"path":"src/lib/fancy-ui/textarea/index.ts","type":"registry:ui","target":"fancy/textarea/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/textarea"}},{"name":"thinking-indicator","type":"registry:ui","title":"ThinkingIndicator","description":"Live agent status line with a shimmering activity label and an elapsed timer, as a bare inline row or a bordered status pill","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json"],"files":[{"path":"src/lib/fancy-ui/thinking-indicator/ThinkingIndicator.svelte","type":"registry:ui","target":"fancy/thinking-indicator/ThinkingIndicator.svelte"},{"path":"src/lib/fancy-ui/thinking-indicator/index.ts","type":"registry:ui","target":"fancy/thinking-indicator/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/thinking-indicator"}},{"name":"thread-list","type":"registry:ui","title":"ThreadList","description":"Conversation history for a chat sidebar: one row per thread with an unread dot, its last message, and a relative timestamp, plus selection and per-row delete","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/thread-list/ThreadList.svelte","type":"registry:ui","target":"fancy/thread-list/ThreadList.svelte"},{"path":"src/lib/fancy-ui/thread-list/index.ts","type":"registry:ui","target":"fancy/thread-list/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/thread-list"}},{"name":"tick-nav","type":"registry:ui","title":"TickNav","description":"A navigation list on a ruler of tick marks: every line the pointer crosses plucks like a string, neighbouring lines and ticks stretch and light up on springs, and an optional preview card follows the pointer.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/tick-nav/TickNav.svelte","type":"registry:ui","target":"fancy/tick-nav/TickNav.svelte"},{"path":"src/lib/fancy-ui/tick-nav/index.ts","type":"registry:ui","target":"fancy/tick-nav/index.ts"},{"path":"src/lib/fancy-ui/tick-nav/tick-nav-core.ts","type":"registry:ui","target":"fancy/tick-nav/tick-nav-core.ts"},{"path":"src/lib/fancy-ui/tick-nav/tick-nav-hdr.ts","type":"registry:ui","target":"fancy/tick-nav/tick-nav-hdr.ts"},{"path":"src/lib/fancy-ui/tick-nav/types.ts","type":"registry:ui","target":"fancy/tick-nav/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/tick-nav"}},{"name":"time-picker","type":"registry:ui","title":"TimePicker","description":"A field that opens a floating listbox of time slots generated at a configurable step, fully keyboard-navigable, with the highlighted slot always scrolled into view.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["forms"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/time-picker/TimePicker.svelte","type":"registry:ui","target":"fancy/time-picker/TimePicker.svelte"},{"path":"src/lib/fancy-ui/time-picker/TimePickerPanel.svelte","type":"registry:ui","target":"fancy/time-picker/TimePickerPanel.svelte"},{"path":"src/lib/fancy-ui/time-picker/index.ts","type":"registry:ui","target":"fancy/time-picker/index.ts"},{"path":"src/lib/fancy-ui/time-picker/time-utils.ts","type":"registry:ui","target":"fancy/time-picker/time-utils.ts"},{"path":"src/lib/fancy-ui/time-picker/types.ts","type":"registry:ui","target":"fancy/time-picker/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/time-picker"}},{"name":"timeline","type":"registry:ui","title":"Timeline","description":"Vertical timeline drawn as a light rail: a glowing head travels a hairline track as you scroll, leaving a soft trail and igniting each entry's dot as it arrives.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["navigation"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/timeline/Timeline.svelte","type":"registry:ui","target":"fancy/timeline/Timeline.svelte"},{"path":"src/lib/fancy-ui/timeline/index.ts","type":"registry:ui","target":"fancy/timeline/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/timeline"}},{"name":"toast","type":"registry:ui","title":"Toast","description":"A notification system: call toast() from anywhere to queue one, mount <Toaster /> once to render the stack — success, error, info and loading variants, an optional action, and accessible live-region announcements","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["overlays"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/toast/Toast.svelte","type":"registry:ui","target":"fancy/toast/Toast.svelte"},{"path":"src/lib/fancy-ui/toast/Toaster.svelte","type":"registry:ui","target":"fancy/toast/Toaster.svelte"},{"path":"src/lib/fancy-ui/toast/index.ts","type":"registry:ui","target":"fancy/toast/index.ts"},{"path":"src/lib/fancy-ui/toast/store.svelte.ts","type":"registry:ui","target":"fancy/toast/store.svelte.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/toast"}},{"name":"toggle","type":"registry:ui","title":"Toggle","description":"Two-state button carrying aria-pressed, for a single on/off option like a formatting mark or a filter","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["actions"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/toggle/Toggle.svelte","type":"registry:ui","target":"fancy/toggle/Toggle.svelte"},{"path":"src/lib/fancy-ui/toggle/index.ts","type":"registry:ui","target":"fancy/toggle/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/toggle"}},{"name":"toggle-group","type":"registry:ui","title":"ToggleGroup","description":"A segmented row of toggle buttons with roving-tabindex keyboard navigation and single or multiple selection.","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["actions"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/toggle-group/ToggleGroup.svelte","type":"registry:ui","target":"fancy/toggle-group/ToggleGroup.svelte"},{"path":"src/lib/fancy-ui/toggle-group/ToggleGroupItem.svelte","type":"registry:ui","target":"fancy/toggle-group/ToggleGroupItem.svelte"},{"path":"src/lib/fancy-ui/toggle-group/index.ts","type":"registry:ui","target":"fancy/toggle-group/index.ts"},{"path":"src/lib/fancy-ui/toggle-group/types.ts","type":"registry:ui","target":"fancy/toggle-group/types.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/toggle-group"}},{"name":"tool-call","type":"registry:ui","title":"ToolCall","description":"One tool invocation in a disclosure card: status dot, tool name, duration, and the request and result payloads pretty-printed on expand","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/tool-call/ToolCall.svelte","type":"registry:ui","target":"fancy/tool-call/ToolCall.svelte"},{"path":"src/lib/fancy-ui/tool-call/index.ts","type":"registry:ui","target":"fancy/tool-call/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/tool-call"}},{"name":"tool-timeline","type":"registry:ui","title":"ToolTimeline","description":"Compact session summary of an agent's tool calls: one row per action on a vertical rail, with the target it touched, its diff stats, and when it ran","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-agents"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/tool-timeline/ToolTimeline.svelte","type":"registry:ui","target":"fancy/tool-timeline/ToolTimeline.svelte"},{"path":"src/lib/fancy-ui/tool-timeline/index.ts","type":"registry:ui","target":"fancy/tool-timeline/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/tool-timeline"}},{"name":"tooltip","type":"registry:ui","title":"Tooltip","description":"A small anchored label that explains a control on hover or focus — plain text only, never interactive content","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["overlays"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/tooltip/Tooltip.svelte","type":"registry:ui","target":"fancy/tooltip/Tooltip.svelte"},{"path":"src/lib/fancy-ui/tooltip/index.ts","type":"registry:ui","target":"fancy/tooltip/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/tooltip"}},{"name":"tracing-beam","type":"registry:ui","title":"TracingBeam","description":"A reading lamp on a rail beside long-form content: it trails the reader's eye on a spring, leaves what has been read softly lit, and ticks off each heading as it passes","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["effects"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/internals-motion.json"],"files":[{"path":"src/lib/fancy-ui/tracing-beam/TracingBeam.svelte","type":"registry:ui","target":"fancy/tracing-beam/TracingBeam.svelte"},{"path":"src/lib/fancy-ui/tracing-beam/index.ts","type":"registry:ui","target":"fancy/tracing-beam/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/tracing-beam"}},{"name":"typing-indicator","type":"registry:ui","title":"TypingIndicator","description":"Animated three-dot presence indicator with a staggered CSS wave, tuned to signal activity without pulling focus","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":[],"files":[{"path":"src/lib/fancy-ui/typing-indicator/TypingIndicator.svelte","type":"registry:ui","target":"fancy/typing-indicator/TypingIndicator.svelte"},{"path":"src/lib/fancy-ui/typing-indicator/index.ts","type":"registry:ui","target":"fancy/typing-indicator/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/typing-indicator"}},{"name":"voice-input","type":"registry:ui","title":"VoiceInput","description":"A mic button that opens into a recording panel: a live waveform painted from amplitude levels you supply, a stopwatch, the transcript as it arrives, and a cross and a check to throw it away or keep it","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/voice-input/VoiceInput.svelte","type":"registry:ui","target":"fancy/voice-input/VoiceInput.svelte"},{"path":"src/lib/fancy-ui/voice-input/index.ts","type":"registry:ui","target":"fancy/voice-input/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/voice-input"}},{"name":"web-search","type":"registry:ui","title":"WebSearch","description":"A search the agent ran: the query in a search-bar header, an indeterminate scanning bar while it runs, and results that land one row at a time","author":"fancy-ui <https://fancy-ui.rama.app>","categories":["ai-chat"],"registryDependencies":["https://fancy-ui.rama.app/r/svelte/internals.json","https://fancy-ui.rama.app/r/svelte/sound.json"],"files":[{"path":"src/lib/fancy-ui/web-search/WebSearch.svelte","type":"registry:ui","target":"fancy/web-search/WebSearch.svelte"},{"path":"src/lib/fancy-ui/web-search/index.ts","type":"registry:ui","target":"fancy/web-search/index.ts"}],"meta":{"license":"MIT","package":"fancy-ui-svelte","version":"0.18.0","source":"https://fancy-ui.rama.app/docs/components/web-search"}}]}