Material · dither · Paid
Ink Swirl
Twisting ink bands for heroes, sections, and brand moments.
- Type
- dither
- Contexts
- hero · section
- Tags
- dither · swirl · ink · motion
- Perf
- webgl · Swirl is mid-cost; lower bandCount if you mount more than one.
Configurator
Pause freezes the live preview. Reduced motion uses the CSS shell fallback. Reset restores catalog defaults and clears config URL params. Share config copies this page link.
Get access
personalCLI
npx shadcn@latest add @frameline/ink-swirl
Copy-paste path
components/ui/ink-swirl.tsx
Drop source beside your UI kit, or paste JSX from the panel below after install.
Install unlocks after purchase. Preview JSX is for evaluation. Full install guide.
License
$99Personal
All personal materials · commercial rights · updates.
Permitted
- All personal-tier SKUs via registry
- Commercial projects under your name
- Email receipt + account reinstall
Not permitted
- Client deliverables under a studio seat
- Redistribute source packages
Compare Free, Personal, and Team on Pricing.
JSX
import { InkSwirl } from "@/materials";
<InkSwirl
speed={0.32}
bandCount={4}
twist={0.45}
center={0.2}
softness={0.2}
noise={0.15}
colorBack="#0A0A0A"
colors={["#2D6BFF","#5B8CFF","#1A3A8F"]}
className="absolute inset-0"
/>Props
| Name | Type | Default | Description |
|---|---|---|---|
| speed | number | 0.32 | Animation speed |
| bandCount | number | 4 | Number of ink bands |
| twist | number | 0.45 | Twist amount |
| center | number | 0.2 | Center bias |
| softness | number | 0.2 | Edge softness |
| noise | number | 0.15 | Noise amount |
| colorBack | color | #0A0A0A | Background color |
| colors | colors | #2D6BFF, #5B8CFF, #1A3A8F | Band colors |
Frameline
Design assets for the AI era — shippable surface so you don’t ship the default look.
© 2026 Frameline. All rights reserved.
Sera · Stone · Blue