Spacing & Layout
Windmill uses Tailwind CSS spacing utilities and flex containers to create consistent, responsive layouts across all interfaces.
Spacing Scale
Our spacing system follows Tailwind's default spacing scale based on 4px increments:
space-1(4px): Micro spacing between related elementsspace-2(8px): Base unit for component padding and marginsspace-4(16px): Standard spacing between componentsspace-6(24px): Section spacing and larger gapsspace-8(32px): Page margins and major sectionsspace-12(48px): Large spacing for visual breaksspace-16(64px): Maximum spacing for major layout divisions
Layout System
We use Tailwind's flex utilities for responsive layouts:
- Flex containers:
flex flex-colorflex flex-rowfor layout direction - Spacing:
space-x-4andspace-y-4for consistent gaps between elements - Max width:
max-w-6xl(1152px) for content areas
Do's and Don'ts
✅ Do
- Use Tailwind spacing utilities (
p-4,m-6,space-x-4) for all measurements - Use flex responsive classes (
flex-col md:flex-row,justify-between) - Apply consistent container patterns (
container mx-auto px-8) - Use
space-x-*andspace-y-*for gaps between flex items - Leverage Tailwind's responsive breakpoints (
sm:,md:,lg:,xl:)
❌ Don't
- Use arbitrary spacing values with square brackets
[32px] - Mix CSS spacing with Tailwind utilities in the same component
- Use fixed pixel values instead of responsive utilities
- Break responsive design patterns with custom CSS