Skip to content

Restyle the factory UI with the Render design system - #36

Merged
anurag merged 1 commit into
mainfrom
ag/ui-render-design
Sep 24, 2026
Merged

anurag merged 1 commit into
mainfrom
ag/ui-render-design

Conversation

@anurag

@anurag anurag commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

Summary

The factory UI used a blue gradient, rounded panels with shadows, and the Inter face, which is not the look of Render. This change restyles it with the foundations of the Render design system, in the dark palette only, as the UI did before. The text of the page does not change.

Changes

public/style.css (new):

  • Semantic color tokens from Render's dark palette. Each component refers only to them.
  • Roobert for headings, PP Neue Montreal for text, and PP Neue Montreal Mono for labels, stages, and dates.
  • 1px borders, square corners, and no shadows.
  • Purple only for the primary button on hover, the link to the live website, and one phrase of the headline.
  • Green for stages that are done and runs that deployed, and red for failures. The stage that runs now is white, with a square that pulses. The pulse stops when the system asks for reduced motion.
  • One column below 1024 px. Below 768 px, the stages are one column and the form buttons are full width.

public/index.html:

  • A top bar with the Render logo, as inline SVG in the color of the text.
  • The open fallbacks of the brand faces, Manrope and Roboto Mono, from Google Fonts. The brand faces have a license for internal use only, and this repository is public. A machine that has Roobert and PP Neue Montreal uses them first.
  • The same element IDs, so app.js finds each element as before.

public/app.js: the history shows each status in its own element, so that the stylesheet can color it.

tests/gateway.test.ts: the test of Basic Auth looked for the headline as one string, and the purple phrase now divides it in the HTML. The test looks for the title of the page.

The gateway still serves only /, /app.js, and /style.css, all behind Basic Auth.

Test plan

  • npm run check: Biome, tsc, and 376 tests pass.
  • Checked in a browser at 1280 px and at 375 px, against a stand-in for /ui/apps: a run that builds, a deployed run, a failed build, the history, and the delete dialog.
  • Check the page on the deployed gateway after the merge.

🤖 Generated with Claude Code

The UI used a blue gradient, rounded panels with shadows, and the Inter
face, which is not the look of Render. Now it uses the foundations of
the Render design system, in the dark palette only, as the UI did
before:

- Semantic color tokens. Each component refers only to them.
- Roobert for headings, PP Neue Montreal for text, and PP Neue Montreal
  Mono for labels, stages, and dates. The page loads the open fallbacks,
  Manrope and Roboto Mono, from Google Fonts: the brand faces have a
  license for internal use only, and this repository is public.
- 1px borders, square corners, and no shadows.
- Purple only for the primary button on hover, the link to the live
  website, and one phrase of the headline.
- Green for stages that are done and runs that deployed, and red for
  failures. The history shows each status in its own element, so that
  the stylesheet can color it.
- A top bar with the Render logo, as inline SVG in the color of the
  text.

The text of the page does not change, so the talk track of the demo
still agrees with it. The gateway test looked for the headline as one
string, and the purple phrase now divides it in the HTML. The test now
looks for the title of the page.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@anurag
anurag merged commit d90b38b into main Sep 24, 2026
3 checks passed
@anurag
anurag deleted the ag/ui-render-design branch September 24, 2026 06:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant