1 звезда на GitHub = 1 новый компонент.

Поставить звезду
Логотипы партнеров

Logo Cloud Section

Секция доверия с бегущей строкой логотипов партнеров, клиентов и спонсоров проекта.

sectionslogospartnerscloudsocial-proof
Живое превью

POWERING FORWARD-THINKING WEB PROJECTS

▲Vercel
☁Cloudflare
⚡Supabase
≋TailwindCSS
◈Netlify
⚓Docker

Использование

Скопируйте и вставьте этот код в ваш React-компонент:

tsx
import { LogoCloudSection } from 'react-component-kit-ui/sections';

<LogoCloudSection />

Ручная установка

Если вы не используете пакет npm, создайте файл и вставьте следующий код: src/components/sections/LogoCloudSection.tsx + LogoCloudSection.css:

LogoCloudSection.tsx
'use client';

import './LogoCloudSection.css';

/**
 * LogoCloudSection — High-trust partner and client brand wall with monochrome glass badges.
 * 
 * @param {string} title - Section headline. Default is 'TRUSTED BY MODERN TECH STACKS'.
 * @param {Array<{name: string, symbol: string}>} logos - Partner entries list.
 */
export interface LogoCloudSectionProps {
  title?: string;
  logos?: Array<{ name: string; symbol: string }>;
}

export function LogoCloudSection({
  title = 'POWERING FORWARD-THINKING WEB PROJECTS',
  logos = [
    { name: 'Vercel', symbol: '▲' },
    { name: 'Cloudflare', symbol: '☁' },
    { name: 'Supabase', symbol: '⚡' },
    { name: 'TailwindCSS', symbol: '≋' },
    { name: 'Netlify', symbol: '◈' },
    { name: 'Docker', symbol: '⚓' },
  ],
}: LogoCloudSectionProps) {
  return (
    <>
      <section className="logo-cloud" data-rk-b88031="">
        <div className="logo-cloud__inner" data-rk-b88031="">
          <p className="logo-cloud__title" data-rk-b88031="">{title}</p>
          <div className="logo-cloud__grid" data-rk-b88031="">
            {logos.map((logo, __i: number) => (
              <div key={__i} className="logo-badge" data-rk-b88031="">
                <span className="logo-badge__symbol" data-rk-b88031="">{logo.symbol}</span>
                <span className="logo-badge__name" data-rk-b88031="">{logo.name}</span>
              </div>
            ))}
          </div>
        </div>
      </section>
    </>
  );
}

export default LogoCloudSection;
LogoCloudSection.css
/* LogoCloudSection — ported from astro-component-kit (sections/LogoCloudSection.astro) */

.logo-cloud:where([data-rk-b88031]) {
  padding: var(--sp-8, 2rem) var(--sp-6, 1.5rem);
  width: 100%;
  font-family: var(--font-sans, system-ui, sans-serif);
}

.logo-cloud__inner:where([data-rk-b88031]) {
  max-width: 1100px;
  margin: 0 auto;
  text-align: center;
}

.logo-cloud__title:where([data-rk-b88031]) {
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: var(--c-text-3, #737373);
  text-transform: uppercase;
  margin-bottom: 1.5rem;
}

.logo-cloud__grid:where([data-rk-b88031]) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

.logo-badge:where([data-rk-b88031]) {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0.65rem 1.4rem;
  background: rgb(var(--ink-rgb, 255 255 255) / 0.02);
  backdrop-filter: blur(12px);
  border: 1px solid rgb(var(--ink-rgb, 255 255 255) / 0.06);
  border-radius: var(--r-full, 9999px);
  color: var(--c-text-2, #a3a3a3);
  font-size: 0.88rem;
  font-weight: 700;
  transition: all 0.25s ease;
}

.logo-badge:hover:where([data-rk-b88031]) {
  color: var(--c-text-1, #ffffff);
  background: rgb(var(--ink-rgb, 255 255 255) / 0.06);
  border-color: color-mix(in srgb, var(--c-primary, #b8860b) 40%, transparent);
  transform: translateY(-2px);
}

.logo-badge__symbol:where([data-rk-b88031]) {
  font-size: 1.1rem;
  color: var(--c-primary-light, #d4a017);
}