CUPS — the print system every Linux box uses — ships with a web UI whose
templates haven’t been seriously redesigned in fifteen years. cups_tailwind
re-authors all 70 of those templates with Tailwind v4, adds dark-mode and
themeable color presets, replaces the cupsd.conf textarea with a CodeMirror
6 editor that understands cupsd’s directive syntax, and ships with a
reversible installer that backs up the upstream files before touching them.
Everything stays compatible with CUPS’ own template syntax ({var},
{cond?yes:no}, {[loop]…}), so it’s a true drop-in: rsync the
templates/ and doc-root/ folders to /usr/share/cups/, bring CUPS
back up, and the new UI is live.
Highlights
- 70 templates re-authored in Tailwind v4 — admin, jobs, classes, printers, forms, and all 30+ status/confirmation pages
- Touch-friendly — 44 px targets, mobile-responsive table column hiding, 16 px form inputs to suppress iOS zoom
- Themeable — seven color presets (DietPi, Ocean, Sunset, Grape, Teal,
Rose, Monochrome) and three card-hover border styles, persisted to
localStorageper browser - Syntax-highlighted
cupsd.confeditor — CodeMirror 6 with a custom simple-mode parser for cupsd’s Apache-style block syntax - Reversible install —
install.shbacks up/usr/share/cupsonce before deploying;uninstall.shrsyncs it back. An APT post-invoke hook re-applies the theme automatically after futurecupspackage upgrades. - CI — GitHub Actions builds a release tarball on every
v*tag push
Currently driving a Pi Zero 2 W LP620 print server in my homelab.