Stipple & Pointillism

Organic Poisson-disc blue-noise pointillism engine with real-time Verlet pointer repulsion physics and image luminance sampling.

Interactive Playground

Move cursor over canvas to interact

Source Type

Headline String

Font Weight

Size110px
Size110px

Pattern Distribution

Variant

Sampling Density1.1x
Sampling Density1.1x
Point Radius1.4px
Point Radius1.4px
Repulsion90px
Repulsion90px
Spring0.09
Spring0.09

Cursor Physics

Anatomy

import { StippleText, StippleImage } from "@shavin/fx";

// Headline Typography Stippling
<StippleText text="SHAVIN" fontSize={120} density={1.2} />

// Raster / Vector Image Stippling
<StippleImage src="/assets/hq_marshall.jpg" density={1.0} />

Examples

Interactive Headline

Real-time Poisson-disc particle text with cursor repulsion physics.

Real-time Poisson-disc particle text with cursor repulsion physics.
<StippleText
  text="SHAVIN.FX"
  fontSize={80}
  density={1.0}
  dotRadius={1.3}
  tint="fg"
  interactive={true}
  className="w-full h-40"
/>

Photography Luminance Mapping

Poisson-disc pointillism driven by photo luminance and shadow density.

Poisson-disc pointillism driven by photo luminance and shadow density.
<StippleImage
  src="/assets/hq_marshall.jpg"
  density={1.2}
  dotRadius={1.2}
  colorMode="preserve"
  interactive={true}
  className="w-full max-w-xs"
/>

Props Reference

PropTypeDefaultDescription
type"text" | "image""text"Selects whether to sample typography or raster image pixels.
textstring"SHAVIN"Headline text string to rasterize and sample.
srcstring | ThemedValue<string>—Image URL or theme-aware { light, dark } image source object.
pattern"grid" | "stochastic" | "organic""grid"Dot distribution algorithm: 'grid' (ordered matrix) or 'stochastic' (Poisson-disc blue noise).
densitynumber1.0Sampling density multiplier scaling blue-noise particle counts.
dotRadiusnumber1.2Radius of individual dots in device pixels.
interactivebooleantrueEnables real-time Verlet mouse repulsion physics.
repulsionRadiusnumber100Pixel radius of pointer repulsion force field.
springStiffnessnumber0.09Spring return coefficient pulling particles back to rest positions.
colorMode"preserve" | "tint" | "auto-invert""tint"Color pipeline mode: true color, token tint, or lightness inversion.
tintThemedColor"fg"Semantic token or custom color used for particle tinting.
Configure Theme
Theme
Accent Color
Custom
Gray Family
Appearance
Radius
Scaling
Panel Style
Heading Font
Body Font