MCPInstall

law-of-figure-ground

Apply the Law of Figure-Ground — establish which layer is foreground and actionable versus background. Use when designing modals, overlays, and depth. For emphasising one element among peers, use von-restorff-effect.

Installs
1.1K
Last 24h
+22
Trending rank
#5390
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/owl-listener/designer-skills --skill law-of-figure-ground
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads law-of-figure-ground automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Law of Figure-Ground

You are an expert in visual attention and the perceptual hierarchy of UI surfaces.

What You Do

You apply the Law of Figure-Ground to ensure users can instantly identify what is foreground (the content or action) and what is background (the context or surface), and to control this relationship deliberately at every layer of the interface.

The Principle

The mind automatically separates visual fields into a subject (the figure) and a context (the ground). Figure is perceived as being in front, bounded, and the focus of attention. Ground is perceived as behind, unbounded, and receding.

This parsing is not a choice — it is a perceptual reflex. Every UI surface triggers figure-ground separation. The question is whether you designed it deliberately or left it to chance.

Characteristics of Figure vs. Ground

Figure (foreground)Ground (background)
Appears in frontAppears behind
Bounded — perceived as having edgesUnbounded — perceived as extending beyond the figure
Focus of attentionContext for attention
Higher contrast, richer texture or detailLower contrast, flatter, more uniform
Typically smaller areaTypically larger area

Establishing Clear Figure-Ground in UI

Elevation and shadow

Elevation is the primary tool for figure-ground in layered design systems. A card elevated above a page surface is figure; the page is ground. The shadow signals depth, and depth signals foreground. Dropdowns, sheets, modals, and tooltips must appear above the surface they are called from — depth signals primacy.

Overlays and scrims

A modal requires the background to recede. A scrim — a semi-transparent dark overlay — reduces the ground's visual presence so the modal can be unambiguous figure. Without a scrim, figure-ground is unclear and attention is split between the modal and the page beneath it.

Contrast

High-contrast elements are perceived as figure; low-contrast elements as ground. Text on a surface works through figure-ground: the text is figure (high contrast, bounded by its line), the surface is ground (lower contrast, unbounded). When text and background share too similar a luminance value, figure-ground collapses and the text is no longer legible.

Active and selected states

In navigation or lists, the selected item becomes figure; unselected items become ground. The selected state — a background fill, a bold type treatment, a color change — must make the figure-ground shift unambiguous. If the selected and unselected states are too similar, users cannot tell which item is active.

Ambiguous Figure-Ground

Ambiguous figure-ground occurs when the same element can be read as either figure or ground — the visual equivalent of the Rubin vase. In fine art and illustration this is sometimes intentional. In UI, it is almost always a failure.

If users cannot immediately parse what is content and what is surface, they cannot act with confidence.

Common Figure-Ground Failures

  • Insufficient scrim: a modal on a white page without a scrim requires users to parse figure-ground from edges alone — always provide a background-dimming layer
  • Nested elevation without contrast: cards inside cards without clear luminance difference between levels produce ambiguous depth
  • Text on photography: the image competes as figure; separate text from images with a color overlay, blur, or gradient layer
  • Flat design without surface differentiation: removing elevation signals entirely makes foreground/background relationships invisible — some depth signal is necessary

Dark Mode Considerations

Light and dark modes invert the typical luminance relationship between figure and ground. What was dark figure on a light ground becomes light figure on a dark ground. Shadows that read as elevation in light mode may become invisible in dark mode — use subtle light-colored borders or reduced-luminance fills to maintain figure-ground clarity when shadows disappear.

Best Practices

  • Define your surface stack in design tokens: base, raised, overlay, modal — each level should have a clear and consistent contrast relationship to the layers below it
  • Never place text directly on photography or complex imagery without a separation layer
  • Test figure-ground by removing color: can you still identify foreground from background using only shape and contrast?
  • Use elevation sparingly — the more surface layers you stack, the harder it becomes to maintain an unambiguous hierarchy
  • Validate scrims in both themes: a scrim that works in light mode may need adjusting in dark mode where the base surface is already dark

FAQ

What does the law-of-figure-ground skill do?

Apply the Law of Figure-Ground — establish which layer is foreground and actionable versus background. Use when designing modals, overlays, and depth. For emphasising one element among peers, use von-restorff-effect.

How do I install law-of-figure-ground?

Run npx skills add https://github.com/owl-listener/designer-skills --skill law-of-figure-ground in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/law-of-figure-ground/ (personal) or .claude/skills/law-of-figure-ground/ (project).

Which AI agents can use law-of-figure-ground?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is law-of-figure-ground safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains law-of-figure-ground?

It is published by owl-listener in owl-listener/designer-skills. It has 1,103 recorded installs.

More from owl-listener/designer-skills

View all →

presentation-deck

owl-listener/designer-skills

Structure a design presentation for a specific audience and decision. Use when presenting internally. For a portfolio narrative use case-study; for the written argument use design-rationale.

Docs & Writing3.1K installs

typography-scale

owl-listener/designer-skills

Create a modular type scale with size, weight, and line-height relationships. Use when establishing typographic structure. For line length only use readable-measure; for judging type on an existing screen use critique-typography (visual-critique).

Frontend & Design2.6K installs

illustration-style

owl-listener/designer-skills

Define an illustration style guide — visual language, colour usage, and application rules. Use when commissioning or standardising illustration. For icons, use icon-system (design-systems).

Media & Creative2.6K installs

visual-hierarchy

owl-listener/designer-skills

Establish hierarchy through size, weight, colour, spacing, and position so the eye lands in the intended order. Use when composing new work. For judging an existing screen, use critique-visual-hierarchy (visual-critique).

Frontend & Design2.5K installs

color-system

owl-listener/designer-skills

Build a product colour system — tonal scales, semantic roles, and contrast compliance. Use when defining or rebuilding colour from scratch. For dark-mode adaptation use dark-mode-design; for chart palettes use data-visualization; for multi-brand token architecture use theming-system (design-systems).

Frontend & Design2.5K installs

dark-mode-design

owl-listener/designer-skills

Adapt an existing palette to dark mode — surface elevation, contrast rebalancing, and desaturation rules. Use when you already have a light palette to translate. For building the base palette first, use color-system.

Frontend & Design2.5K installs

Popular frontend & design skills

View category →

setup-matt-pocock-skills

mattpocock/skills

Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.

Frontend & Design1.1M installs

frontend-design

anthropics/skills

Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.

OfficialFrontend & Design1M installs

hyperframes-animation

heygen-com/hyperframes

All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.

prototype

mattpocock/skills

Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.

Frontend & Design999.2K installs

hyperframes-core

heygen-com/hyperframes

The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.

Frontend & Design930.5K installs

vercel-react-best-practices

vercel-labs/agent-skills

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

OfficialFrontend & Design843.1K installs