agentsclimarketplace

Astro islands

Skill fusengine/agents/plugins/astro-expert/skills/astro-islands

Expert Astro Islands Architecture — client:load, client:idle, client:visible, client:media, client:only, server:defer (Server Islands), fallback slots, transition:persist, prop serialization. Use when adding interactivity to Astro pages or rendering dynamic server content.From its SKILL.md

Install
npx -y skills add fusengine/agents --skill astro-islands

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 22 stars22 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

3.7 KB, 694 tokens by cl100k_base, as published. Nobody here has run it

Astro Islands Expert

Partial hydration architecture: zero JS by default, selective interactivity via directives.

Agent Workflow (MANDATORY)

Before ANY implementation, use TeamCreate to spawn 3 agents:

  1. fuse-ai-pilot:explore-codebase - Analyze existing components and hydration patterns
  2. fuse-ai-pilot:research-expert - Verify latest Islands docs via Context7/Exa
  3. mcp__context7__query-docs - Get client directive and server:defer examples

After implementation, run fuse-ai-pilot:sniper for validation.


Overview

When to Use

  • Adding interactive React/Vue/Svelte/Solid components to Astro pages
  • Deferring dynamic server content without blocking page load
  • Persisting component state during View Transitions
  • Optimizing Time to Interactive with lazy hydration

Why Islands Architecture

ConceptBenefit
Zero JS by defaultMaximum performance, minimal payload
Selective hydrationOnly interactive components ship JS
server:deferDynamic server content without SSR blocking
client:visibleLazy-load below-fold components
transition:persistState survives page navigation

Client Directives

DirectiveWhen JS LoadsUse Case
client:loadImmediately on page loadCritical interactive UI
client:idleAfter requestIdleCallbackNon-critical UI
client:visibleWhen component enters viewportBelow-fold components
client:media="(query)"When media query matchesResponsive components
client:only="framework"Client-only, no SSRComponents using browser APIs

Server Islands

server:defer renders the component on the server after the page loads:

  • Uses slot="fallback" for placeholder content
  • Ideal for personalized or auth-gated content
  • Does not block initial page render
  • Requires a server adapter

Reference Guide

NeedReference
Architecture overviewoverview.md
Client directive detailsclient-directives.md
server:defer patternsserver-islands.md
transition:persisttransitions.md
View Transitions (complete)view-transitions.md
Prop serialization rulesprop-serialization.md
Interactive componenttemplates/interactive-island.md
Server island with fallbacktemplates/server-island.md

Best Practices

  1. Default to no directive — Ship zero JS unless interactivity is required
  2. Prefer client:visible — Defer below-fold components automatically
  3. client:only for browser APIs — localStorage, window, canvas
  4. server:defer for personalized content — Avatars, prices, auth state
  5. transition:persist — Preserve media players or forms during navigation

What ships with it: 8 files

19.7 KB alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.