Menu
Docs menu

DitherGlobe

A spinning, lit globe dithered from a bundled land mask.

Preview

Expanded preview

Installation

Terminal window
pnpm add astro-dither

Or copy the source into your project:

Terminal window
npx astro-dither add globe

Usage

src/pages/index.astro
---
import { DitherGlobe } from "astro-dither";
---
<DitherGlobe />

The globe effect with the land mask bundled as an asset. It turns on its own; lat and lon set the starting view, sea how much ocean shows, and the palette styles the land.

Props

PropTypeDefaultDescription
latnumber20Latitude facing the viewer.
lonnumber48Longitude facing the viewer when the spin starts.
seanumber0.12Tone of the sea. 0 leaves it clear.
srcstring | ImageMetadatabundled land maskOverride the mask.
palettestring[]the effect's2 to 8 colours, paper first, brightest last. transparent works.
cellnumber2Size of one dither cell in CSS pixels. Rounded to whole device pixels so cells stay even.
matrix2 | 4 | 8 | "noise"8The Bayer threshold size, or noise for a random look.
speednumber1Playback speed. 0 draws one still frame.
stillTimenumberthe effect'sThe moment drawn when motion is off or reduced, in seconds.
levelsnumber0 (all)Tones the field snaps to before dithering. Low values give hard, posterised steps.
bloomnumber0Bloom around lit cells, 0 to 1. Set a positive prop to create the overlay before overriding it with CSS --dither-bloom.
bloomRadiusnumber10Bloom blur in CSS pixels. CSS --dither-bloom-radius overrides it.
classstringundefinedClasses on the surface element, for size and position.

Notes

  • Decorative surfaces render aria-hidden. Put real text on top, not inside them.
  • With reduced motion it draws one still frame and stops.
  • It pauses when scrolled out of view or when the tab is hidden.