About Statement Card

(Our studio)

Auralis

We're Auralis — an independent design studio shaping calm, confident brands and the products that carry them far beyond launch day.

(The teams we build alongside)
LogoipsumLogoipsumLogoipsumLogoipsumLogoipsumLogoipsumLogoipsumLogoipsumLogoipsumLogoipsumLogoipsumLogoipsum

12yr

Designing alongside founders since 2014.

140+

Brands taken from first sketch to launch.

30

Industry honors for our craft and care.

96%

Of clients return for the next chapter.

About this block

About Statement CardPRO

About section on a soft muted card with a monospace parenthetical eyebrow, a bold studio wordmark, a large centered statement, a logos strip, and a four-column stats band.

About58: About Statement Card

About section housed entirely inside one soft muted card: a monospace parenthetical eyebrow, a bold studio wordmark, a large centered statement, an auto-scrolling logo marquee, and a four-column stats band.

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Upgrade Now

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

Radix flavor

bash
npx shadcn add "https://ui.beste.co/r/about58?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/about58?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/about58.tsx, the badge7 component it uses for the eyebrow and the logos caption, and its dependencies.

Quick start

The installed file exports about58Demo alongside the block: the exact props behind the preview above. Spread it to get a working section in one line.

tsx
import { About58, about58Demo } from "@/components/beste/block/about58";

export default function Page() {
  return <About58 {...about58Demo} />;
}

Then replace the demo with your own props. Written out, the same setup looks like this:

tsx
import { About58 } from "@/components/beste/block/about58";

export default function Page() {
  return (
    <About58
      badge={{ label: "Our studio" }}
      labels={{ logosCaption: "The teams we build alongside" }}
      wordmark="Auralis"
      heading="We're Auralis, an independent design studio shaping <strong>calm, confident brands.</strong>"
      logos={[
        { src: "https://oud.pics/sm/l/logoipsum-380.png", alt: "Logoipsum" },
        { src: "https://oud.pics/sm/l/logoipsum-388.png", alt: "Logoipsum" },
        { src: "https://oud.pics/sm/l/logoipsum-395.png", alt: "Logoipsum" },
      ]}
      stats={[
        { value: "12yr", title: "Designing alongside founders since 2014." },
        { value: "140+", title: "Brands taken from first sketch to launch." },
        { value: "30", title: "Industry honors for our craft and care." },
        { value: "96%", title: "Of clients return for the next chapter." },
      ]}
    />
  );
}

Props

PropTypeDefaultDescription
badge{ label: string }Top eyebrow rendered in a Badge7
labelsAbout58Labels{}Optional string overrides; currently just logosCaption
wordmarkstringLarge studio wordmark below the eyebrow
headingstringCentered statement; supports inline HTML (<strong>, entities)
logosLogoItem[][]Logos rendered in the auto-scrolling marquee
statsStatItem[][]Four-column stats band at the bottom
classNamestringExtra classes for the outer <section>
ts
type About58Labels = { logosCaption?: string };
type LogoItem = { src: string; alt: string };
type StatItem = { value: string; title: string };

Behavior notes

  • The logo strip auto-scrolls via a CSS keyframe animation (about58-marquee, 30s, linear, infinite) declared in a scoped <style jsx> block; logos is rendered twice back-to-back ([...logos, ...logos]) to make the loop seamless.
  • Hovering the logo strip pauses the marquee (animation-play-state: paused) through the named group group/about58.
  • Gradient fades on the left and right edges of the marquee blend the scrolling logos into the surrounding bg-muted card so the loop point isn't a hard crop.
  • The stats band is fixed at grid-cols-2 md:grid-cols-4, independent of stats.length; fewer than four stats leaves visible empty cells rather than reflowing.
  • The eyebrow, wordmark, statement, logos, and stats all live inside a single rounded-md bg-muted card that wraps the entire section content, rather than sitting directly on the page background.

More About blocks

View all About
PRO

about42

Framed Studio Card

About composed inside a bordered studio card with header marks, portrait and a stats strip.

PRO

about59

About Statement With Pillars

Centered parenthetical eyebrow and a large statement heading, followed by a three-up row of icon pillars pairing a circular icon with a title and one-line description.

PRO

about39

Numeral About

About anchored by an oversized numeral with a paragraph and a horizontal image strip.

PRO

about46

About Strip

An about intro followed by a horizontally scrollable strip mixing image, stat, quote and values cards.

PRO

about74

Philosophy Statement

An about section that opens on a serif statement settling in word by word, then pairs a portrait photograph drifting inside its frame with two paragraphs, a pill action and a ruled list of principles.

PRO

about33

About With Stats Band

About section with an eyebrow label and read-more action on the left, a bold heading with two side-by-side images on the right, and a four-column stats band below.