dev-create-island

Create interactive island components with customizable hydration strategies for Astro projects.

20|3|Updated Feb 22, 2026
One-click install
npx skills add https://github.com/HerbertJulio/specialist-agent --skill dev-create-island
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: dev-create-island
Source: https://github.com/HerbertJulio/specialist-agent/tree/main/packs/astro/skills/dev-create-island
Command: npx skills add https://github.com/HerbertJulio/specialist-agent --skill dev-create-island

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill guides teams to create interactive UI islands that require client-side JavaScript, enabling controlled hydration within Astro-based projects and framework integrations.

Core Features & Use Cases

  • Provides a guided pattern to implement islands across React, Vue, and Svelte with docs-driven steps.
  • Supports selecting and applying hydration strategies like client:load, client:idle, and client:visible to optimize performance.
  • Demonstrates how to wire up an island with typed props and an Astro usage example to enable reusable interactive components.

Quick Start

Create an IslandName component with a suitable hydration strategy in your Astro project.

Frequently Asked Questions about dev-create-island

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create an interactive island component for client-side hydration?▼

To create an interactive island, you generate a framework-specific component and apply a hydration directive like client:load, client:idle, or client:visible to control when it executes on the client. This ensures optimal performance by only hydrating components when needed.

What hydration strategies can I use for React, Vue, or Svelte islands in Astro?▼

Astro hydration strategies for React, Vue, and Svelte islands include client:load for immediate hydration, client:idle for hydration when the browser is idle, and client:visible for hydrating when the component enters the viewport. You can also use media queries for conditional hydration.

Does this island generation pattern support typed props for safe serialization?▼

Yes, the island generation pattern supports typed props specifically designed for safe serialization. This ensures that data passed from the server to the client-side interactive island maintains its type integrity, preventing runtime errors during hydration.

When should I use client:visible versus client:idle for framework islands?▼

Use client:visible for framework islands when the component is below the fold and not immediately visible, as it defers hydration until scrolling. Use client:idle for components needed soon but not immediately, allowing the browser to handle higher priority tasks first to optimize page load.

Can I build hydration-ready islands without manually configuring client directives?▼

Building hydration-ready islands requires selecting an appropriate hydration strategy like client:load or client:visible. This guided pattern automates the framework-specific file creation and hydration directive application, ensuring the interactive island is properly configured for client-side execution.

What is the best way to wire up an interactive island in an Astro project?▼

The best way to wire up an interactive island is to create a framework-specific component in React, Vue, or Svelte, define typed props, and import it into an Astro page with a hydration directive. This pattern enables reusable, controlled hydration.