Signed Out Confirmation

You've been signed out

Your session has ended. Sign back in whenever you're ready to pick up where you left off.

About this block

Signed Out ConfirmationPRO

Full-height signed-out screen with a centered icon, a heading and message, a sign-back-in button, and a return-home link. Perfect for logout confirmations and expired-session pages.

Auth17: Signed Out Confirmation

Full-height signed-out screen: a centered icon in a neutral circle, a heading and message, a primary sign-back-in button, and a secondary return-home link. Entirely static, with no form fields or interactive state.

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

Base UI flavor

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

This installs the block to components/beste/block/auth17.tsx and the button shadcn/ui primitive it's built on.

Quick start

The installed file exports auth17Demo alongside the block: the exact props behind the preview above. Spread it to get a working signed-out screen in one line.

tsx
import { Auth17, auth17Demo } from "@/components/beste/block/auth17";

export default function SignedOutPage() {
  return <Auth17 {...auth17Demo} />;
}

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

tsx
import { LogOut } from "lucide-react";
import { Auth17 } from "@/components/beste/block/auth17";

export default function SignedOutPage() {
  return (
    <Auth17
      icon={<LogOut className="size-7" />}
      heading="You've been signed out"
      description="Your session has ended. Sign back in whenever you're ready."
      primaryButton={{ label: "Sign back in", href: "/sign-in" }}
      secondaryLink={{ label: "Return to homepage", href: "/" }}
    />
  );
}

Props

PropTypeDefaultDescription
iconReact.ReactNode–Icon shown inside the circular badge above the heading
headingstring–Screen title
descriptionstring–Message below the heading
primaryButton{ label: string; href: string }–Filled call-to-action button
secondaryLink{ label: string; href: string }–Ghost-variant button below the primary one
classNamestring–Extra classes for the outer <section>

Behavior notes

  • Fully static and presentational: there is no <form>, no inputs, and no local state.
  • primaryButton renders as a filled Button, secondaryLink as a variant="ghost" Button; both are asChild links stacked full-width in a flex-col gap-3 container, and either can be omitted independently.
  • The icon circle uses neutral bg-muted text-muted-foreground, unlike auth12's green success circle, matching a neutral rather than a positive/negative state.
  • icon, heading, description, primaryButton, and secondaryLink are each individually optional; any subset can be dropped without leaving layout gaps.

More Auth blocks

View all Auth
PRO

auth12

Email Confirmed Success

PRO

auth46

Confirm It's You

PRO

auth8

Welcome Back Unlock

Get Pro access