Skip to component
GGamma

Logo loop

A seamless, pausable strip of wordmarks with a soft edge fade.

New

In the loop

A continuous strip of the studios and tools in this release.

  • Fieldnotes
  • Northstar
  • Slate
  • Arc
  • Lumen
  • Workshop
Live previewUse keyboard to interact

Implementation

1"use client";2 3import { useState, type CSSProperties, type HTMLAttributes } from "react";4import { Pause, Play } from "lucide-react";5 6export type LogoLoopItem = {7  id: string;8  label: string;9};10 11export type LogoLoopProps = Omit<HTMLAttributes<HTMLDivElement>, "children"> & {12  /** Wordmarks repeated in the strip. */13  items: readonly LogoLoopItem[];14  /** Accessible name for the visible wordmark list. */15  label?: string;16  /** Seconds for one full pass. */17  duration?: number;18  /** Additional class name for the root. */19  className?: string;20};21 22/**23 * A seamless wordmark strip that repeats its visible group for the loop. The24 * strip pauses on hover or focus, and the control gives keyboard and touch25 * users an explicit pause/resume action. Reduced motion shows a static list.26 */27export function LogoLoop({28  items,