CONSTRUCT
Activities
Oct 3  5:56 PM ▤ 29%▭ 1.1☁ 12 B/s
Projects
Home
Projects
Downloads
Pictures
Trash
os
brand
Orchis-theme
tilingshell
CancelOpenDelete
Show hidden files Thumbnails ✓ Sort folders first
Copying 12 of 19 files · Show details
✓ Verified! Update pending↺ Rollback
~/construct
~/construct $ task palette
contrast:
  13.94  ok  dark text on view
   7.52  ok  dark text on selection
~/construct $ git log --oneline -2
19bf42d (HEAD -> main) Give the palette elevation
375a6b8 Name the fonts the desktop draws with
~/construct $  
⠿
Files
Term
Code
Web

Files on the left and Ghostty on the right; the top bar and the dock are GNOME Shell with Orchis, dash-to-panel and Vitals: opaque, ringed, 6px from the edge, dark in both modes. The windows follow the mode. Dark: the body one step above the desktop, views one more, a 1px ring outside. Light: the window on the desk with its ring in the ink's hue, the sidebar a shelf below it, the selected place a white sheet. The selected folder is a tint, Open the one solid button, the entry the one ring.

The shell's menus

Quick settings open with a password prompt, then the calendar. Toggles that are on are a tint with their icon on an accent disc; the focused toggle and the focused day carry the ring; today is accent text in bold, never a ring; the selected day is a tint. The prompt's Authenticate is the solid primary.

Activities
Oct 3  5:56 PM ▤ 29%▭ 1.1☁ 12 B/s
⠿
Files
Term
Code
Web
Activities
Oct 3  5:56 PM ▤ 29%▭ 1.1☁ 12 B/s
⠿
Files
Term
Code
Web

The overview

The ground is the boot's black, in both modes; the workspace, the desktop, is a card on it, lighter than what it stands on. The search entry is a menu surface: h and the ring.

Activities
Oct 3  5:56 PM
⠿
Files
Term
Code
Web

Accent: one scale

Seven levels, strongest first. Each owns one channel no other uses: the mark's shape, a solid fill, a small full mark, a ring, an underline, a tint with no edge, a transient sub-tint. The left column is the shell, dark in both modes; the right is GTK in this mode. "See as" at the top shows the page as protanopia, deuteranopia and tritanopia see it (Machado 2009), on an IPS panel, on an OLED at 30%, at 30% backlight in a lit room, and in grey.

1 Brandthe mark, boot, wallpaper; never chrome
CONSTRUCT
2 Primaryone per view, solid; focus inside it
CancelAuthenticateFocused
CancelOpenFocused
3 Selected, ona tint, no edge; light adds its line
Night LightWired08
ProjectsDownloadsMonthWeek
3a Text selectionone alpha; the text keeps its color
Search palette files
Search palette files
3b Selected on imagerya text frame and a badge, no ring
✓
✓
4 Indicatorsmall, full accent
✓
✓
5 Focusa 2px ring; nothing else rings
Do Not DisturbDark Style1403
DownloadsProjectsCancel
6 Linkaccent text, underlined
Show details
Show details
7 Decorationtransient overlays, the wallpaper
Authenticate Wired Do Not Disturb Show details

Open comparison: the primary as a fill or a tint

Not a rule: level 2 stays the solid accent (THEMING.md, "Primary is solid, in dark too"). Three renderings of the primary, each beside the selected state it must be told from, so the choice can be judged by eye. Under each: its label's contrast (4.5:1 is the floor) and its ΔE00 from the selected item (the P tier asks 30), as palette.py's contrast() and de00() give them for the palette of 2026-10-04; they are not recomputed when the palette changes.

Shell, on h (both modes)
GTK dark, on g
GTK light, on a
A Solidthe accent, label on_accent: today's rule
WiredAuthenticate
label 12.34:1 · ΔE00 51.3
ProjectsOpen
label 12.34:1 · ΔE00 56.2
ProjectsOpen
label 5.09:1 · ΔE00 40.3
B 28% tintlabel accent_text
WiredAuthenticate
label 4.79:1 · ΔE00 6.1: dark's active tint, a pressed selected item
ProjectsOpen
label 5.31:1 · ΔE00 6.8: dark's active tint
ProjectsOpen
label 4.64:1 · ΔE00 9.4
C 36% tintlabel accent_text
WiredAuthenticate
label 3.89:1, below 4.5 · ΔE00 11.3
ProjectsOpen
label 4.24:1, below 4.5 · ΔE00 12.1
ProjectsOpen
label 4.08:1, below 4.5 · ΔE00 13.2

Light: ink on paper

Dark is the wireframe glowing on ink; light is the same room as a technical drawing, with no more cyan. The window stands on the desk with a ring in the ink's hue, the sidebar is a shelf below it, every line is the muted ink at an alpha, the headerbars' rules run as one line, and the selected place is a white sheet with its label in bold and only its icon in the accent. Drawn light whatever the mode.

