Measured entry
magicui-text-reveal
text-effect3dmotion on file
A client-side React text effect shipped as a shadcn registry component. It creates a tall sticky scroll section and uses Motion scroll progress to reveal plain-string content word by word. It depends on Motion, Tailwind utility classes, and the shadcn-style cn helper backed by clsx and tailwind-merge.



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 | 1 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 72.8 KB (138.3 KB build, 65.5 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 1.58s error during build: [vite:load-fallback] Could not load <sandbox>re-2358630a5621/src/lib/utils (imported by src/cut/text-reveal.tsx): ENOENT: no such file or directory, open '<sandbox>re-2358630a5621/src/lib/utils'
Verdict
A focused choice for scroll-led statement sections, but it needs a shadcn-style setup and should not be dropped into a bare React project unchanged. Fix the faded text contrast and add a reduced-motion treatment before production use.
Use it if
- You want a long-form headline or statement to reveal as the reader scrolls through a dedicated section.
- Your React app already uses Tailwind and a shadcn-compatible utility helper.
- The content can remain a plain string without links, emphasis, or nested markup.
Skip it if
- You need inline links, styled phrases, localization markup, or other rich children inside the text.
- You cannot dedicate a tall scroll section to a short block of copy.
- You need compliant contrast without revising the faded word styling.
- You require a built-in reduced-motion alternative or want to avoid adding Motion.
Install
| Declared dependencies | motion, clsx, tailwind-merge |
|---|---|
| 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 Motion, Tailwind, clsx, and tailwind-merge; create the cn utility and configure the at-sign source alias, or replace that import with your own class merger. Ensure the file runs as a client component and provide a reduced-motion variant.
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/magicuidesign/magicuiAlternatives
Other published entries for the text-effect pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- uilayouts-randomized-text-effectdark-futuristic
- Renders
- YES
- A11y
- 0
- Gzip
- 17.5KB
- Bare
- pass
- Prov
- NO
- uilayouts-randomized-text-unveildark-futuristic
- Renders
- YES
- A11y
- 0
- Gzip
- 17.7KB
- Bare
- pass
- Prov
- NO
- fancy-scramble-indark-futuristic
- Renders
- YES
- A11y
- 0
- Gzip
- 17.8KB
- Bare
- pass
- Prov
- NO
- magicui-aurora-textaurora-mesh
- Renders
- YES
- A11y
- 0
- Gzip
- 20.7KB
- Bare
- pass
- Prov
- NO
- magicui-highlighterskeuomorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 24.8KB
- Bare
- pass
- Prov
- NO
- fancy-text-along-pathspatial
- Renders
- YES
- A11y
- 0
- Gzip
- 25.7KB
- Bare
- pass
- Prov
- NO