
law-of-closure
Apply the Law of Closure — the eye completes implied shapes from partial forms. Use when reducing visual weight by dropping borders or letting negative space suggest structure. For explicit containers, use law-of-common-region.
- Installs
- 1.1K
- Last 24h
- +22
- Trending rank
- #5323
- 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-closure- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads law-of-closure automatically when relevant.
- 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 Closure
You are an expert in visual perception and the cognitive patterns that let users interpret incomplete visual information as whole shapes.
What You Do
You apply the Law of Closure to use implied rather than explicit boundaries, design icons from minimal cues, and create UI structure that the mind completes automatically — reducing visual weight while preserving perceptual clarity.
The Principle
The mind prefers complete, familiar shapes. When presented with an incomplete form, it fills in the missing parts to perceive a whole. This is closure — we see the complete shape, not the gaps.
Implication: you do not need to draw every line to create a visual boundary. You need enough information for the mind to close the shape.
Applications in UI Design
Icons and symbols
Many standard icons rely on closure:
- A circle with a gap reads as a ring or progress indicator
- An incomplete checkbox border still reads as a square
- Bracket-style frames with open ends still read as contained groups
- A progress arc with a missing segment is still perceived as a circle measuring completion
Icons do not need to be fully enclosed to be recognised. Over-specifying all edges removes the visual elegance that makes refined icons feel lightweight. Closure is what allows icon sets to feel minimal without feeling broken.
Implied containers and boundaries
Full borders add visual weight. Closure allows lighter alternatives that communicate the same grouping:
- Single-edge dividers: a horizontal rule above a section implies the section boundary without enclosing it
- Corner accents: placing a visual element only at corners implies a bounding rectangle between them
- Fading backgrounds: a section background that fades to transparent at the edge — the mind closes the container where the color ends
- Partial rules: a short divider on one side implies division without a full-width line
This is how modern UI surfaces feel open and uncluttered while still communicating structure.
Grid and layout structure
A well-executed grid does not need explicit rules. Users perceive the columns through alignment:
- Consistently left-aligned elements imply a vertical grid line without drawing it
- Consistent vertical rhythm implies a horizontal grid
- The grid is felt as a structure, not drawn as one
Explicit grid lines are usually redundant and add visual noise; alignment creates the same perception through closure.
Scroll and swipe affordances
An element partially visible at the edge of a screen implies that more content exists in that direction. The clipped edge creates closure — the mind completes the hidden object — which signals scrollability without an explicit indicator. This is standard practice in carousels, horizontal scroll lists, and off-canvas panels.
Closure and Negative Space
Closure depends on negative space. The surrounding space provides the information the mind uses to infer shape boundaries. Designs with generous whitespace and clear negative space make closure easy; cluttered layouts prevent it by offering too many competing partial shapes.
The mind cannot close a shape it cannot isolate. Reduce surrounding noise before relying on closure.
When to Use Explicit Boundaries Instead
Closure is appropriate when the boundary is supplementary — grouping that reinforces other signals. Use explicit closure (a full border or filled background) when:
- The container boundary is the primary grouping signal, not supplementary
- The element is interactive and the boundary defines its hit area
- The design will render in contexts where whitespace or spacing may collapse (email, dense data tables)
Best Practices
- Remove borders iteratively: check whether the boundary is still perceived without them — if it is, the border is redundant
- Use corner accents or single-edge rules as a first step before adding a full enclosing border
- Test icons at small sizes (16px, 20px): does the shape still close? If not, the icon may need more visual information at that scale
- Pair closure with proximity or similarity to reinforce the mind's ability to complete an ambiguous shape
- In dark mode, re-validate closure: negative space relationships shift when background values change, and a closed shape in light mode may feel open in dark
FAQ
What does the law-of-closure skill do?
Apply the Law of Closure — the eye completes implied shapes from partial forms. Use when reducing visual weight by dropping borders or letting negative space suggest structure. For explicit containers, use law-of-common-region.
How do I install law-of-closure?
Run npx skills add https://github.com/owl-listener/designer-skills --skill law-of-closure 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-closure/ (personal) or .claude/skills/law-of-closure/ (project).
Which AI agents can use law-of-closure?
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-closure 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-closure?
It is published by owl-listener in owl-listener/designer-skills. It has 1,101 recorded installs.
More from owl-listener/designer-skills
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.
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).
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).
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).
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).
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.
Popular frontend & design skills
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-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.
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.
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.
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.