spectr.pm vs Todoist
Two design systems side by side, measured from the live sites — colour, type, shape, depth, components, states and responsive behaviour.
Ground and ink
Each side painted in its own measured canvas, ink, muted and primary roles.
spectr.pm
Heading on canvas
Body copy in the measured muted role.
Primary actionTodoist
No colour roles measured on this side, so there is no ground to paint. The palette below is still real; re-extracting the site fills this in.
Palette
Named roles first, then every colour measured without one.
spectr.pm
- canvas
#0D0D0D - surface
#171717 - ink
#FAFAFA - hairline
#2E2E2E - primary
#894DEF - on-primary
#FAFAFA
10 more, no measured role
Todoist
- surface
#F9F7F6 - ink
#25221E - primary
#25221E - on-primary
#FFFFFF
1 more, no measured role
Type scale
Set at the measured size, weight, tracking and leading. Brand typefaces are not loaded, so the metrics are real and the letterforms are not.
spectr.pm
hero-display
288px · 900 · shown smaller
display
280px · 900 · shown smaller
display
252px · 900 · shown smaller
display
200px · 900 · shown smaller
display
132px · 800 · shown smaller
display
99px · 600 · shown smaller
h2
92px · 800 · shown smaller
Todoist
h1
55px · 600 · shown smaller
h2
44px · 600 · shown smaller
h2
38px · 600
h1
38px · 600
h3
38px · 600
h3
31px · 600
h2
31px · 600
Corners
Drawn at the measured radii.
spectr.pm
0px
Todoist
0px
10px
8px
pill
9px
13px
Spacing
One shared scale across both sides, so the bars are directly comparable.
spectr.pm
48121624283240Todoist
48121620243240Depth
Shadows cast on each side's own ground.
spectr.pm
sm
Todoist
sm
md
lg
Buttons
Rendered from the measured computed styles.
spectr.pm
Todoist
The measured values behind the panels above.
At a glance
Colour roles
#894DEF#25221E#DE483A#0D0D0D—#171717#F9F7F6#FAFAFA#25221E#B8B8B8—#2E2E2E—#FAFAFA#FFFFFFFull palette
Every colour each extraction kept, including the ones with no measured role.
Typography
Shape and rhythm
Depth
Components
Interaction states
Read from each site's own stylesheets. An empty side means they were cross-origin and unreadable.
Responsive
Themes
Measured on the live site, not derived.
How this was measured
Differences here are ours, not the brands'.
Measured by DesignMD from the live sites. Compare two others. Generate a DESIGN.md for your own site.







