Measured entry
efferd-cta-1
A compact, centered call-to-action bar with a heading and two button treatments that stack on narrow layouts. It ships as a TSX shadcn registry block styled with Tailwind utilities and depends on the registry Button component, its Radix-backed behavior, theme tokens, path aliases, and shared class-name helper.



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 | 31.5 KB (96.9 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 1m 16s error during build: [vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/components/ui/button.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'
Verdict
A sound choice for a minimal CTA in an existing shadcn codebase, with sensible responsive structure and no provider requirement. It needs a shadcn-style setup and is not portable as-is because the bare project lacks the aliased shared utility used by Button.
Use it if
- You need a restrained CTA strip that can sit between bordered page sections.
- Your project already uses shadcn conventions and can reuse its Button variants and theme tokens.
- You are prepared to replace the sample copy and connect both actions to real navigation or handlers.
Skip it if
- You need a self-contained component that drops into a plain React project without shared UI infrastructure.
- Your CTA requires supporting copy, imagery, forms, or more than two actions.
- You cannot accommodate its full-viewport horizontal border treatment inside your page shell.
Install
| Declared dependencies | 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 CSS with the expected color tokens, configure the at-sign source alias, provide the Button component and shared class-name utility, and install its Radix and variant-class dependencies. Then replace the placeholder button actions.
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/shabanhr/efferd-uiAlternatives
Other published entries for the cta pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- meraki-cta-simpleminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 17.7KB
- Bare
- pass
- Prov
- NO
- hyperui-ctas-4editorial
- Renders
- YES
- A11y
- 0
- Gzip
- 17.8KB
- Bare
- pass
- Prov
- NO
- meraki-cta-gridminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 17.8KB
- Bare
- pass
- Prov
- NO
- meraki-cta-formminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 17.9KB
- Bare
- pass
- Prov
- NO
- hyperui-ctas-2editorial
- Renders
- YES
- A11y
- 0
- Gzip
- 18.0KB
- Bare
- pass
- Prov
- NO
- meraki-cta-cardminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 18.0KB
- Bare
- pass
- Prov
- NO