127 Components

Horizon Light

Backgrounds

WebGL planetary horizon limb shader with a razor-sharp incandescent core, volumetric FBM atmospheric corona, interactive solar apex tracking, and 8-bit dithered bloom.

GLSL Planetary Limb SDF · 4-Octave FBM

Atmospheric Scatter & Solar Corona

Planetary horizon light with volumetric god-rays.

Move your pointer across the horizon arc to shift the solar apex in real time. Rendered via a signed-distance planetary sphere and 8-bit dithered atmospheric bloom.

APEX ELEVATION: 43%
Horizon Arc

Installation

Install directly into your project using the shadcn CLI or copy the source code manually.

Requires:clsxtailwind-merge
$npx shadcn@latest add "https://boseui.site/r/horizon-light.json"

Props

TypeScript props supported by <HorizonLight />.

9 props
PropTypeDefaultDescription
primaryColorstring"#FF4D1C"Primary atmospheric scatter color (International Vermilion by default).
secondaryColorstring"#FF8A3D"Inner solar corona glow color.
deepColorstring"#6E1404"Outer deep atmospheric bloom color.
coreColorstring"#FFF3E0"Razor-sharp incandescent planetary limb core color.
horizonHeightnumber0.43Vertical position of the planetary horizon apex (0.2 to 0.75).
intensitynumber1.0Multiplier for atmospheric bloom and limb brightness.
speednumber1.0Animation speed multiplier for volumetric god-rays.
interactivebooleantrueWhether pointer movement shifts the solar apex along the horizon curve.
themeMode"dark" | "light" | "auto""dark"Selects dark eclipse mode, warm bone light mode, or syncs with page theme.

Key Features

  • Signed-distance planetary sphere (SDF) creating a crisp curved horizon limb
  • 4-octave Fractional Brownian Motion (FBM) polar god-rays radiating from the solar apex
  • Damped pointer tracking that gently shifts the solar apex along the curved arc
  • Supports both Eclipse Dark (#0c0c0b) and Architectural Bone Light (#f4f1ea) shader surfaces
  • High-frequency optical filmic dither to eliminate 8-bit gradient banding

Keyboard & Accessibility

  • Respects prefers-reduced-motion by freezing temporal ray animation
  • Canvas is marked aria-hidden so screen readers focus strictly on foreground content