Skip to content
🤷

Forgive us! These docs are a work in progress. Some pages may be incomplete or describe features that aren't quite finished yet. Farkitect is in early development and we don't recommend using it for real work just yet. Feel free to explore — just be aware that things are still being built.

How Colours Work in Light and Dark Mode

Farkitect draws every diagram in the theme you’re using — light or dark. A colour that reads well on a light canvas can nearly disappear on a dark one (a pale grey line, a mid-grey border), and the reverse. So every colour on a diagram has two values: one for light mode and one for dark.

Most of the time the two are the same, and you never notice. When they need to differ — a border that needs to be dark on white and light on near-black — you set each side separately.

Each colour setting holds a light value and a dark value. In the metamodel editor and the Appearance section they sit side by side, with a link between them:

  • Linked (=) — editing one side sets both. New colours start linked, and a pair opens linked when both sides match.
  • Unlinked (≠) — each side is set on its own.

Either side can also be Auto.

Auto isn’t “no colour”. It means “let the theme decide”, and it’s often the best choice — especially for borders, lines and text. What Auto gives depends on the setting:

Setting Auto in light mode Auto in dark mode
Node fill White Dark grey
Node border Charcoal (#3F3F46) Off-white (#E4E4E7)
Node text Black or white, whichever contrasts with the fill Black or white, whichever contrasts with the fill
Folded corner The fill, about 15% darker The fill, about 15% lighter
Edge line Charcoal (#3F3F46) Off-white (#E4E4E7)
Edge labels The theme’s label colours The theme’s label colours

Text that sits outside a node (a label placed below a symbol) uses the theme’s label colour on Auto. A folded corner on a node with no fill takes the theme’s border colour.

A node or edge takes each colour from the first of these that sets it, for the current theme:

  1. This diagram — an override set in the Appearance section. It applies to this one occurrence, on this one diagram.
  2. The type — the element type’s or relationship type’s colour, set in the metamodel.
  3. Auto — the theme’s default, as above.

Each side falls through on its own. If a diagram overrides only the light side of a fill, dark mode uses the type’s dark fill. The Appearance section shows where each value comes from: Default #AFCFD8 · M2 means “inherited from the metamodel”, Default #3F3F46 · Auto means “the theme’s default”.

Two things always use the theme’s colours, whatever is set:

  • Non-compliant nodes and edges (ones that break the metamodel’s rules) keep their grey, so the warning can’t be hidden by a colour choice.
  • Chrome — the canvas, grid, label backgrounds and compartment dividers — is part of the theme, not the notation. The canvas colour can’t be set.

Because you choose colours for each theme, you can choose ones that are hard to read. Farkitect shows a ⚠ beside a colour that falls below a readable contrast in either theme:

  • text on its fill, or a label on its background: below 4.5 : 1;
  • a line, or the border of an unfilled node, against the canvas: below 3 : 1.

These are the WCAG AA thresholds. The warning never stops you saving — a subtle border is sometimes exactly what you want — and Auto colours never trigger it.

A drop shadow in light mode is a soft dark shadow below and to the right of the node. On a near-black canvas a dark shadow can’t be seen, so in dark mode the same setting draws a faint white halo in the same place. Shadows follow the node’s true outline, including folded corners, chamfers, chevron points and diamonds.

  • Switching the app theme redraws every diagram with that theme’s colours.
  • The theme toggle on a diagram’s toolbar shows just that diagram in the other theme — useful for checking both without changing the app.
  • An exported image or PDF uses the diagram’s current theme. To export in the other theme, switch the diagram’s toggle first.

The metamodels Farkitect ships with were given curated palettes:

  • Their fills are light pastels that read on either canvas, so each fill is the same in both themes.
  • Their lines were mostly light greys chosen for a dark canvas, and nearly invisible on a light one. They’re now Auto: charcoal in light mode, off-white in dark.
  • The few line colours that carry meaning keep their colour, with a dark value chosen to stay readable — for example M2 Common’s Trace, Realization, Annotation and Dependency lines are green (#16A34A) in light mode and a brighter green (#4ADE80) in dark.

When this arrived, every project was converted in place:

  • Every colour became the same colour in both themes, so nothing changed its look except as below.
  • Grey lines and borders — black, white and the greys between — became Auto, so they now follow the theme.
  • In projects’ copies of the built-in metamodels, the curated palettes were applied where a line still had its original colour.
  • Every other colour, including any colour someone had chosen, was kept exactly as it was.

Older .farki files are converted the same way when you import them — see Format versions.

Farkitect

Model anything.

“Welcome back — your diagrams have been plotting without you.”


Release 282 · 14 Oct 2026

New video: Exploring the Explorer, a four-minute tour of the Explorer panel

Release
282
Released
14 Oct 2026, 00:03 UTC
Built
14 Oct 2026, 00:03 UTC
Environment
Production
Surface
Docs
Commit
a9ad7d2
Branch
main