Skip to main content

Token Editor

The Custom Token Overrides section in the admin settings lets you fine-tune individual Nextcloud CSS tokens independently of your selected token set. Overrides apply as a live preview instantly, and are saved persistently when you click Save overrides.

Overview

The token editor is located in the NL Design System Theme section of the Appearance admin settings. It consists of:

  • 4 category tabs grouping the 53 editable tokens by area
  • Per-row editing with a color picker, hex input field, and reset button
  • Custom value badge indicating which tokens have been manually overridden
  • Save overrides button to persist all current values

Custom Token Overrides section showing the Download/Upload buttons, 4 category tabs, and the first token row with a custom value badge

Category Tabs

Tokens are grouped into 4 tabs. Click a tab to switch between categories. The active tab is highlighted.

Login Page & Branding (12 tokens)

Controls the primary brand colors used throughout the interface — buttons, links, highlights, and the login page header.

Login page & Branding tab showing 12 primary color tokens with color pickers and hex inputs

TokenCSS VariableDescription
Primary color--color-primaryMain brand color for buttons and accents
Primary text color--color-primary-textText on primary-colored backgrounds
Primary hover color--color-primary-hoverHover state for primary elements
Primary element color--color-primary-elementColor for active/selected elements
Primary element hover--color-primary-element-hoverHover state for primary elements
Primary element text--color-primary-element-textText on primary elements
Primary light--color-primary-lightLight tint of primary color
Primary light hover--color-primary-light-hoverHover state for light primary
Primary light text--color-primary-light-textText on light primary backgrounds
Primary element light--color-primary-element-lightLight element color
Primary element light text--color-primary-element-light-textText on light element backgrounds
Primary element light hover--color-primary-element-light-hoverHover state for light elements

Content Area (18 tokens)

Controls background colors, borders, and border radii — the structural appearance of the interface.

Content area tab showing background and border color tokens

Covers: main background, dark/darker backgrounds, placeholder colors, border colors, border radius values (small, element, body container), scrollbar color.

Buttons & Status (15 tokens)

Controls error, warning, success, and info state colors — used in alerts, status badges, validation messages, and notification banners.

Buttons & Status tab showing error, warning, success, and info color tokens

Covers: error color/hover/RGB/element/border, warning color/RGB/element, success color/RGB/element/border, info color/element, and favorite star color.

Typography (8 tokens)

Controls text colors and the font family stack.

Typography tab showing text color tokens and font family input

TokenCSS VariableDescription
Main text color--color-textPrimary body text color
Text max contrast--color-text-maxcontrastMaximum contrast text (accessible variant)
Text light--color-text-lightLight/inverted text
Text lighter--color-text-lighterLighter secondary text
Text error--color-text-errorError state text color
Text success--color-text-successSuccess state text color
Text warning--color-text-warningWarning state text color
Font family--font-faceFull font family stack

Token Row Layout

Each token row contains:

  • Token name — human-readable label (e.g., "Primary color")
  • CSS variable — the actual CSS custom property name (e.g., --color-primary)
  • Color picker — click to open a native color picker (color tokens only)
  • Hex input — type a hex value directly (e.g., #c00000)
  • Reset button (↺) — reverts the token to the value from the current token set

The color picker and hex input are always in sync — changing one updates the other instantly.

Custom Value Badge

When a token has been manually overridden (saved to custom-overrides.css), a small colored dot badge appears next to the token name.

Primary color row showing the "Custom value" badge dot next to the token name

The badge color matches the overridden value, making it easy to identify which tokens have been customized at a glance.

Clicking the reset button (↺) removes the override and the badge disappears — the token returns to the token set's default value.

Live Preview

Every change you make is applied immediately as a CSS variable override on the current page — you can see the effect instantly in the Preview section above the editor (shows sample primary and secondary buttons).

The live preview is not saved until you click Save overrides. Reloading the page without saving reverts all changes.

Saving Overrides

Click Save overrides at the bottom of the token editor to persist all current values.

Token editor bottom showing multiple token rows and the Save overrides button

On save:

  • Only tokens that differ from the token set's defaults are written to custom-overrides.css
  • Tokens at their default value are excluded from the saved file
  • A success toast notification confirms the save

The saved CSS file is served at every page load, so overrides persist for all users and survive browser refreshes.