Install
openclaw skills install world-buildCreates immersive digital environments by defining world context, atmosphere, typography, animations, and thematic UI to evoke specific emotions and depth.
openclaw skills install world-buildThis skill is part of the creative pack. Do NOT apply it by default on every visual task.
Use ONLY when explicitly triggered:
Do NOT use when:
If this skill wasn't explicitly requested, skip it. Use design-review instead.
The creative development playbook for building things that feel like places, not pages. Whimsical-design asks "does it have personality?" World-build provides the construction manual for depth.
Every immersive build starts with a creative brief. Answer these three questions:
1. What world does this live in? Not "what does it look like" but "where ARE we?" Examples:
2. What's the core metaphor? One metaphor that every UI element reinforces:
3. What does the user FEEL when they arrive? Name one emotion. Not "impressed" — that's a reaction. An emotion:
Write these three answers down. Share with Aaron. Get alignment. THEN build.
Every world-build site needs these layers. They're what separate "a page with nice CSS" from "a place."
The canvas is never blank white or flat black.
/* Noise overlay — subtle grain that makes everything feel tactile */
.noise-overlay {
position: fixed;
inset: 0;
pointer-events: none;
z-index: 9999;
opacity: 0.03;
background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
}
/* Ambient glow — soft colored light that sets mood */
.ambient-glow {
position: fixed;
width: 60vw;
height: 60vh;
border-radius: 50%;
opacity: 0.05;
filter: blur(120px);
mix-blend-mode: normal;
pointer-events: none;
will-change: transform;
animation: drift 20s ease-in-out infinite alternate;
}
/* Grid background — subtle structure */
.grid-bg {
position: fixed;
inset: 0;
background-image:
linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
background-size: 60px 60px;
pointer-events: none;
}
Persistent UI that reinforces the world. Small, monospace, low opacity.
┌─ TOP LEFT TOP RIGHT ─┐
│ Status indicator Timestamp │
│ Signal/connection Language │
│ │
│ │
│ │
│ BOTTOM LEFT BOTTOM RIGHT │
│ Live indicator System status │
└──────────────────────────────────────────────────┘
These should be thematic:
Replace the default cursor. Even a simple dot + trailing ring transforms the feel.
.cursor-main {
width: 12px;
height: 12px;
border: 1.5px solid var(--accent);
border-radius: 50%;
position: fixed;
pointer-events: none;
z-index: 10000;
transition: transform 0.15s ease;
}
/* Scale up on interactive elements, show text labels on hover */
Pick ONE signature effect. Don't stack them all:
Rule: Minimum 2 font families. Always.
The contrast between headline and system text creates visual tension — serif warmth vs mono coldness. That tension IS the design.
Headlines should be dramatically large. clamp(2.5rem, 5vw, 4rem) minimum for hero text. Body stays readable. The gap between them is the hierarchy.
Everything enters. Nothing just appears.
// Every section reveals on scroll
gsap.utils.toArray('.reveal-section').forEach(section => {
gsap.from(section, {
y: 60,
opacity: 0,
duration: 1,
ease: 'power3.out',
scrollTrigger: {
trigger: section,
start: 'top 80%',
toggleActions: 'play none none none'
}
});
});
// Staggered children (cards, list items)
gsap.from('.stagger-item', {
y: 40,
opacity: 0,
duration: 0.8,
stagger: 0.1,
ease: 'power2.out',
scrollTrigger: { trigger: '.stagger-container', start: 'top 75%' }
});
power3.out (fast start, gentle land)power2.outBackground elements move slower than foreground. Even 10% difference creates depth.
gsap.to('.parallax-bg', {
yPercent: -20,
ease: 'none',
scrollTrigger: {
trigger: '.parallax-section',
start: 'top bottom',
end: 'bottom top',
scrub: true
}
});
The first 2-3 seconds set the entire mood. Never skip this.
If the site shows work/projects/case studies, use the evidence board pattern:
This pattern works because it's interactive (not just scrolling), it treats each project as important (full-screen), and it lets the user control the pace.
Before presenting a world-build to Aaron:
After builds where Aaron gives feedback on atmosphere, depth, or immersion: