{
  "id": "2634d8efc3c8e21f09a43d26",
  "source": "solid:signals",
  "type": "github-document",
  "title": "ssr",
  "content": "---\ntitle: Server side rendering\nuse_cases: \u003e-\n  server rendering, seo optimization, initial page load, performance\n  optimization, data preloading\ntags:\n  - ssr\n  - server\n  - rendering\n  - seo\n  - performance\n  - preload\nversion: '1.0'\ndescription: \u003e-\n  Enable server-side rendering with Solid Router for SEO and performance.\n  Support suspense, resources, and render-as-you-fetch patterns.\n---\n\nSolid Router supports all of Solid's SSR capabilities.\nIn addition, it has Solid's transitions included, so it can be used freely with [suspense](/reference/components/suspense), [resources](/reference/basic-reactivity/create-resource), and [lazy components](/reference/component-apis/lazy).\n\nWhen using SSR, there is the option to use the static router directly or let the browser router default to it on the server by passing in the URL.\n\n```jsx\nimport { isServer } from \"solid-js/web\";\nimport { Router } from \"@solidjs/router\";\n\n\u003cRouter url={isServer ? req.url : \"\"} /\u003e;\n```\n\nSolid Router also provides a way to define a `preload` function that loads parallel to the routes [render-as-you-fetch](https://epicreact.dev/render-as-you-fetch/).",
  "url": "https://github.com/solidjs/solid-docs/blob/HEAD/src/routes/solid-router/rendering-modes/ssr.mdx",
  "metadata": {
    "path": "src/routes/solid-router/rendering-modes/ssr.mdx",
    "repo": "solidjs/solid-docs",
    "repo_url": "https://github.com/solidjs/solid-docs.git",
    "size": 1142,
    "source_type": "github"
  },
  "hash": "961e9811e83b6ed8049ed9cbf8b6d3725d28670978bec46b861b8b105574cb39",
  "timestamp": "2026-02-23T11:43:00.193481296+01:00"
}