Skip to content

Move the docs routes to app/routes/docs/ - #2292

Merged
NullVoxPopuli merged 2 commits into
mainfrom
nvp/docs-route-layout
Oct 12, 2026
Merged

NullVoxPopuli merged 2 commits into
mainfrom
nvp/docs-route-layout

Conversation

@NullVoxPopuli-ai-agent

Copy link
Copy Markdown
Collaborator

The docs routes now use the same layout as the other routes: app/routes/docs/<name>/+template.gts. Follow-up to #2248.

The docs stay lazy. The glob in app/app.ts does not list them, and app/router.ts loads each one as its own bundle.

Changes

  • vite-ember-ssr moves from 0.6.0 to 0.6.2, with a pnpm patch.
  • The patch adds a routeName(modulePath) option to emberSsr and emberSsg.
  • apps/repl/vite.config.js passes the routes/<name>/+template.gts rule through that option.
  • The docs files move from app/templates/docs/ to app/routes/docs/.
  • app/app-ssr.ts loads the docs templates through customLayout.

Why the patch

vite-ember-ssr names a lazy route in its CSS manifest from the path app/templates/<route>.gts. In another folder, the key is the chunk name, and the prerendered page loses its stylesheet link.

The option runs at build time, when the plugin writes the manifest. The render step does not change.

Upstream issue: evoactivity/vite-ember-ssr#23. The patch can go when upstream has a fix.

Checks

  • pnpm turbo build:prod --filter=limber passes. dist/css-manifest.json has the keys docs, docs.index, docs.editor, docs.embedding, docs.ember-repl, docs.repl-sdk, and docs.related.
  • The prerendered docs pages link the docs stylesheet.
  • pnpm lint passes in apps/repl.
  • The browser tests in apps/repl pass: 73 pass, 7 skip, 0 fail.

🤖 Generated with Claude Code

NullVoxPopuli and others added 2 commits October 12, 2026 18:30
The CSS manifest of vite-ember-ssr names a lazy route from its
app/templates/<route>.gts path. A route template in another folder
gets the chunk name as its key, so its prerendered page has no
stylesheet link.

The patch adds a routeName(modulePath) option to emberSsr and emberSsg.
It runs at build time, when the plugin writes the manifest.

Upstream issue: evoactivity/vite-ember-ssr#23

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Each docs route now has app/routes/docs/<name>/+template.gts, like the
other routes. The docs stay out of the eager glob in app.ts, and the
router still loads each one as a lazy bundle.

The SSG build gets the route name of each template through the
routeName option, so the prerendered pages keep their stylesheet links.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bolt-new-by-stackblitz

Copy link
Copy Markdown

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedvite-ember-ssr@​0.6.0 ⏵ 0.6.278 +110099 +195 +1100

View full report

@github-actions

Copy link
Copy Markdown
Contributor
Project Preview URL1 Manage
Limber https://nvp-docs-route-layout.limber-glimdown.pages.dev on Cloudflare
Tutorial https://nvp-docs-route-layout.limber-glimmer-tutorial.pages.dev on Cloudflare

Logs

Footnotes

  1. if these branch preview links are not working, please check the logs for the commit-based preview link. There is a character limit of 28 for the branch subdomain, as well as some other heuristics, described here for the sake of implementation ease in deploy-preview.yml, that algo has been omitted. The URLs are logged in the wrangler output, but it's hard to get outputs from a matrix job. ↩

@NullVoxPopuli
NullVoxPopuli merged commit 66ac8fc into main Oct 12, 2026
14 checks passed
@NullVoxPopuli
NullVoxPopuli deleted the nvp/docs-route-layout branch October 12, 2026 23:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants