îles is a static-site generator that provides great support for partial hydration.

Use Vue and MDX to build your website, while enjoying the smooth development experience provided by Vite.js.

When building for production, use client directives to specify which components are interactive, and automatically ship the minimal amount of JS needed.

Live Demos

This site is built with îles, as well as this port of the Vue.js blog (repo).

Features ✨

🏝 Partial Hydration

Ship JS only for the interactive bits, by default that's zero.

Islands can be defined using Vue, Preact, SolidJS, Svelte, or vanilla JS.

⚡️ Powered by Vite.js

That means the server starts fast, and HMR feels instant.

📖 Great Markdown Support

Use components inside markdown. With HMR, the browser becomes a live preview.

🧱 Layouts and Components

Use Vue components as layouts for Markdown or Vue pages.

No need to import components, it just works, even in markdown.

🛣 File-Based Routing

Routes are generated by default based on your pages, but you can configure them as needed.

🛠 Vue Devtools Support

See frontmatter and metadata for the current page, and debug islands hydration.

Should I use îles?

There are more mature tools that might be a better choice, such as Vuepress.

The goal of this project is to combine the ease of use and development experience of building a site with Vue, while effortlessly shipping a zero JS site as if you were using Jekyll or eleventy.

Project Status: Beta

APIs may change on minor releases. Lock the version to avoid breakage.

Contact ✉️

Please visit GitHub Issues to report bugs you find, and GitHub Discussions to make feature requests, or to get help.

Show some love by ⭐️ starring the project if you find it useful!

News 🗞

Follow me or the official îles account on Twitter.

Last Updated: