Home
cd ../playbooks
Developer ToolsBeginner

Minimalist UI Design Skill: Editorial, Monochrome Interfaces

A frontend design system that enforces warm monochrome, bento grids, and editorial typography — the Notion/Linear look, banned from gradients, heavy shadows, and Inter

5 minutes
By Leonxlnx (Taste Skill)Source
#frontend#minimalist#editorial#design-system#ui

Every AI-built UI defaults to Inter, blue gradients, and shadow-lg cards. This playbook forces the opposite: warm off-white canvases, editorial serif headings, pastel accents used only for semantic meaning, and shadows so subtle they're almost invisible.

Who it's for: frontend developers, indie hackers building SaaS products, designers prototyping with Claude Code, teams who want a Notion or Linear look without a design team

Example

"Build a settings page for my app" → A warm off-white interface with a serif page heading, 1px bordered cards with no shadow, pale pastel status badges, and macOS-style faux window chrome for embedded previews, instead of a generic Tailwind template

CLAUDE.md Template

New here? 3-minute setup guide → | Already set up? Copy the template below.

# Premium Utilitarian Minimalism & Editorial UI

Clean editorial-style interfaces. Warm monochrome palette, typographic contrast, flat bento grids, muted pastels. No gradients, no heavy shadows.

## Protocol Overview

**Name:** Premium Utilitarian Minimalism & Editorial UI

**Description:** An advanced frontend engineering directive for generating highly refined, ultra-minimalist, "document-style" web interfaces analogous to top-tier workspace platforms. This protocol strictly enforces a high-contrast warm monochrome palette, bespoke typographic hierarchies, meticulous structural macro-whitespace, bento-grid layouts, and an ultra-flat component architecture with deliberate muted pastel accents. It actively rejects standard generic SaaS design trends.

## Absolute Negative Constraints (Banned Elements)

The AI must strictly avoid the following generic web development defaults:

- DO NOT use the "Inter", "Roboto", or "Open Sans" typefaces.
- DO NOT use generic, thin-line icon libraries like "Lucide", "Feather", or standard "Heroicons".
- DO NOT use Tailwind's default heavy drop shadows (e.g., `shadow-md`, `shadow-lg`, `shadow-xl`). Shadows must be practically non-existent or heavily customized to be ultra-diffuse and low opacity (< 0.05).
- DO NOT use primary colored backgrounds for large elements or sections (e.g., no bright blue, green, or red hero sections).
- DO NOT use gradients, neon colors, or 3D glassmorphism (beyond subtle navbar blurs).
- DO NOT use `rounded-full` (pill shapes) for large containers, cards, or primary buttons.
- DO NOT use emojis anywhere in code, markup, text content, headings, or alt text. Replace with proper icons or clean SVG primitives.
- DO NOT use generic placeholder names like "John Doe", "Acme Corp", or "Lorem Ipsum". Use realistic, contextual content.
- DO NOT use AI copywriting clichés: "Elevate", "Seamless", "Unleash", "Next-Gen", "Game-changer", "Delve". Write plain, specific language.

## Typographic Architecture

The interface must rely on extreme typographic contrast and premium font selection to establish an editorial feel.

- **Primary Sans-Serif (Body, UI, Buttons):** Use clean, geometric, or system-native fonts with character. Target: `font-family: 'SF Pro Display', 'Geist Sans', 'Helvetica Neue', 'Switzer', sans-serif`.
- **Editorial Serif (Hero Headings & Quotes):** Target: `font-family: 'Lyon Text', 'Newsreader', 'Playfair Display', 'Instrument Serif', serif`. Apply tight tracking (`letter-spacing: -0.02em` to `-0.04em`) and tight line-height (`1.1`).
- **Monospace (Code, Keystrokes, Meta-data):** Target: `font-family: 'Geist Mono', 'SF Mono', 'JetBrains Mono', monospace`.
- **Text Colors:** Body text must never be absolute black (`#000000`). Use off-black/charcoal (`#111111` or `#2F3437`) with a generous `line-height` of `1.6` for legibility. Secondary text should be muted gray (`#787774`).

## Color Palette (Warm Monochrome + Spot Pastels)

Color is a scarce resource, utilized only for semantic meaning or subtle accents.

- **Canvas / Background:** Pure White `#FFFFFF` or Warm Bone/Off-White `#F7F6F3` / `#FBFBFA`.
- **Primary Surface (Cards):** `#FFFFFF` or `#F9F9F8`.
- **Structural Borders / Dividers:** Ultra-light gray `#EAEAEA` or `rgba(0,0,0,0.06)`.
- **Accent Colors:** Exclusively use highly desaturated, washed-out pastels for tags, inline code backgrounds, or subtle icon backgrounds.
  - Pale Red: `#FDEBEC` (Text: `#9F2F2D`)
  - Pale Blue: `#E1F3FE` (Text: `#1F6C9F`)
  - Pale Green: `#EDF3EC` (Text: `#346538`)
  - Pale Yellow: `#FBF3DB` (Text: `#956400`)

## Component Specifications

- **Bento Box Feature Grids:**
  - Utilize asymmetrical CSS Grid layouts.
  - Cards must have exactly `border: 1px solid #EAEAEA`.
  - Border-radius must be crisp: `8px` or `12px` maximum.
  - Internal padding must be generous (e.g., `24px` to `40px`).
- **Primary Call-To-Action (Buttons):**
  - Solid background `#111111`, text `#FFFFFF`.
  - Slight border-radius (`4px` to `6px`). No box-shadow.
  - Hover state should be a subtle color shift to `#333333` or a micro-scale `transform: scale(0.98)`.
- **Tags & Status Badges:**
  - Pill-shaped (`border-radius: 9999px`), very small typography (`text-xs`), uppercase with wide tracking (`letter-spacing: 0.05em`).
  - Background must use the defined Muted Pastels.
- **Accordions (FAQ):**
  - Strip all container boxes. Separate items only with a `border-bottom: 1px solid #EAEAEA`.
  - Use a clean, sharp `+` and `-` icon for the toggle state.
- **Keystroke Micro-UIs:**
  - Render shortcuts as physical keys using `<kbd>` tags: `border: 1px solid #EAEAEA`, `border-radius: 4px`, `background: #F7F6F3`, using the Monospace font.
- **Faux-OS Window Chrome:**
  - When mocking up software, wrap it in a minimalist container with a white top bar containing three small, light gray circles (replicating macOS window controls).

## Iconography & Imagery Directives

- **System Icons:** Use "Phosphor Icons (Bold or Fill weights)" or "Radix UI Icons" for a technical, slightly thicker-stroke aesthetic. Standardize stroke width across all icons.
- **Illustrations:** Monochromatic, rough continuous-line ink sketches on a white background, featuring a single offset geometric shape filled with a muted pastel color.
- **Photography:** Use high-quality, desaturated images with a warm tone. Apply subtle overlays (`opacity: 0.04` warm grain) to blend photos into the monochrome palette. Never use oversaturated stock photos. Use reliable placeholders like `https://picsum.photos/seed/{context}/1200/800` when real assets are unavailable.
- **Hero & Section Backgrounds:** Sections should not feel empty and flat. Use subtle full-width background imagery at very low opacity, soft radial light spots (`radial-gradient` with warm tones at `opacity: 0.03`), or minimal geometric line patterns to add depth without breaking the clean aesthetic.

## Subtle Motion & Micro-Animations

Motion should feel invisible — present but never distracting. The goal is quiet sophistication, not spectacle.

- **Scroll Entry:** Elements fade in gently as they enter the viewport. Use `translateY(12px)` + `opacity: 0` resolving over `600ms` with `cubic-bezier(0.16, 1, 0.3, 1)`. Use `IntersectionObserver`, never `window.addEventListener('scroll')`.
- **Hover States:** Cards lift with an ultra-subtle shadow shift (`box-shadow` transitioning from `0 0 0` to `0 2px 8px rgba(0,0,0,0.04)` over `200ms`). Buttons respond with `scale(0.98)` on `:active`.
- **Staggered Reveals:** Lists and grid items enter with a cascade delay (`animation-delay: calc(var(--index) * 80ms)`). Never mount everything at once.
- **Background Ambient Motion:** Optional. A single, very slow-moving radial gradient blob (`animation-duration: 20s+`, `opacity: 0.02-0.04`) drifting behind hero sections. Must be applied to a `position: fixed; pointer-events: none` layer. Never on scrolling containers.
- **Performance:** Animate exclusively via `transform` and `opacity`. No layout-triggering properties (`top`, `left`, `width`, `height`). Use `will-change: transform` sparingly and only on actively animating elements.

## Execution Protocol

When tasked with writing frontend code (HTML, React, Tailwind, Vue) or designing a layout:

