solidjs / solidjs/solid-start

Support initial serialized page data with client-only rendering

Open
#2,287 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
TypeScript
Stars
5.9k
Forks
426
Avg merge
1d 3h
Merged PRs (30d)
11

Description

Duplicates
  • I searched existing issues. The closest is #1934, but that requests disabling SSR per page.
Summary 💡

I want to avoid hydration without creating an initial fetch waterfall for route props.

Currently:

  • ssr: true sends props with the initial response, but also renders application HTML and requires hydration.
  • ssr: false avoids hydration, but createAsync() / query() data is fetched after the client boots.

Requested mode:

  • Resolve route data on the server.
  • Return an HTML shell, client scripts, and serialized initial props in one response.
  • Do not render application HTML on the server.
  • Seed the client with those props and use render() instead of hydrate().

This resembles the Inertia page object: the initial response carries the matched component, props, URL, and version so the client can render immediately.

Motivation 🔦

Avoid maintaining hydration while preserving one request for both the document and its initial data. No duplicate server/client HTML rendering and no follow-up request waterfall for initial props.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the existing ssr: true and ssr: false paths, including createAsync(), query(), render(), and hydrate(). Compare how route data and the initial response are handled, then define the new mode so one response carries the HTML shell, client scripts, matched component, URL, version, and serialized props without server-rendered application HTML.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
backend, frontend, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.