Activities
Oct 3  5:56 PM
Settings
DisplaysBuilt-in display
Identify Displays
Night Light…

Help

Display

The built-in panel, 2880 × 1800

ScaleText and windows150%
Refresh Rate120 Hz
Variable Refresh RateMatches the panel to the content

Night Light

Night LightSunset to sunrise
CancelApply
⠿
Files
Code
Web
GNOME's line: black at 12%, no hue
CONSTRUCT's line: the muted ink at 30%
Divider and ring: 20% inside a list, 40% around a window
Large title24 / 400 Title 120 / 700 Title 2, 315 / 700 Heading11 / 700 Body11 / 400 Caption, subtitle9 / 400 12:05 · 3.1 GBnumeric

Elevation

Each level one step lighter on the ink scale; in dark the 1px ring makes the edge, since black shadows do not show on ink. In light the desk is the ground, the window and the sidebar step up from it with their lines, and the shadow is only depth.

groundboot · Plymouth, overview, lock
0 · ethe desktop, the wallpaper
1 · fa GTK window's body, ring
1 · gtop bar, dock, headerbar, views
2 · hmenus, popovers, tooltips
3 · hdialogs, OSDs
0 · deskthe desktop, the wallpaper's ground
1 · ca window, ringed at 40%
1 · shelfthe sidebar, a step below
1 · aviews, cards, lists: the line, no shadow
2 · apopovers, menus: the line and a shadow

Perception

Every pair task palette holds beyond contrast: CIEDE2000 as drawn and in eight views - an IPS panel, an OLED and an IPS at 30%, the three dichromacies, protan and deutan on IPS - against the floor of its tier. E: surfaces at an edge (3 / 2); R: a 1px line (6 / 4); S1: a state that persists (10 / 6); S2: a step under the pointer (3 / 2); K: hue that carries meaning (20 / 10, tritan 6); P: the primary against a selected item (30 / 24); D: an overlay quieter than a selection. A pair below its tier passes only through the line drawn between it. The worst view is in bold.

Shape

libadwaita's steps - control, surface, sheet, pill - and concentric corners: quick settings is its toggles' 22 plus its 18 of padding, 40.

control 9
pill
surface 15
sheet 24
22 + 18 = 40

Accent and text, this mode

Surfaces (Orchis' scale)

Wallpapers

Each pair is for one thing. The default is the identity: the boot's last frame held still. Quiet and mark are its calm forms, for long sessions: quiet the same drawing at a third of the level and without the glow, mark only the brand mark, low in the corner. Offset is functional: the room moved out of the window area, so windows stand on an empty field. Each of the three fails task wallpaper unless it is calmer than the default of its mode. Light draws the room in the ink's hue on the desk; only the mark keeps the accent.

Default, darkDefault, light
CONSTRUCTconstruct-dark.png, construct-light.png: the boot's drawing, the mark at 0.4222 of the height
Quiet, darkQuiet, light
CONSTRUCT Quietconstruct-quiet-*.png: the outline at most ΔE00 15 from the ink, the grid 6
Offset, darkOffset, light
CONSTRUCT Offsetconstruct-offset-*.png: the room at 0.62, low on the right third
Mark, darkMark, light
CONSTRUCT Markconstruct-mark-*.png: the outline alone, 201px from the corner, clear of a 16:9 or 3:2 crop

Identity

The last boot frame
BootPlymouth's last frame on black, the mark's centre at 42.2% of the height, where the wallpaper draws it
Activities icon
Activities buttonlogos/construct-activities.svg: white, never the accent
Installer icon
Install Constructlogos/io.github.construct_linux.Installer.svg, in Tela's geometry

Where each piece goes

RepositoryTakesFrom
Orchis-themeaccent, its text, text, border and semantic colors per variant, the background scale, tints (rest, hover, active, decoration, track), selection, light's desk, shelf and lines, radii; the shell's levels (bars g, menus h, the ring); Activities iconpalette/construct.scss, logos/construct-activities.svg
Tela-icon-themefolder and glyph color; the #549bff software family recoloredpalette.toml (icons), recolored in the sources
Bibata_CursorBibata-Modern-Construct and -Rightpalette.toml (cursor), build.py's COLORS
dash-to-panel, tilingshellthe dock: #panel's color and the running dot from the shell theme; its focus highlight (the rest tint, 18%) and tilingshell's window-border-color (the accent: focus)Orchis; dconf keys in the image's 00-construct
Vitals, caffeine, clipboard-indicator, appindicator, gsconnectnothing of their own: the shell theme draws them-
GhosttyConstruct Dark and Lightpalette/ghostty/, seeded once by construct theme
VS Codethe built-in construct-theme extensionpalette/vscode/
The imagePlymouth's prompt and the mark's place, the harness's checks, the four wallpaper pairspalette/construct.json, plymouth/sequence.json, wallpapers/
libadwaita appsthe nearest fixed accent, for the portal and Settings' swatchesgnome.accent = teal