You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Rebuild the github-pages template on the Remix SPA preview
Switch from a Service Worker fetch handler to the client-side SPA router
from remix-run/remix#11629: the router declares RouterTypes.output =
RemixNode so handlers return JSX, and the SPA component from remix/ui/spa
dispatches navigations and form submissions through the in-memory router.
Frames stay: the guest book page is a <Frame name="welcome"> shell whose
src resolves through the same router via createRoot's frameInit, with the
frame name carried as the x-remix-target request header. Frames only
re-resolve when their src changes, so the POST action stamps a freshness
token into the src; the sign form is keyed by entry count so submissions
mount a fresh form instead of morphing old values.
The worker entry, Document shell, render middleware, and @pitlane/dev
plugin are gone — the build is a plain Vite SPA (dist + 404.html).
pnpm plumbing for the preview build: allowBuilds only matches git-hosted
packages by exact resolved commit, so both workspace files pin the remix
prepare (true) and decline the prebuilt @remix-run/* scripts (false);
blockExoticSubdeps is disabled for the preview's git-tarball dependency
graph, and the deploy workflow stops CI's frozen-lockfile default from
leaking into the git checkout prepared during install.
Copy file name to clipboardExpand all lines: github-pages/README.md
+35-12Lines changed: 35 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,17 @@
1
1
# Pitlane — GitHub Pages Template
2
2
3
-
A [Remix 3](https://remix.run) guest book starter built with [`@pitlane/dev`](https://pitlane.tools/package/dev)that runs entirely in the browser: the Remix fetch router lives inside a Service Worker, and data persists locally in IndexedDB via [`idb-keyval`](https://github.com/jakearchibald/idb-keyval). Once built, it deploys as pure static files.
3
+
A [Remix 3](https://remix.run) guest book starter that runs entirely in the browser: the Remix fetch router returns UI nodes directly — no server, no service worker, no HTTP — and the `SPA` component from `remix/ui/spa` renders them, intercepting navigations and form submissions. Frames resolve through the same in-memory router, and data persists locally in IndexedDB via [`idb-keyval`](https://github.com/jakearchibald/idb-keyval). Once built, it deploys as pure static files.
0 commit comments