THIOS DESIGN SYSTEM

How the pieces fit together
Five artifacts, one coherent brand — from visual design in Figma through code to every page on every subdomain.
1

Figma

Visual source of truth

Where design decisions get made. Mockups, prototypes, and a shared component library live here. Designers and stakeholders look at Figma to understand what the brand looks like.

Figma app Paid plan MCP-connected

Tokens Studio — two-way sync
2

tokens.json

The bridge between design and code

A single file that holds all the design decisions as structured data — colors, typography, spacing, shadows. W3C Design Tokens format, so any tool can read it.

Organized in three layers: primitive (raw values), semantic (role names), surface (context overrides like configurator dark mode).

212 tokens W3C format /lib/styles/tokens.json

Manually mirrored as CSS custom properties
3

main.css

The running code

18,000+ lines of real CSS. Uses the tokens as --color-primary, --spacing-md, etc. Contains every component style — buttons, cards, alerts, badges, auth layouts, handbook chapters.

Written once in /lib/styles/main.css, minified to main.min.css (254 KB) — that's what browsers actually download.

make sync-css — copied to 3 subdomains
4

Production Sites

What real users see

Four PHP sites, each loading the same main.css bundle. A make check-css-sync Makefile target fails the pre-deploy gate if any copy drifts out of sync.

thios.co
Main marketing
blog.thios.co
Blog
store.thios.co
E-commerce
partners.thios.co
Own theme

5. design-system.html

Live documentation. A standalone HTML page hosted at thios.co/design-system.html. Self-contained — shows every token, every component, every pattern with working examples.

This is the page developers and designers visit to answer "what does our .alert-success look like? What .btn-hero variants exist?"

One source, many surfaces
Fix a color in tokens.json, it flows through CSS, into every subdomain, and Figma stays in sync.
Drift detection built in
Pre-deploy checks fail if blog or store CSS falls out of sync with main. No silent rot.
Design ↔ Code loop
Figma Variables are the tokens. No "design vs. dev versions" of the brand to reconcile.