Agent Skills: Async Components and Client-Only Islands

Use async components, fallbacks, and client-only islands

UncategorizedID: itsjavi/vani/vani-async-client-only

Install this agent skill to your local

pnpm dlx add-skill https://github.com/itsjavi/vani/tree/HEAD/skills/vani-async-client-only

Skill Files

Browse the full folder contents for vani-async-client-only.

Download Skill

Loading file tree…

skills/vani-async-client-only/SKILL.md

Skill Metadata

Name
vani-async-client-only
Description
Use async components, fallbacks, and client-only islands

Async Components and Client-Only Islands

Instructions for async components with fallbacks and client-only rendering.

When to Use

Use this when a component needs async setup or when a section should render only on the client.

Steps

  1. Define a component that returns a Promise of a render function.
  2. Provide a fallback render function for DOM mode while async work runs.
  3. Use clientOnly: true to skip SSR for a component and render it on the client.
  4. Keep explicit updates for any local state changes after load.

Arguments

  • componentName - async component name (defaults to AsyncCard)
  • includeFallback - whether to include a fallback (defaults to true)
  • clientOnly - whether to mark the component as client-only (defaults to false)

Examples

Example 1 usage pattern:

Render an async card with a loading fallback, then resolve to content.

Example 2 usage pattern:

Render a client-only widget inside an SSR page using clientOnly: true.

Output

Example output:

Created: src/async-card.ts
Notes: Fallback renders in DOM mode; SSR awaits async components.

Present Results to User

Clarify when the fallback appears, how client-only rendering behaves, and list file changes.