Logo Cloud 3
smoothui-registry/logo-cloud-3FreeBlock
Infinite scrolling logo marquee
Install it
npx shadcn@latest add https://www.smoothui.dev/r/logo-cloud-3.jsonSource
1"use client";23import type React from "react";4import {5 Canpoy,6 Canva,7 Casetext,8 Clearbit,9 Descript,10 Duolingo,11 Faire,12 Strava,13} from "@/components/smoothui/shared";1415export interface LogoMarqueeProps {16 description?: string;17 direction?: "left" | "right";18 logos?: Array<{19 name: string;20 logo: React.ReactNode;21 }>;22 pauseOnHover?: boolean;23 speed?: "slow" | "normal" | "fast";24 title?: string;25}2627const DEFAULT_LOGOS = [28 { logo: <Canpoy />, name: "Canpoy" },29 { logo: <Canva />, name: "Canva" },30 { logo: <Casetext />, name: "Casetext" },31 { logo: <Strava />, name: "Strava" },32 { logo: <Descript />, name: "Descript" },33 { logo: <Duolingo />, name: "Duolingo" },34 { logo: <Faire />, name: "Faire" },35 { logo: <Clearbit />, name: "Clearbit" },36];3738const SPEED_MAP = {39 fast: "20s",40 normal: "40s",41 slow: "60s",42};4344export function LogoMarquee({45 title = "Trusted by industry leaders",46 description = "Join thousands of companies already using our platform",47 logos = DEFAULT_LOGOS,48 speed = "normal",49 direction = "left",50 pauseOnHover = true,51}: LogoMarqueeProps) {52 const animationDuration = SPEED_MAP[speed];53 const animationDirection = direction === "right" ? "reverse" : "normal";5455 return (56 <section className="overflow-hidden py-20">57 <style>58 {`59 @keyframes marquee-scroll {60 from {61 transform: translateX(0);62 }63 to {64 transform: translateX(-50%);65 }66 }6768 .marquee-track {69 animation: marquee-scroll var(--marquee-duration, 40s) linear infinite;70 animation-direction: var(--marquee-direction, normal);71 }7273 .marquee-container:hover .marquee-track {74 animation-play-state: var(--marquee-pause-on-hover, running);75 }7677 @media (prefers-reduced-motion: reduce) {78 .marquee-track {79 animation: none;80 }81 }82 `}83 </style>84 <div className="mx-auto max-w-7xl px-6">85 <div className="mb-12 text-center">86 <h2 className="mb-4 font-bold text-2xl text-foreground lg:text-3xl">87 {title}88 </h2>89 <p className="text-foreground/70 text-lg">{description}</p>90 </div>9192 <div93 className="marquee-container relative overflow-hidden"94 style={{95 maskImage:96// … truncated
What it pulls in
Other registry items
Files it writes
More from SmoothUI Registry
All 178 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Chat Templatechat-template | SmoothUI Registry | Blocks | Free | 2 deps · 4 files | |
| Cta 1cta-1 | SmoothUI Registry | Blocks | Free | 1 dep | |
| Cta 2cta-2 | SmoothUI Registry | Blocks | Free | 1 dep | |
| Cta 3cta-3 | SmoothUI Registry | Blocks | Free | 1 dep | |
| Faq 1faq-1 | SmoothUI Registry | Blocks | Free | 2 deps | |
| Faq 2faq-2 | SmoothUI Registry | Blocks | Free | 1 dep | |
| Faq 3faq-3 | SmoothUI Registry | Blocks | Free | 2 deps | |
| Faq 4faq-4 | SmoothUI Registry | Blocks | Free | 2 deps |
