claymorphism

Claymorphism design system skill. Use when building soft, puffy, clay-like UI components with large radii, dual inner shadows, and offset outer shadows.

15 stars

Best use case

claymorphism is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Claymorphism design system skill. Use when building soft, puffy, clay-like UI components with large radii, dual inner shadows, and offset outer shadows.

Teams using claymorphism should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/claymorphism/SKILL.md --create-dirs "https://raw.githubusercontent.com/ifiokjr/oh-pi/main/packages/skills/skills/claymorphism/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/claymorphism/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How claymorphism Compares

Feature / AgentclaymorphismStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Claymorphism design system skill. Use when building soft, puffy, clay-like UI components with large radii, dual inner shadows, and offset outer shadows.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Claymorphism Design Spec

## 3 Core Elements

1. **Large Radius** — Generous `border-radius` (20–50px) for a puffy, inflated look
2. **Dual Inner Shadows** — Light inset from top-left + dark inset from bottom-right to simulate 3D
   clay surface
3. **Offset Outer Shadow** — Directional `box-shadow` offset (not centered) to ground the element

## CSS Tokens

Reference: [references/tokens.css](references/tokens.css)

```css
@import "references/tokens.css";

.clay-card {
	background: var(--clay-bg-card);
	border-radius: var(--clay-radius-lg);
	box-shadow: var(--clay-shadow);
	color: var(--clay-text);
}
```

## Component Examples

### Card

```css
.clay-card {
	background: var(--clay-bg-card);
	border-radius: var(--clay-radius-lg);
	box-shadow: var(--clay-shadow);
	padding: 1.5rem;
	color: var(--clay-text);
}
```

### Button

```css
.clay-btn {
	background: var(--clay-bg-button);
	border: none;
	border-radius: var(--clay-radius-pill);
	box-shadow: var(--clay-shadow);
	padding: 0.75rem 1.5rem;
	color: var(--clay-text);
	cursor: pointer;
	transition: box-shadow 0.2s;
}
.clay-btn:hover {
	box-shadow: var(--clay-shadow-elevated);
}
.clay-btn:active {
	box-shadow: var(--clay-shadow-pressed);
}
```

### Input

```css
.clay-input {
	background: var(--clay-bg);
	border: none;
	border-radius: var(--clay-radius);
	box-shadow: var(--clay-shadow-pressed);
	padding: 0.75rem 1rem;
	color: var(--clay-text);
}
.clay-input:focus {
	outline: 2px solid var(--clay-accent);
	outline-offset: 2px;
}
```

### Toggle

```css
.clay-toggle {
	width: 56px;
	height: 30px;
	background: var(--clay-bg-card);
	border-radius: var(--clay-radius-pill);
	box-shadow: var(--clay-shadow-pressed);
}
.clay-toggle-knob {
	width: 24px;
	height: 24px;
	background: var(--clay-bg);
	border-radius: 50%;
	box-shadow: var(--clay-shadow);
	transition: transform 0.2s;
}
```

## Dark Mode Notes

- Dark mode reduces inner highlight intensity (`rgba(255,255,255,0.05)` vs `0.6`) to avoid glowing
  artifacts
- Outer shadow opacity increases to maintain depth on dark backgrounds
- Background colors shift to warm dark tones — avoid pure black to preserve the clay feel
- All dark tokens are defined in `[data-theme="dark"]` in `tokens.css`

## Accessibility Notes

- Ensure **contrast ratio ≥ 4.5:1** for text — clay backgrounds are muted, verify against
  `--clay-text`
- Provide visible `:focus` outlines since clay shadows alone don't indicate focus
- Use `prefers-contrast: more` to flatten shadows and increase text contrast

```css
@media (prefers-contrast: more) {
	.clay-card {
		box-shadow: 0 0 0 2px var(--clay-text);
	}
}
```

Related Skills

write-a-skill

15
from ifiokjr/oh-pi

Create new agent skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill.

web-search

15
from ifiokjr/oh-pi

Web search via DuckDuckGo. Use when the user needs to look up current information online.

web-fetch

15
from ifiokjr/oh-pi

Fetch a web page and extract readable text content. Use when user needs to retrieve or read a web page.

rust-workspace-bootstrap

15
from ifiokjr/oh-pi

Scaffold a production-ready Rust workspace with knope changesets, devenv, and GitHub Actions CI/release workflows. Use when starting a new Rust project or monorepo.

request-refactor-plan

15
from ifiokjr/oh-pi

Create a detailed refactor plan with tiny commits via user interview, then file it as a GitHub issue. Use when user wants to plan a refactor, create a refactoring RFC, or break a refactor into safe incremental steps.

quick-setup

15
from ifiokjr/oh-pi

Detect project type and generate .pi/ configuration. Use when setting up pi for a new project or when user asks to initialize pi config.

pwsh

15
from ifiokjr/oh-pi

PowerShell syntax reference — cmdlets, objects, pipelines, filtering, comparison operators, and Bash-to-PowerShell command equivalents

nushell

15
from ifiokjr/oh-pi

Nushell syntax reference for shell commands — variables, pipelines, tables, custom commands, control flow, Bash-to-Nu equivalents, and common gotchas

neubrutalism

15
from ifiokjr/oh-pi

Neubrutalism design system skill. Use when building bold UI with thick borders, offset solid shadows, high saturation colors, and minimal border radius.

liquid-glass

15
from ifiokjr/oh-pi

Apple Liquid Glass design system. Use when building UI with translucent, depth-aware glass morphism following Apple's design language. Provides CSS tokens, component patterns, dark/light mode, and animation specs.

improve-codebase-architecture

15
from ifiokjr/oh-pi

Explore a codebase to find opportunities for architectural improvement, focusing on making the codebase more testable by deepening shallow modules. Use when user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more AI-navigable.

grill-me

15
from ifiokjr/oh-pi

Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".