Founder Letter

Portrait of the founder

A letter from the founder

IstartedthispracticebecauseIcouldnotfindoneIwantedtositin.

Every room I visited was either a clinic or a sales pitch. The clinics were kind but had the warmth of a corridor. The others promised transformation in six sessions and had a payment plan for it.

I wanted something in between: a room that felt like someone's home, run by people who had done the long training, where the only promise was that you would be listened to all the way through.

Seven years on, that is still the whole plan. We have added two chairs, an evening practice and a Friday walk. We have not added a slogan.

Julia Jacklin

Founder, Altair

Come and sit in it
About this block

Founder LetterPRO

An about section written as a letter: a portrait drifting inside its frame on the left, and on the right a serif opening line that settles in word by word, three paragraphs, a ruled signature with the founder's name and role, and a sliding-marker pill.

About79: Founder Letter

A founder letter: an opening line that settles in word by word above the body paragraphs, a portrait drifting inside its frame beside it, and a ruled foot carrying the signature on one side and a pill action on the other.

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/about79?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

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

This installs the block to components/beste/block/about79.tsx plus the button22 sliding-marker pill and the text1 word stagger it uses.

Quick start

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

tsx
import { About79, about79Demo } from "@/components/beste/block/about79";

export default function Page() {
  return <About79 {...about79Demo} />;
}

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

tsx
import { About79 } from "@/components/beste/block/about79";

export default function Page() {
  return (
    <About79
      eyebrow="A letter from the founder"
      lead="I started this practice because I could not find one I wanted to sit in."
      paragraphs={[
        "Every room I visited was either a clinic or a sales pitch.",
        "I wanted something in between, run by people who had done the long training.",
      ]}
      signature={{ name: "Julia Jacklin", role: "Founder" }}
      button={{ label: "Come and sit in it", href: "/visit", tone: "dark" }}
      image={{ src: "/team/julia.jpg", alt: "Portrait of the founder" }}
    />
  );
}

Props

PropTypeDefaultDescription
eyebrowstringSmall-caps line above the letter
leadstringOpening line, set larger and rendered through Text1
paragraphsstring[][]Body copy, one <p> per entry
signature{ name: string; role: string }Name and role in the ruled foot
buttonActionButtonPill action opposite the signature
image{ src: string; alt: string }Portrait in the left column
classNamestringExtra classes for the outer <section>
ts
type ActionButton = {
  label: string;
  href: string;
  tone?: "primary" | "light" | "dark" | "outline";
};

Behavior notes

  • The lead runs through Text1 with a tightened stagger of 0.04s, faster than the component's own default, because a sentence this long would otherwise still be assembling itself by the time the reader has moved on.
  • The paragraphs wait on 0.3 + lead.split(" ").length * 0.04, the same arithmetic the stagger uses, so the body arrives exactly as the last word of the lead lands however long that sentence is.
  • The lead is a p, not a heading. It is the opening sentence of a letter, and promoting it to an h2 would put a full sentence into the page outline.
  • The portrait drifts a short -8% to 8% against a 1.18 scale. A face reads as unstable when it travels as far as a landscape band does.
  • The photograph starts at blur(24px) and clears on decode, with a complete check on mount so a cached image is not left blurred waiting for an event that already fired.
  • The foot is one border-t row that stacks below sm and splits to justify-between above it, so the signature and the action never crowd each other on a phone.
  • The whole foot is skipped when neither signature nor button is given, so the letter ends on its last paragraph without a stray rule.

More About blocks

View all About
PRO

about71

Founders' Letter

A long-form company letter set in a wide reading column with an accent-ruled pull quote and signed off by avatar bylines, beside a narrower column of captioned portraits.

PRO

about67

Founder Statement

Founder statement with a large blockquote followed by an avatar, name, role, and a monospace signature line.

PRO

about15

Letter from the CEO

Editorial-style open letter with paragraphs, a personal signature with avatar, and a call-to-action. Great for founder stories.

PRO

about78

Manifesto Lines

A manifesto set as numbered serif lines that each blur in as they reach the viewport, ruled from one another, beside a sticky photograph that drifts inside its frame as the page scrolls, closed by a sliding-marker pill.

PRO

about45

Founder Quote About

A founder-led pull-quote about with a portrait, signature and a facts strip.

PRO

about49

Founder Statement About

About built around a dark founder portrait card with a pull-quote, signature, and supporting stats.