1. Establish the macro-whitespace first. Use massive vertical padding between sections (e.g., `py-24` or `py-32` in Tailwind).
2. Constrain the main typography content width to `max-w-4xl` or `max-w-5xl`.
3. Apply the custom typographic hierarchy and monochromatic color variables immediately.
4. Ensure every card, divider, and border adheres strictly to the `1px solid #EAEAEA` rule.
5. Add scroll-entry animations to all major content blocks.
6. Ensure sections have visual depth through imagery, ambient gradients, or subtle textures — no empty flat backgrounds.
7. Provide code that reflects this high-end, uncluttered, editorial aesthetic natively without requiring manual adjustments.

Get new playbooks like this one

One email a week with new Claude Code workflows. Free, like everything here.

No spam. Unsubscribe anytime.

README.md

What This Does

This is a frontend UI design system, not a business or pricing playbook (the site also has "minimalist-pricing" and "minimalist-mvp" for those topics — this one is purely about visual interface design). It gives Claude a strict rule set for building ultra-minimalist, "document-style" interfaces in the style of Notion, Linear, and other top-tier workspace tools.

It works by banning the generic defaults first: no Inter/Roboto/Open Sans, no Lucide/Feather icons, no heavy Tailwind shadows, no gradients, no pill-shaped large containers, no emojis, no AI copywriting clichés. Then it defines what to use instead: a warm monochrome palette, an editorial serif for headings paired with a geometric sans for UI, bento-grid layouts, and motion so subtle it's felt more than seen. It comes from Leonxlnx's "taste-skill" project, a set of anti-slop frontend design skills for AI coding agents.


Quick Start

Step 1: Create a Project Folder

mkdir -p ~/Documents/MinimalistUI

Step 2: Download the Template

Click Download above, then:

mv ~/Downloads/CLAUDE.md ~/Documents/MinimalistUI/

Step 3: Start Working

cd ~/Documents/MinimalistUI
claude

Describe the page or component you need. Claude applies the typographic hierarchy, warm monochrome palette, and bento-grid rules automatically.


Banned by Default

The template opens with a list of generic web defaults Claude must avoid:

  • Inter, Roboto, or Open Sans typefaces
  • Lucide, Feather, or standard Heroicons
  • Tailwind's default heavy shadows (shadow-md, shadow-lg, shadow-xl)
  • Bright primary-colored hero sections, gradients, neon, glassmorphism
  • rounded-full on large containers, cards, or primary buttons
  • Emojis anywhere in code, copy, or alt text
  • Placeholder names like "John Doe" or "Acme Corp"
  • AI copywriting clichés: "Elevate," "Seamless," "Unleash," "Next-Gen," "Delve"

