Islands are interactive UI fragments hydrated with client-side JavaScript while the surrounding page stays static. Charts, auth forms, and feed editors hydrate; long-form about text does not.
Where hydration helps
- History charts needing client-side zoom or tooltips.
- Dashboard forms for configuring feeds.
- Probe demo toggles on the interactive demo page.
Performance habit
Default to zero JS; add client:load or client:visible only where necessary. Public visitors mostly read static SSR output from Astro SSR.
Stack context
Full pipeline: data flow. Admin tools: admin dashboard features.
FAQ
What is an Astro island on ProbeHarbor?
A small client component (charts, contact form, probe demo) hydrated only where needed, while the surrounding page stays server-rendered.
Do I need a full React SPA for monitoring?
ProbeHarbor does not. Prefer SSR + islands for public pages; keep interactivity local. Product home: probeharbor.dev.