Repository navigation
refactor: move rails, header and footer into widgets and thin the routes - #96
Merged
Merged
Conversation
Code reviewNo issues found. Checked for bugs and CLAUDE.md compliance. |
This was referenced Oct 23, 2026
dimslaev
force-pushed
the
refactor/frontend-fsd-3-features
branch
from
October 23, 2026 17:42
f0750aa to
1864673
Compare
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Tw6MLK1HN9LphNtP6APJ2w
dimslaev
force-pushed
the
refactor/frontend-fsd-4-widgets
branch
from
October 23, 2026 17:46
4740da8 to
2373d53
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Chunk 4 of 6 of the frontend FSD + kebab-case move. Stacked on #95.
Changes
widgets/rails: rail components inui/(panels inui/panels/),RailsProviderinmodel/, and the panel registry inconfig/panels.tsx. Chunk 5 replaces the provider with a store.widgets/header(Header,UserMenu) andwidgets/footer(Footer), each with anindex.ts.AuthLayoutis gone.routes/_auth.tsxis a pathless layout with the same header, centered column and footer.login.tsxandauth.tsxmoved under_auth/, and their URLs are unchanged.AuthLayoutcouldn't live insharedbecause it renders two widgets.components/Articles/Feed.tsxis folded into the feed route (routes/_layout/index.tsx).developers.tsxsplit intofeatures/developer-api. The route keeps the heading and composesUpgradeButtonandApiReference.ApiReferencereturns a fragment so the page spacing stays the same.components/no longer exists.src/now holdsroutes/,widgets/,features/,shared/plusmain.tsx.routeTree.gen.tsregenerated.Tests
New specs, added before the move:
developers.spec.ts: endpoints listed, Upgrade opens "Coming soon", copy puts the response shape on the clipboard.login.spec.ts: the sign-in pages keep the site header and footer.articles.spec.ts: the footer counts the curated articles.login.spec.tsalso gets a fix for an existing race. Two tests requested a sign-in link for the superuser at the same time, and each request replaces the token. The suite failed every time I ranlogin.spec.tson its own; full runs passed only because of test scheduling. Those two tests now run serially.Checks
bun run buildgreen.bun run linthas no warnings left (no kebab-case misses).bun run lint:layers(Steiger): no problems.Generated by Claude Code