Urgent.News

What's breaking now, across thousands of outlets.

Tech

A 794-line design report decided our colours and fonts, and I can now grep for which of its rules survived

Nakodo did not get a redesign. It got a research document first, and the CSS came out of it. The document is still in the repo at docs/design-direction.md : 794 lines, written before a single token changed, opening with the line "Research report. No project files were modified." I have been publishing engineering posts about this app for most of a month, which means I now have something more…

The 794-line design report that shaped Nakodo's visual identity was not a redesign, but rather a comprehensive research document. The CSS output from this document is now live, and the repository contains the final product. The report's diagnosis revealed that the app initially looked generic due to using default shades of chroma 0 OKLCH greys and Radix Nova components.

The method involved analyzing competitors' CSS to identify common fonts and colors. Three design directions were proposed: Ledger, Instrument, and On Air. The recommendation was to follow the Ledger direction, which is described as a "ledger" aesthetic with ink on warm paper.

The code now reflects the recommended design direction, using a single color ramp, no raw palette utilities, and avoiding gradients, glass, glow, and sparkles. The fonts were replaced, with the new display face being Besley and the UI face being Archivo, both paired with IBM Plex Mono. The site also implements dark mode as a separate mapping, rather than inverting the colors.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

All DB access lives in one place

One mistake I see in backend codebases: ORM queries scattered everywhere. Controllers query the DB. Services query the DB. Helpers query the DB. The little cron job queries the DB.

Two Packages, One Venv, Zero Excuses: Designing a Frictionless First Run**

I still have the CSV that got rejected. Adobe's uploader bounced a batch of 12 images because my metadata header had six columns instead of five. Not "wrong values in column six".

  • Author spent two hours correcting CSV metadata headers manually.
  • Created makemetadata.py script for platform-specific CSV generation.
  • Implemented uploadtracker.py to prevent duplicate uploads.

More from Monday 26 October →