Reprint Permissions In Three ColumnsPRO

A licence written as three plain columns, what is allowed outright, what needs an email first and what is refused, each item marked by the icon for its column.

Legal58: Reprint Permissions In Three Columns

A licence written as three plain columns, what is allowed outright, what needs an email first and what is refused, each item marked by the icon for its column.

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

Base UI flavor

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

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

Quick start

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

tsx
import { Legal58, legal58Demo } from "@/components/beste/block/legal58";

export default function ReprintsPage() {
  return <Legal58 {...legal58Demo} />;
}

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

tsx
import { Legal58 } from "@/components/beste/block/legal58";

export default function ReprintsPage() {
  return (
    <Legal58
      eyebrow="Reprints"
      heading="What you may do with anything published here"
      description="Written in plain words instead of a licence."
      groups={[
        {
          tone: "allowed",
          title: "Yes, go ahead",
          items: ["Quote a few paragraphs with a link back.", "Translate anything, if the translation is free to read."],
        },
        {
          tone: "ask",
          title: "Ask us first",
          items: ["Republishing a full piece on another site."],
        },
        {
          tone: "refused",
          title: "No",
          items: ["Training a model on the archive."],
        },
      ]}
      contactText="Anything that is not on this page?"
      contactLink={{ label: "Ask and we will answer in a day", href: "/contact" }}
    />
  );
}

Props

PropTypeDefaultDescription
eyebrowstringBadge6 label above the hairline rule
headingstringSection heading under the rule
descriptionstringSupporting paragraph
groupsPermissionGroup[][]One column per permission tone
contactTextstringLine in the panel under the columns
contactLinkContactLinkLink beside that line
classNamestringExtra classes for the outer section
ts
type PermissionGroup = {
  tone: "allowed" | "ask" | "refused";
  title: string;
  items: string[];
};

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

Behavior notes

More Legal blocks

View all Legal
PRO

legal45

End User License Agreement

EULA card with numbered clauses covering license grant, restrictions, IP, warranties, and liability. Each clause has a title and full legal text.

PRO

legal56

Data Rights Request

A legal section listing four data rights as hairline cards, each with an icon tile and a response window, beside a soft panel holding a working request form with a request type, email, and free-text detail.

PRO

legal31

Open Source Attribution

Displays open source package attributions with license types, authors, and links to repositories. Includes a search filter for large dependency lists. Required for OSS license compliance.

PRO

legal13

Software License Card

Displays license type with allowed permissions and limitations in checkmark format. Perfect for open-source projects or software documentation pages.

PRO

legal4

GDPR Data Rights Panel

Lists user data rights (access, rectify, erase, restrict, export) with request buttons. Perfect for GDPR compliance portals allowing users to exercise their rights.

PRO

legal54

Subprocessor Register

A legal section publishing every subprocessor as a scrollable hairline table with purpose, region, and start date, closing on an image tile that floats a live data residency card beside a subscribe-to-changes panel.

Markdown version