Typography & Color System

  • Body/UI: geometric sans with character — SF Pro Display, Geist Sans, Switzer.
  • Headings: editorial serif — Newsreader, Playfair Display, Instrument Serif — with tight tracking (-0.02em to -0.04em) and tight leading (1.1).
  • Code/metadata: monospace — Geist Mono, SF Mono, JetBrains Mono.
  • Text color: never pure black. Off-black/charcoal (#111111 or #2F3437) for body, muted gray (#787774) for secondary text.
  • Canvas: pure white or warm bone (#F7F6F3, #FBFBFA). Borders are ultra-light gray (#EAEAEA).
  • Accents: desaturated pastels only, tied to meaning — pale red, blue, green, yellow, each with a matching dark text color for contrast.

Component Rules

  • Bento grids: asymmetrical CSS Grid, 1px solid #EAEAEA borders, 8–12px radius max, generous 24–40px padding.
  • Primary buttons: solid #111111 fill, white text, 4–6px radius, no shadow, hover shifts to #333333 or scales to 0.98.
  • Tags/badges: pill-shaped, uppercase, wide tracking, pastel background only.
  • Accordions: no container box — separate items with a single bottom border, toggle with a plain +/-.
  • Keystrokes: rendered as <kbd> tags with a light border and monospace font.
  • Faux-OS chrome: wrap software mockups in a white top bar with three small gray circles, mimicking macOS window controls.

Motion

Motion should be felt, not noticed.

  • Scroll-triggered fade-ins (translateY(12px) + opacity, 600ms, cubic-bezier(0.16, 1, 0.3, 1)) via IntersectionObserver, never scroll listeners.
  • Card hover lifts with an ultra-subtle shadow shift, buttons scale to 0.98 on active.
  • List items stagger in with an 80ms cascade delay — nothing mounts all at once.
  • Animate only transform and opacity, never layout-triggering properties.

Tips

  • Establish macro-whitespace first — py-24 to py-32 between sections — before touching typography or color.
  • Constrain body content to max-w-4xl or max-w-5xl; the editorial feel depends on line length, not just font choice.
  • Use picsum.photos/seed/{context}/1200/800 as a placeholder image source when real assets aren't available yet — desaturate and add warm grain to match the palette.
  • Don't leave sections visually flat. Add a low-opacity radial gradient or subtle geometric line pattern behind hero content so it has depth without breaking the minimalist rules.

Limitations

  • This is a UI design skill, not a business/strategy playbook. If you're looking for minimalist pricing pages or MVP scoping, use the separate "minimalist-pricing" or "minimalist-mvp" playbooks on this site instead.
  • The palette is intentionally narrow. Products that need strong brand color or high visual energy will fight this system.
  • Heavy reliance on a licensed editorial serif (Lyon Text, Optimized) may require font licensing; the template lists open alternatives like Newsreader and Instrument Serif as fallbacks.

$Related Playbooks

Developer Tools

Mermaid Tools

Extract Mermaid diagrams from markdown files and render them to high-quality PNG images using bundled scripts — turning text diagrams into shareable visuals.

5 minutes
Beginner
Developer Tools

Minimalist MVP Scoping

Scope a weekend-shippable MVP using the manual → processized → productized progression. Build as little as possible; charge from day one.

5 minutes
Beginner
Developer Tools

n8n Workflow Builder

Automate document workflows with n8n - 7800+ workflow templates

10 minutes
Advanced
Developer Tools

Nuxt UI Component Guidance

Build interfaces correctly with @nuxt/ui v4 — five core rules (UApp wrapper, semantic colors, reading generated theme files for real slot names, override priority, icon naming), a task-to-focus-area routing table, the Nuxt UI MCP server for live component API lookups, and full installation for both Nuxt and standalone Vue.

5 minutes
Beginner
Developer Tools

Office MCP Server Setup

MCP server with 39 tools for Word, Excel, PowerPoint, PDF, OCR operations

10 minutes
Intermediate
Developer Tools

Tech Debt Analyzer

Identify, analyze, document, and track technical debt in JavaScript/TypeScript codebases with automated detection and prioritized remediation plans.

10 minutes
Intermediate
Developer Tools

Test Specialist

Comprehensive JavaScript/TypeScript testing guidance with test writing, bug analysis, coverage analysis, and proactive issue detection.

10 minutes
Intermediate
Developer Tools

Accessibility Engineering for Components

Build accessible UI components at the code level, not just the audit level — 14 concrete engineering principles (focus-visible over bare :focus, roving tabindex for composite widgets, inert-based modal focus trapping, WCAG 2.5.8 hit-area minimums), a common-mistakes table with fixes, and a severity-rated review format ending in a hard Block/Needs-changes/Approve verdict.

5 minutes
Intermediate
Developer Tools

Adversary Emulation: MuddyWater

An intelligence-grounded, authorized purple-team emulation profile for MuddyWater (MITRE ATT&CK G0069), Iran's MOIS-linked cyber-espionage group — attribution, targeting, representative TTPs by ATT&CK tactic, emulation guidance mapped to generic red-team tooling, and paired detection/defense recommendations for every offensive technique, all under an explicit authorized-use caveat.

15 minutes
Advanced
Developer Tools

Adversary Emulation: Turla

An intelligence-grounded, authorized purple-team emulation profile for Turla (MITRE ATT&CK G0010), Russia's FSB-linked espionage group — attribution, distinctive TTPs (satellite C2 hijacking, steganographic email backdoors, parasitizing rival APT infrastructure), emulation guidance mapped to generic red-team tooling, and paired detection recommendations, under an explicit authorized-use and lab-only caveat for rootkit techniques.

15 minutes
Advanced
Developer Tools

AI Agent Red Team Methodology

A first-principles methodology for authorized red-team exercises against AI products, agents, MCP servers, skills, and repositories — capability and trust-boundary modeling, AI-specific attack hypothesis families (prompt injection, tool misuse, data leakage, SSRF), harmless-proof testing with canaries, one-variable-at-a-time adaptive iteration, and business-language evidence-based reporting.

10 minutes
Advanced
Developer Tools

Contribution PR Review

Review an external contributor's PR the way an open-source maintainer should — check automated bot security findings first (across every channel they might post to), watch specifically for suspicious AGENTS.md or workflow-permission changes, scale size and test-coverage expectations by contributor experience, and separate intent/scope alignment from code quality that bots already covered.

10 minutes
Intermediate

Browse all Developer Tools playbooks →