JSPM

  • Created
  • Published
  • Downloads 398
  • Score
    100M100P100Q104558F
  • License MIT

Multi-framework islands architecture for the modern web

Package Exports

  • @useavalon/avalon
  • @useavalon/avalon/client
  • @useavalon/avalon/client/hmr
  • @useavalon/avalon/client/main
  • @useavalon/avalon/client/main-slim
  • @useavalon/avalon/client/strategies
  • @useavalon/avalon/islands/framework-detection
  • @useavalon/avalon/islands/integration-registry
  • @useavalon/avalon/islands/universal-css-collector
  • @useavalon/avalon/islands/universal-head-collector
  • @useavalon/avalon/middleware
  • @useavalon/avalon/nitro/config
  • @useavalon/avalon/nitro/renderer
  • @useavalon/avalon/nitro/types
  • @useavalon/avalon/post-build
  • @useavalon/avalon/prerender
  • @useavalon/avalon/render/collect-css
  • @useavalon/avalon/types
  • @useavalon/avalon/types/island-jsx

Readme

@useavalon/avalon

Core framework package for Avalon — a multi-framework islands architecture for the modern web.

Features

  • Islands architecture with zero JavaScript by default
  • Multi-framework support (React, Preact, Vue, Svelte, Solid, Lit, Qwik)
  • Selective hydration (on:client, on:visible, on:idle, on:interaction)
  • File-system routing with nested layouts
  • API routes and middleware
  • MDX support with rehype/remark plugins
  • SSR with streaming support
  • Edge deployment via Nitro (Node, Deno, Bun, Cloudflare, Vercel, etc.)
  • Vite 8 powered with HMR

Quick start

npm create avalon@latest
# or
bun create avalon

Or install manually:

bun add @useavalon/avalon

Usage

// pages/index.tsx
import Counter from '../components/Counter.tsx';

export default function Home() {
  return (
    <div>
      <h1>Hello Avalon</h1>
      <Counter island={{ condition: 'on:visible' }} />
    </div>
  );
}

License

MIT