# Client-Side JavaScript

Hyperspan is a server-oriented framework, which means that **all JavaScript code that is sent to the client is explicitly opt-in**.

There are a few different ways to use client-side JavaScript in Hyperspan:

- [Islands](/docs/clientjs/islands) - Framework-agnostic islands architecture in Hyperspan.
- [React / Preact Islands](/docs/clientjs/react) - Use `@hyperspan/plugin-preact` to render React or Preact islands.
- [Vue Islands](/docs/clientjs/vue) - Use `@hyperspan/plugin-vue` to render Vue islands.
- [Svelte Islands](/docs/clientjs/svelte) - Use `@hyperspan/plugin-svelte` to render Svelte islands.
- [Vanilla JavaScript](/docs/clientjs/vanilla) - A built-in way to use [ES Modules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) to ship your own JavaScript code to the browser.
