This section addresses common questions that people have when they found about îles.

What's with the islands?

The term has gained some popularity lately, as a metaphor for a mostly static page (the sea), sprinkled with interactive sections (the islands).

With îles the page is pre-rendered just like in server-side rendering, but JS is automatically added for the interactive bits, making it easier to use than manually attaching JS to existing elements, and more optimal than hydrating the entire page.

Motivation 🤔

I started working on îles because I wanted VitePress + Astro using instead of Snowpack.

îles philosophy is to provide a smooth integration with Vite.js and its wonderful plugin ecosystem, and enable using components from any frameworks so that you can focus on shipping value.

Would like to hear more? Listen to this recent podcast.

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.

Comparisons ⚖️

îles builds upon the ideas of old and new frameworks for static-site generation.

Pull requests to add more comparisons are welcome!


Love VitePress! Highly recommend it for most documentation websites. This site uses îles mostly for dogfooding purposes.

The main difference is that îles supports partial hydration, so you can ship JS only for the interactive parts of the page. Currently, partial hydration in VitePress is a manual process, and its default mode is targeted at building single-page applications.

VitePress has an MPA mode to strip away all JS. In îles that happens automatically if you don't use hydration directives.

Use VitePress if you are building a documentation website, don't need partial hydration, or if it has to be a single-page application.

When migrating an existing site from VitePress to îles, you might want to disable prettyUrls.


Astro is the main inspiration for partial hydration in îles.

Now that Astro is moving to Vite.js, the differences will become smaller.

The following is a list of features and differences to help you compare:

Use Astro if you are not familiar with Vue, or don't like its template syntax.

Acknowledgements 🙇‍♂️

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: