## Demo: server-island ### ServerIsland.svelte ```svelte The islands below are delayed on purpose to show the loading state. Loading server island Loading server island ``` ### ServerGreeting.svelte ```svelte { mouseX = e.clientX; mouseY = e.clientY; }} /> Hello, {displayName}! 🏝️ Rendered at {renderedAt} Mouse position: {mouseX}, {mouseY} $props.id(): {islandId} bigProp: {bigProp} bigProp length: {bigProp.length} ``` ### ServerNoProps.svelte ```svelte Server island without props Random number generated on server: {randomNumber} $props.id(): {islandId} ``` ### routes.ts ```ts import { Mochi } from 'mochi-framework'; import type { MochiRouteValue } from 'mochi-framework'; export const routes: Record = { '/demos/server-island': Mochi.page('./src/demos/server-island/ServerIsland.svelte'), }; ``` ### index.ts ```ts import { Mochi, logger } from 'mochi-framework'; await Mochi.serve({ port: 3333, development: process.env.MODE === 'development', routes: { '/': Mochi.page('./src/Home.svelte'), }, }); logger.info('Server running at http://localhost:3333'); ```
The islands below are delayed on purpose to show the loading state.
Hello, {displayName}! 🏝️
Rendered at {renderedAt}
Mouse position: {mouseX}, {mouseY}
$props.id(): {islandId}
bigProp: {bigProp}
bigProp length: {bigProp.length}
Server island without props
Random number generated on server: {randomNumber}