Skip to content
GetUrUI

Contact Pages

2 variantsNewPro
.md

Two full contact pages: a sales page with steps, a logo-free proof row, a validated request form that turns into a call-booking step and an FAQ; and a help center with live article search, topic filters, channels and a call card.

contactsaleshelp centersupportfaqsearchformpage

Sales

Newsales.tsx

Pitch with next steps and a proof grid, a request form (work-email check, sliding team-size selector) that swaps to bookable call slots, then an FAQ.

$npx shadcn@latest add @geturui-pro/contact-pages-sales
PropTypeDefaultDescription
productName / title / descriptionstring—Page copy.
proof{ icon; value; label }[]—Figures for the trust row.
faqs{ q; a }[]—Questions in the accordion.
onSubmit(request: { name; email; company; teamSize; interest; message }) => void | Promise<void>—Resolve to show booking; throw to show the error.
slots / onBookstring[] / (slot: string) => void—Call times offered after sending.
classNamestring—Classes for the outer element.

Help center

Newhelp-center.tsx

Hero search that filters articles live with highlighted matches, topic cards that filter the popular list, contact channels and a volt call card.

$npx shadcn@latest add @geturui-pro/contact-pages-help-center
PropTypeDefaultDescription
title / descriptionstring—Hero copy.
topics{ id; title; description; icon }[]—Topic cards.
articles{ id; title; topic; minutes; href? }[]—Searchable articles; topic is a topic id.
channels{ id; icon; title; meta; actionLabel; href?; onAction?; online? }[]—Contact channels.
onBookCall() => void—Call card action.
classNamestring—Classes for the outer element.

Install the whole set

Installs every contact pages variant at once. Each section above has its own command for a single variant.

Pro installs use your private registry token. Add the @geturui-pro registry once — setup guide. The command works after you get Pro.

$npx shadcn@latest add @geturui-pro/contact-pages

Also installs: Button, Field, Bouncy Accordion

Accessibility

  • Labels on every field, errors linked with aria-describedby, and focus moves to the first problem — or to the next step after sending.
  • Team size is a native radio group; call slots and topic cards use aria-pressed.
  • Search results and counts are announced through a status region; matches are marked with <mark>.

Related