Skip to content
https://dondibogusky.com/notes/vue-islands/ Back to notes

Vue Islands With a Job

A rule of thumb for using Vue in Astro without accidentally building a full SPA.

Vue Frontend

Vue islands work best when they have a specific job. They should not be a reflexive wrapper around every component.

For this site, Vue handles two focused surfaces: topic filtering on the homepage and search on the search page. Both involve user input, live state, and UI updates that are awkward without client JavaScript.

The Test

Before adding an island, ask whether the reader needs to manipulate state after the page loads. If the answer is no, an Astro component is likely enough.

That test keeps the JavaScript budget tied to user value instead of framework habit.

The Payoff

The site keeps the authoring ergonomics of components, the runtime profile of static HTML, and just enough interactivity to make browsing the archive pleasant.