Always-Open Question GridPRO

A two-column question grid with every answer already visible on a hairline, so nothing is hidden behind a toggle, closed by a soft panel pointing at a direct reply.

Faq93: Always-Open Question Grid

A two-column question grid with every answer already visible on a hairline, so nothing is hidden behind a toggle, closed by a soft panel pointing at a direct reply.

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

Base UI flavor

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

This installs the block to components/beste/block/faq93.tsx and the badge6 component it uses for the eyebrow (installed to components/beste/component/badge6.tsx).

Quick start

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

tsx
import { Faq93, faq93Demo } from "@/components/beste/block/faq93";

export default function FaqPage() {
  return <Faq93 {...faq93Demo} />;
}

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

tsx
import { Faq93 } from "@/components/beste/block/faq93";

export default function FaqPage() {
  return (
    <Faq93
      eyebrow="Before you subscribe"
      heading="The questions readers actually send us"
      description="Everything on this page is answered in the open."
      questions={[
        {
          question: "How often does it arrive?",
          answer: "Once a week, Tuesday morning, and never twice in the same week.",
        },
        {
          question: "Is any of it sponsored?",
          answer: "No. There are no ads, no affiliate links and no paid mentions.",
        },
      ]}
      supportText="Something we have not covered here?"
      supportLink={{ label: "Write to us directly", href: "/contact" }}
    />
  );
}

Props

PropTypeDefaultDescription
eyebrowstringBadge6 label above the hairline rule
headingstringSection heading under the rule
descriptionstringSupporting paragraph
questionsQuestionItem[][]Question and answer pairs, two to a row
supportTextstringLine in the panel under the grid
supportLinkSupportLinkLink beside that line
classNamestringExtra classes for the outer section
ts
type QuestionItem = {
  question: string;
  answer: string;
};

type SupportLink = {
  label: string;
  href: string;
};

Behavior notes

More FAQ blocks

View all FAQ
FREE

faq80

Two Column Answer Grid

An always-open FAQ laid out as a two-column grid of numbered, hairline-separated question and answer entries, closing with a soft support panel that pairs a short prompt with two actions.

PRO

faq17

Two Column Q&A

Questions on left, answers on right in a two-column grid layout. Works well for balanced, side-by-side presentation.

PRO

faq74

FAQ Cards

Always-open FAQ presented as a scannable grid of Q&A cards.

PRO

faq9

Three Column Grid

Q&A pairs arranged in a responsive grid layout. Ideal for displaying concise answers in a scannable, multi-column format.

PRO

faq91

Ask And Answered In Public

An open question FAQ pairing a soft panel that sticks while you scroll, holding a working question and email form, with the questions others sent recently answered as linked hairline entries.

PRO

faq39

Slide-Out Panels

Questions that slide open to reveal answers with bottom border separator. Smooth reveal animation.

Markdown version