Shadcn UI Contact Block
Contact25 combines self-service help with direct contact in a two-column layout. The left column has a small icon with heading followed by a collapsible FAQ accordion with five questions and answers. The right column mirrors the structure with its own icon and heading, then a muted-background form container with name, email, and message fields.
The accordion uses single-select collapsible mode so only one question expands at a time. The form container has rounded corners with semi-transparent muted background. Inputs use white backgrounds to contrast with the container. The form validates with React Hook Form and Zod, showing errors on submit and a fade-in success message.
Practical and support-focused, designed to reduce ticket volume by encouraging self-service. The equal column width gives both options equal visual priority. The question-then-form flow guides users to check existing answers before contacting support. Works well for SaaS products, e-commerce, or any customer support scenario.
Dependencies
| Package | Type |
|---|---|
| @hookform/resolvers | NPM |
| lucide-react | NPM |
| react | NPM |
| react-hook-form | NPM |
| zod | NPM |
accordion @shadcn | Registry |
button @shadcn | Registry |
field @shadcn | Registry |
input @shadcn | Registry |
textarea @shadcn | Registry |