Skip to content
Open
Changes from 1 commit
Commits
Show all changes
124 commits
Select commit Hold shift + click to select a range
c83f957
expand docs on rendering modes
atilafassina Oct 20, 2025
28afce1
typo-1
atilafassina Oct 20, 2025
2e8d401
typo-2
atilafassina Oct 20, 2025
7a73d35
typo-3
atilafassina Oct 20, 2025
926ff16
typo-4
atilafassina Oct 20, 2025
08b8670
typooo
atilafassina Oct 20, 2025
41d8ff0
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 20, 2025
3207564
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 20, 2025
4bdba75
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 20, 2025
a02ed4c
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 21, 2025
4d313c3
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 21, 2025
b7fb815
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 26, 2025
717bca0
big rewording
atilafassina Oct 26, 2025
c56434a
Update src/routes/solid-start/building-your-application/rendering-mod…
atilafassina Oct 26, 2025
ea97511
Update src/routes/solid-start/building-your-application/rendering-mod…
atilafassina Oct 26, 2025
142c87f
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 27, 2025
e09cc3c
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 27, 2025
bd9cbed
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 28, 2025
d3a447d
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 28, 2025
2b21ae7
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 28, 2025
3449f45
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 28, 2025
5c40d3d
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 28, 2025
c3cb991
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 28, 2025
0a7f7ec
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 28, 2025
889b9d7
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Oct 31, 2025
eb2cd49
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 4, 2025
75c77b2
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 4, 2025
6738c75
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 8, 2025
ff476f4
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 9, 2025
33cfb0a
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 13, 2025
73f9a73
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 14, 2025
0caf6a8
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 15, 2025
fe7ec3b
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 15, 2025
6488ad2
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 15, 2025
c0dc8a1
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 15, 2025
4cee9c7
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 15, 2025
b3e80f0
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 17, 2025
1ca1016
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 17, 2025
7aa30aa
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 17, 2025
979c797
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 17, 2025
cdc39f1
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 17, 2025
67296bb
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 17, 2025
197fb7c
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 17, 2025
3ad0b03
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 19, 2025
9c71b99
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 22, 2025
10eafa5
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 23, 2025
70ad680
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Nov 27, 2025
429cc3c
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 1, 2025
0dec3e3
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 1, 2025
4d0a92d
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 2, 2025
3afd28e
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 2, 2025
d899217
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 2, 2025
edd2612
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 9, 2025
105b1bb
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 9, 2025
e957f66
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 9, 2025
e704cbf
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 9, 2025
439762a
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
ba6ad25
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
c9ef58a
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
b9b69c3
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
9e9ebc2
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
178b62a
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
6da40d8
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
557ba8f
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
23b4e51
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
03d7fab
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 13, 2025
052a62d
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 16, 2025
d418b94
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 16, 2025
18b4dbd
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 16, 2025
ba521e3
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 16, 2025
22a89b5
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 16, 2025
982e47d
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 16, 2025
532474f
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 17, 2025
594993d
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 23, 2025
c90967b
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 23, 2025
69605a8
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 23, 2025
9257d55
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 23, 2025
9d6b0b3
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 23, 2025
d16b1c6
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 28, 2025
f264a72
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 28, 2025
bc99819
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 28, 2025
6ab326a
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 28, 2025
d751bd1
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 30, 2025
b7a59ea
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 30, 2025
efb8f2e
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 30, 2025
ca3b792
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 30, 2025
d644381
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 30, 2025
e4275b7
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 30, 2025
ecc2cb0
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Dec 30, 2025
ea3dd6e
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
6fd94c4
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
131f708
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
3421b5c
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
3ef80b8
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
9c7bf29
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
006d17c
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
e9e804b
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
d6b5663
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
47792ff
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
a641d40
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 6, 2026
28a433e
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 7, 2026
2ab9272
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 7, 2026
161f9f0
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 9, 2026
9b9a723
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Jan 24, 2026
570943f
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 3, 2026
f0fbd0a
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 3, 2026
c1ce624
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 3, 2026
f2d92b3
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 3, 2026
773cce8
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 3, 2026
aa0dde6
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 3, 2026
7d3fbdf
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 3, 2026
3a30eee
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 5, 2026
1cc0fb9
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 5, 2026
904471b
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 11, 2026
c7dbf09
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 17, 2026
7c9cad7
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 17, 2026
2b76d35
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 17, 2026
4e98805
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 17, 2026
bbb09c0
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Feb 20, 2026
8e3765c
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Mar 3, 2026
5fc2337
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Mar 3, 2026
3b2a2f2
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Mar 3, 2026
1865ded
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Mar 3, 2026
d8f4a70
Merge branch 'main' into docs/rendering-modes
kodiakhq[bot] Mar 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
big rewording
  • Loading branch information
