Measured entry
tripled-contact-form-section-shadcnui
contact-formminimal-flatmotion on file
A client-side React contact section shipped as a shadcn registry block. It combines animated introductory copy, contact details, and a controlled form using Tailwind theme classes, shadcn Button, Card, Input, Label, and Textarea primitives, plus Framer Motion, Lucide icons, and Radix-backed UI foundations.



Measured
Every value below was written by the harness on the run that produced the frames above. None of it is derived from the prose.
| Build | OK |
|---|---|
| Mount | OK |
| Console errors | 0 |
| Uncaught page errors | 0 |
| Horizontal overflow | clean at 375, 768, 1440 |
| Axe critical | 0 |
| Axe serious | 0 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 72.9 KB (138.3 KB build, 65.4 KB baseline) |
| Bare mode | FAIL |
| Provider required | NO |
| Demo used | written from the component source API |
What the harness recorded
BARE BUILD
✗ Build failed in 2m 6s error during build: [vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/components/ui/label.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'
Verdict
A credible starting point for a styled inquiry section: it builds, mounts, stays within its viewports, and showed no automated accessibility findings in the prepared harness. It needs a shadcn-style setup, and the logging-only submit path means real delivery, validation feedback, and consent behavior remain application work.
Use it if
- You want a complete contact section with business details and a project inquiry form in one layout.
- Your app already uses shadcn conventions, Tailwind theme tokens, and path aliases.
- You are prepared to connect the submit handler to your own API, validation, and success states.
- Entrance animation fits the interaction style of the surrounding page.
Skip it if
- You need a form that sends data without adding backend submission logic.
- You want to avoid shipping a motion dependency for a single content section.
- Your project cannot accommodate shadcn primitives, Tailwind theme tokens, or the expected path alias.
- You need production contact details and policy links to work without editing placeholders.
Install
| Declared dependencies | framer-motion, react, radix-ui |
|---|---|
| Missing on install | none |
| Bare install | fails once the shadcn-style helpers are removed, so it needs that setup |
| Provider | no provider required in the harness |
In a non-shadcn project, add Tailwind with the expected semantic color tokens and path alias, provide compatible Button, Card, Input, Label, and Textarea components plus the shared class-name utility, and install React, Framer Motion, Lucide React, and the Radix dependencies used by those primitives. Then replace the placeholder contact data, policy link, and submit logger.
Source and credit
This page is a review, not a copy. The component source lives with its author and this site does not republish it. Read the license before you use anything.
Author repository
github.com/moumen-soliman/uitripledAlternatives
Other published entries for the contact-form pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- hyperui-contact-forms-1editorial
- Renders
- YES
- A11y
- 0
- Gzip
- 17.4KB
- Bare
- pass
- Prov
- NO
- hyperui-contact-forms-2editorial
- Renders
- YES
- A11y
- 0
- Gzip
- 17.5KB
- Bare
- pass
- Prov
- NO
- hyperui-contact-forms-4editorial
- Renders
- YES
- A11y
- 0
- Gzip
- 17.5KB
- Bare
- pass
- Prov
- NO
- hyperui-contact-forms-3editorial
- Renders
- YES
- A11y
- 0
- Gzip
- 17.6KB
- Bare
- pass
- Prov
- NO
- hyperui-contact-forms-5editorial
- Renders
- YES
- A11y
- 0
- Gzip
- 18.4KB
- Bare
- pass
- Prov
- NO
- efferd-contact-2minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 30.4KB
- Bare
- fail
- Prov
- NO