Staaarter

Editorial Split Sign In

Two-column editorial sign-in. An oversized, heading-font typographic brand panel sits on one side with no photo, and a clean email and password form with a show/hide password toggle sits on the other. Stacks with the panel first on mobile.

By Staaarter Team
Auth
Docs
Live preview

Docs

Installation

A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its button dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/editorial-split-sign-in.json

Prefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/auth/auth32.tsx instead.

Usage

The file also exports auth32Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.

import { Auth32, auth32Demo } from "@/components/blocks/auth/auth32";

export default function Page() {
  return <Auth32 {...auth32Demo} />;
}

Props

PropTypeDefaultDescription
panelEyebrowstringundefinedSmall uppercase label above the panel heading.
panelHeadingReactNodenoneLarge font-heading typographic heading filling the left/top panel.
panelDescriptionstringundefinedSupporting copy below the panel heading.
formHeadingstring"Sign in"Heading above the form.
submitLabelstring"Sign in"Label on the submit button.
signupHrefstringundefinedLink target for the "create account" prompt below the form. Omit together with signupLabel to hide the prompt.
signupLabelstringundefinedLabel for the "create account" link.
classNamestringnoneExtra classes for the outer section element.

Behavior notes

  • The password field's show/hide toggle uses real client state (a useState boolean) that swaps the input's type between "password" and "text".
  • Layout uses `grid lg:grid-cols-2`; on mobile this collapses to a single column and, since the panel is the first child in the DOM, it stacks above the form automatically without needing order utilities.
  • The "Sign in" submit button and the "create account" link are visual only, left inert since they'd require a real backend.