atilafassina committed Oct 26, 2025
commit 717bca0d7a56972043cfedd5fe516c3e54ab1607
Original file line number Diff line number Diff line change
Expand Up @@ -2,43 +2,58 @@
title: "Rendering Modes"
---

SolidStart has 3 kinds of rendering modes: `sync`, `async`, and `stream`.
Let's talk about how each of them work and which one to pick.
SolidStart has 3 kinds of rendering modes:

:::note
Default is **stream** and performance-wise should be preferred as a rule-of-thumb.
:::
- `sync`: renders on server with `renderToString` and performs Client-Side Rendering (CSR) for asynchronous features.
- `async`: renders on server with `renderToStringAsync`. Blocking the response until all asynchronous data fetching is resolved.
- `stream` (default): renders on server with `renderToStream`. Streaming the response as soon as possible and continuing to fetch asynchronous data in the background, resolving the page as soon as possible and sending next chunks.

All modes have some degree of Server-Side Rendering, you may need to change them globally depending on your deployment provider.
And you may prefer to override them for better bot support and SEO.

## Impacted Features

| Feature | sync | async | stream |
| -------------------- | ----------- | --------------------------- | ----------------------- |
| Data fetching | Client-side | Server-side (blocking) | Server-side (streaming) |
| Suspense fallbacks | Yes | No | Yes |
| Time to first byte | Fast | Slower (waits for all data) | Faster |
| Total page load time | Slower | Fast (server fetches) | Faster (progressive) |

### Sync Mode

Uses [`renderToString`](/reference/rendering/render-to-string) to render the page from Solid's core to render the page synchronously.
All async features are disabled and the page is rendered as soon as possible and sent to the client-side where data fetching will happen post-hydration.

:::caution[Page Components]
In SolidStart, all page components are lazy-loaded by default. This means that `renderToString` will SSR only until `app.tsx` and the route components will be rendered client-side.
:::

Asynchronous features will be directly impacted since rendering will mostly happen on the client-side.

- Data-fetching: client-side only, first load will render Suspense fallbacks.
- Time To First Byte (TTFB): fast since the server-side rendering is minimal.
- Total page load time: slower since the client-side rendering is heavier.
Copy link

Copilot AI Oct 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The phrase 'to render the page' is repeated. Remove the first occurrence to read: 'Uses renderToString from Solid's core to render the page synchronously.'

Suggested change
- Total page load time: slower since the client-side rendering is heavier.
Uses [`renderToString`](/reference/rendering/render-to-string) from Solid's core to render the page synchronously.

Copilot uses AI. Check for mistakes.

### Async Mode

Uses [`renderToStringAsync`](/reference/rendering/render-to-string-async) to render the page from Solid's core to render the page asynchronously.
All Suspense boundaries are resolved and rendered before being sent to the client-side.
Comment thread
atilafassina marked this conversation as resolved.
Outdated

:::tip[SEO and Bot Support]
No suspense fallbacks are shown in the browser, which makes this mode ideal for SEO optimizations and bot support.
:::

Asynchronous features will happen in the Server-Side during first render.

Comment thread
atilafassina marked this conversation as resolved.
Outdated
- **Data-fetching**: first render will be similar to sync mode, but data fetching will still happen in the background and responses will be streamed in chunks as available.
Comment on lines +38 to +39
Copy link

Copilot AI Oct 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The description at line 38 appears to be misplaced in the Async Mode section. This line describes stream mode functionality but is located within the Async Mode section (after line 37 which discusses server-side features for async mode). It should either be removed from this section or the section structure needs to be corrected.

Copilot uses AI. Check for mistakes.
- **Time To First Byte (TTFB)**: slower since the server-side rendering is heavier.
- **Total page load time**: faster than sync mode since the server-side tends to be faster than the client-side.

### Stream Mode
### Stream Mode (default)

Uses [`renderToStream`](/reference/rendering/render-to-stream) to render the page from Solid's core to render the page streaming.
Leveraging [TransformableStream](https://developer.mozilla.org/en-US/docs/Web/API/TransformStream) to progressively send the HTML to the client-side.

This mode is ideal for performance and future-friendly apps.
:::tip[Performance and Future-Friendly Apps]
This mode is ideal for performance and future-friendly apps. It provides best perceived performance and consumes less memory and CPU from the client-side.
:::

Asynchronous features will happen in the Server-Side during first render.

- **Data-fetching**: server-side only, data fetching will happen in the background and the page will be rendered as soon as possible.
- **Time To First Byte (TTFB)**: faster since the server-side rendering is lighter.
- **Total page load time**: faster since the server-side tends to be faster than the client-side.

## Global Configuration

Expand Down