GitShow/solidjs/solid-start
solidjs

solid-start

SolidStart, the Solid app framework

by solidjs
file-system-routingfine-grained-reactivitymeta-frameworksdksignalssolid-jssolidjssolidstart
Star on GitHubForkWebsitenpm

TypeScript

5.9k stars425 forks235 contributorsActive · 22h agoSince 2021@solidjs/start@2.0.4MIT

Meet the team

See all 235 on GitHub →
ryansolid
ryansolid900 contributions
nksaraf
nksaraf610 contributions
nsarafpure
nsarafpure148 contributions
birkskyum
birkskyum130 contributions
lxsmnsyc
lxsmnsyc66 contributions
atilafassina
atilafassina40 contributions
github-actions[bot]Bot
github-actions[bot]39 contributions
ghalle
ghalle31 contributions

Languages

View on GitHub →
TypeScript88.5%
CSS9.5%
JavaScript1.9%

Commit activity

Last 12 weeks · 109 commits

Full graph →

Community health

6 of 6 standards met

Community profile →
87
✓README✓License✓Contributing✓Code of Conduct✓Issue Template✓PR Template

Recent PRs & issues

Active · Last activity 22h ago
See all on GitHub →
lxsmnsyc
[Bug?]: Client-side navigation during hydration causes hydration issue.OpenIssue

Duplicates [x] I have searched the existing issues Latest version [x] I have tested the latest version Current behavior 😯 When a page (mainly a streaming one) is initially loaded and navigated out of during hyration, it will cause a hydration warning on the new page, which is caught by the ErrorBoundary, triggering a double render (#2297). Expected behavior 🤔 Not sure what should be the goal behavior, but most likely discarding the pending hydration process would be ideal? Steps to reproduce 🕹 Here's a page you can add in apps/tests: Context 🔦 Related to #2297 Your environment 🌎

lxsmnsyc · 8h ago
brenelz
fix: dev overlay corrupting first navigation after hydrationOpenPR

The bug With the dev overlay enabled (the default), the first client-side navigation after any SSR page load in dev leaves the previous page's DOM on screen — both routes render at once. Easy to hit as: home → about → back → refresh → click a link. makes it disappear, which is how it was tracked down. Root cause renders a `Portalinsert()container._$hostnullinsert()onMountsharedConfig.contextHydration MismatchsharedConfig.contextrender()document.bodyDOMContentLoadedloading@jridgewell/trace-mapping@solidjs/startUncaught (in promise) SyntaxError: ... does not provide an export named 'default'@jridgewell/resolve-urioptimizeDeps.include: ["@solidjs/start > @jridgewell/trace-mapping"]optimizeDepscreateAsync`-under-hydration phantom-marker behavior looks like a solid-js/dom-expressions core issue worth an upstream fix; this PR removes the dev overlay's exposure to it. 🤖 Generated with Claude Code

brenelz · 17h ago
huseeiin
[Bug?]: two pages render simultaneouslyOpenIssue

Duplicates [x] I have searched the existing issues Latest version [x] I have tested the latest version Current behavior 😯 _No response_ Expected behavior 🤔 _No response_ Steps to reproduce 🕹 do exactly what's in the video: https://github.com/user-attachments/assets/94d33e7e-09e7-4846-a799-4f2b6385bb25 Context 🔦 _No response_ Your environment 🌎

huseeiin · 1d ago

Recent fixes

View closed PRs →
YanAnghelp
[Bug?]: File-level 'use server' silently drops exports wrapped in query()/action()ClosedIssue

Current behavior When a file has a file-level directive and exports a function wrapped in or , the export is silently dropped from the client bundle: Expected behavior The export should be preserved on the client with the inner function replaced by an RPC stub: Root cause (client mode, ) calls for each export to generate RPC stubs. only returns a binding when the variable's is directly a function expression: only matches . When is — a — returns , so is never added to . Then at : Suggested fix Option A (targeted): When returns for a init, fall back to the function-level transform: traverse the arguments for nested functions, replace them with , and include the modified declaration in the output. This generalizes to any HOF wrapper (, , , custom wrappers), not just . Option B (cleaner): Transform the import site instead of the module — when the client bundle imports a named export from a module, inline the RPC stub at the call site so the server module never enters the client bundle at all (similar to how React Server Components handles server actions). Environment OS: Windows 11 Node: v26.2.0 pnpm: 11.8.0 @solidjs/start: 2.0.0-rc.7 Some of the content was generated by AI.

YanAnghelp · 3h ago
lxsmnsyc
feat(2.x): dev toolbar redesignMergedPR

Redesign for the dev toolbar Mainly layout changes Fix dev toolbar popovers affected by dragging interaction Change seroval viewer to tree layout instead of cascade Fix error viewer to capture unhandled rejections Replace with Aims to replace #2282

lxsmnsyc · 22h ago
brenelz
fix: suppress route reload events during the initial route scanMergedPR

What runs on the first dev request and emitted a event for every existing route file it discovered. The fs-watcher's debounced handlers then invalidated (ssr) / d (client) the manifest ~200ms later — after the manifest had already been served — pushing a spurious HMR update that re-imported , 's , and the user's as fresh -stamped module instances while hydration was still in flight. This PR keeps the events quiet during the initial scan. Edits, additions, and removals of route files after the scan still emit as before. Symptoms Depending on where the update landed relative to hydration, dev sessions intermittently saw: two pages rendered simultaneously (#2297) client-side navigation updating the URL but not the content / handlers never firing (the handler lives in the stale module instance while the DOM belongs to the new one) The race is nondeterministic twice over: server-side, if the debounced handler fires before the manifest module exists in the graph, the event degrades to a harmless sent to zero connected clients — so cold starts only misbehaved ~50% of the time; client-side, damage depends on whether the HMR update lands before or after hydration completes, so heavier apps fail much more often than small ones. This matches an A/B on a real site where 16/20 cold dev runs broke client-side navigation. Verification Against the published with this change patched into , driving cold dev starts with Playwright (fresh + fresh server per run): before: 3/6 cold loads received a spurious push ~420ms after the first request, with the browser re-importing and after: 0/6, across repeated batches editing an existing route file still hot-updates just that module; adding a new route file still reloads the manifest and the new route navigates correctly and the fs-routes unit tests (28) pass. 🤖 Generated with Claude Code

brenelz · 22h ago
Structured data for AI agents

Repository: solidjs/solid-start. Description: SolidStart, the Solid app framework Stars: 5914, Forks: 425. Primary language: TypeScript. Languages: TypeScript (88.5%), CSS (9.5%), JavaScript (1.9%). License: MIT. Homepage: https://docs.solidjs.com/solid-start/v2/ Topics: file-system-routing, fine-grained-reactivity, meta-framework, sdk, signals, solid-js, solidjs, solidstart, spa, ssr. Latest release: @solidjs/start@2.0.4 (22h ago). Open PRs: 1, open issues: 32. Last activity: 22h ago. Community health: 87%. Top contributors: ryansolid, nksaraf, nsarafpure, birkskyum, lxsmnsyc, atilafassina, github-actions[bot], ghalle, brenelz, Brendonovich and others.

·@ofershap

Replace github.com with gitshow.dev