Repository navigation
Conversation
mortondev
force-pushed
the
feat/portal-design-v2-phase2-appearance
branch
from
October 30, 2026 20:19
646818c to
6355514
Compare
Settings › Labs gains a switch for the portalDesignV2 flag, next to Copilot on Home, with its label and description in all 13 catalogues. The two switches share one component.
On the design engine, Settings › Portal opens on Appearance, with today's menu and welcome message under a Navigation tab until they move into the design. The panel edits the design draft: - Brand: mode, the accent, background and text colours with more behind a toggle, dark colours, heading and body fonts, heading weight and corners. - Sections: menu style, card style, density, filter side and page width. Every choice is a drawn tile. The draft saves shortly after each change, so leaving the page loses nothing. The preview shows the draft: the admin resolves it with the code the server uses and posts the CSS, the data-qb-* attributes and the fonts into the frame, which puts the saved values back when the draft ends. The draft bar says how many changes are waiting, measured against what visitors see now, and offers to discard the draft or review it. Review and publish lists each change with its value now and in the draft, notes the colours the solver adjusted, refuses a design whose text cannot be read, and publishes with an optional note. History lists versions and restores one after a confirmation.
mortondev
force-pushed
the
feat/portal-design-v2-phase2-appearance
branch
from
October 30, 2026 20:40
6355514 to
e5387c9
Compare
A route's loader ships in the entry chunk, so the Settings › Portal loader's import of the design queries (and the server functions they call) reached every page; the help center's script budget tipped over. The loader now imports them only for a workspace on the design engine. The preview frame's design channel (reading a draft design and setting its attributes) moves into a module the frame loads when the first design arrives, so visitors do not download it either.
Member
Author
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.
The fourth of the stack that builds a new design engine for the portal. This one adds the Appearance tab, where a person edits the design draft, previews it and publishes it, and a Labs switch to turn the engine on. With the switch off, nothing changes.
Labs
Settings › Labs gains a switch for the new portal design, next to Copilot on Home, with its label and description in all 13 catalogues.
Appearance
On the design engine, Settings › Portal opens on Appearance. Today's menu and welcome message sit under a Navigation tab until they move into the design. A workspace on the legacy theme keeps the page it has always had.
data-qb-*attributes and the fonts into the frame, so the preview cannot drift from what visitors get. The frame applies them over the saved design and puts the saved values back when the draft ends. Light and dark follow the design's mode.The editor state now carries
live, the design visitors see now, which the REST response documents too.None of this reaches visitors: the Settings › Portal loader imports the design queries only on the design engine (a loader's imports ship in the entry chunk), and the preview frame's design channel loads only when the first draft design arrives.
Screens
Checked in a real browser against the production build on the bench database: Brand, Sections with three changes applied in the preview (pill menu, raised cards, compact density), and Review and publish listing them. No console errors.
Verification
data-qb-*attributes, and restores the saved values;