Editorial Article Layout

Operations

The eleven seconds that decide your Tuesday

Rebooking is the smallest task in a clinic and the one that quietly sets the tone for everything after it. Here is what changed when we timed it.

Portrait of Marcus ValeMarcus ValeProduct, scheduling
April 22, 2026 · 6 min read
A tidy reception desk in soft light

We spent a month sitting behind reception desks with a stopwatch. Not to catch anyone out, but because every practice we spoke to described the same shape of bad day, and nobody could point at where it started.

It started at rebooking. A member asks for a different time, the desk opens a calendar, checks a clinician, checks a room, then apologises and offers to call back. The call back is where the day quietly breaks.

Nobody asks for faster software. They ask to stop apologising to people they like.
A practice manager in Utrecht, halfway through the study

What the stopwatch found

Across nine practices, the average rebooking took two minutes and forty seconds when it needed a call back, and eleven seconds when the desk could see clinician and room availability on one screen.

The eleven second version is not faster because anyone is working harder. It is faster because nobody has to hold three systems in their head at once.

  • Two minutes forty: calendar, clinician, room, call back
  • Eleven seconds: one screen, one confirmation, done
  • Every call back added an average of 1.4 follow-up contacts

Why the small task matters most

A call back is not just lost time. It moves the work off the desk and into someone's memory, and memory is where clinics leak. The member waits, the slot sits empty, and the person who promised to ring back is now behind on the thing they were doing before.

Fix the eleven seconds and the rest of the day stops inheriting the debt. That is the whole argument, and it is why scheduling was the first thing we rebuilt.

About this block

Editorial Article LayoutPRO

A full article layout with an oversized light title, an author row framed by hairlines, a wide lead image, prose sections with accent-bulleted lists, an accent-ruled pull quote, and a closing share row.

Post87: Editorial Article Layout

Full article layout: an eyebrow over an oversized light title, a lead paragraph, and an author row framed by hairlines, then a wide lead image above prose sections with accent-bulleted lists, an accent-ruled pull quote after the opening section, and a share row to close.

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

Base UI flavor

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

This installs the block to components/beste/block/post87.tsx plus the badge23 and button21 components it uses for the eyebrow and the share actions.

Quick start

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

tsx
import { Post87, post87Demo } from "@/components/beste/block/post87";

export default function ArticlePage() {
  return <Post87 {...post87Demo} />;
}

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

tsx
import { Post87 } from "@/components/beste/block/post87";

export default function ArticlePage() {
  return (
    <Post87
      badge={{ label: "Operations" }}
      title="The eleven seconds that decide your Tuesday"
      lead="Rebooking is the smallest task in a clinic and the one that sets the tone."
      author={{
        name: "Marcus Vale",
        role: "Product, scheduling",
        avatar: { src: "/images/marcus.jpg", alt: "Portrait of Marcus Vale" },
      }}
      meta="April 22, 2026 · 6 min read"
      image={{ src: "/images/desk.jpg", alt: "A reception desk in soft light" }}
      sections={[
        { paragraphs: ["We spent a month behind reception desks with a stopwatch."] },
        {
          heading: "What the stopwatch found",
          paragraphs: ["Rebooking took two minutes forty when it needed a call back."],
          bullets: ["Eleven seconds: one screen, one confirmation, done"],
        },
      ]}
      quote={{
        text: "Nobody asks for faster software. They ask to stop apologising.",
        attribution: "A practice manager in Utrecht",
      }}
      share={{
        label: "Found this useful?",
        links: [{ label: "Read the next one", href: "/blog" }],
      }}
    />
  );
}

Props

PropTypeDefaultDescription
badge{ label: string }–Topic eyebrow above the title, rendered via Badge23
titlestring–Article title, rendered as the h1
leadstring–Standfirst under the title
authorAuthor–Avatar, name, and role in the byline row
metastring–Date and reading time, set opposite the author
image{ src: string; alt: string }–Wide lead image between the byline and the body
sectionsPostSection[][]Body sections, each with an optional heading and bullets
quotePullQuote–Pull quote, placed after the first section
shareShare–Closing row under a hairline
classNamestring–Extra classes for the outer <section>
ts
type ActionLink = { label: string; href: string };

type Author = {
  name: string;
  role: string;
  avatar: { src: string; alt: string };
};

type PostSection = {
  heading?: string;
  paragraphs: string[];
  bullets?: string[];
};

type PullQuote = { text: string; attribution?: string };

type Share = { label: string; links?: ActionLink[] };

Behavior notes

  • The pull quote is placed by position, not by data: it renders after the section at index 0. Moving it means reordering sections so the intended opening comes first.
  • Sections carry an optional heading, so the opening section can run straight on from the standfirst while later ones get their own h2. The outline stays correct either way under the title's h1.
  • Prose is capped at max-w-3xl while the lead image spans the full container width, which is what gives the article its wide-image, narrow-column rhythm.
  • The byline row is bounded by rules top and bottom (border-y), and it stacks the author above the meta line below sm rather than squeezing them onto one line.
  • The avatar is a fixed size-10 circle with the image absolutely filling it, so a portrait crop of any aspect ratio lands square without distorting.
  • Bullets use an accent dot offset onto the first line of the item, matching the highlight lists elsewhere in the set rather than a check icon, which would read as a feature list.
  • Everything is display copy: no reading time is calculated, no date is parsed, and the share links are ordinary links rather than share intents.

More Post blocks

View all Post
PRO

post89

Long Read Article

PRO

post3

Featured Article Layout

PRO

post88

Article With Sticky Contents Rail

Get Pro access