CSS Neumorphism Generator
Visual soft UI (neumorphism) CSS builder. 4 types: flat, inset, concave, convex. HSL-aware shadows that work on dark backgrounds. Free, client-side.
- Runs in your browser
- Nothing uploaded
- Free, no sign-up
Soft UI CSS with all 4 neumorphism types: flat (raised), inset (pressed), concave (subtle bowl, gradient bg), convex (subtle bulge). HSL-aware shadow color computation works correctly on dark backgrounds, where a fixed-RGB delta would fail.
Shape
Shadow
CSS
HTML
How to Use CSS Neumorphism Generator
- Pick a preset (Classic Soft is the safest start) or build from scratch.
- Choose a type: flat (raised), inset (pressed in), concave (subtle bowl with gradient), convex (subtle bulge with gradient).
- Set the base background. Real neumorphism requires the element bg to be very close to (or identical to) the surrounding page bg. That is how the dual shadows create the depth illusion.
- Tune shape (size, border-radius) and shadow (distance, blur).
- Light/dark shadow shift sliders are expressed as HSL lightness percentage, so they work correctly on both light and dark backgrounds.
- Watch the contrast warning chip. Neumorphism is famously hard for accessibility because of low contrast.
- Copy CSS / HTML or download
neumorphism.css.
Frequently Asked Questions
What is the difference between concave, convex, flat, inset?
Flat: solid background, dual shadows make it look raised. Inset: same shadows reversed, looks pressed in. Concave: same external shadows as flat, plus a gradient on the background going light at the bottom to dark at the top (subtle bowl impression). Convex: gradient inverted (lighter at top to darker at bottom, looks bulged). Concave and convex give that physical button feel.
Why is the background color so important?
Neumorphism creates depth by simultaneously casting a lighter highlight (top-left) and a darker shadow (bottom-right) on a surface. The illusion only works if the element background matches the surrounding page background nearly exactly. If they differ noticeably, the element looks like a flat tinted card with odd shadows.
Why does this tool warn about accessibility?
Neumorphism is famously inaccessible. Buttons, inputs, and toggles often have NO border and very low contrast, both of which fail WCAG AA. The “you cannot tell where the click target is” problem limited neumorphism’s mainstream adoption. The warning appears when your base color is in the lightness range where text overlay will fail AA contrast.
Light at top-left or bottom-right?
Convention is a light source at top-left: light shadow on top-left, dark shadow on bottom-right (for flat/raised). This matches the way macOS and iOS render shadows, the de-facto convention for soft UI. The tool follows that direction; inset flips it so the highlight is on the bottom-right edge of the depression.
How do I make a hover/active state?
Common pattern: hover means slightly increased distance and blur (looks more raised). Active/pressed means swap to inset shadows (looks pressed). Add transition: box-shadow 150ms ease for smoothness. CSS transitions on box-shadow are cheap, with no performance concerns.
Can I have multiple neumorphic elements on the same page?
Yes, but a page wall-to-wall with soft UI cards looks uncanny, with every shape blending into a soft pillow texture. Best practice is to use neumorphism sparingly for KEY interactive elements (1 to 3 per view) and use flat or material-style cards for everything else.
Does neumorphism work in dark mode?
Yes, but it is harder. Dark soft UI requires LARGER lightness shifts because human eyes perceive smaller changes in darker tones. The tool’s dark preset uses 8% light and 10% dark (vs 7% and 8% for the light preset). Increase further if the depth looks too subtle on your dark theme.
Why did neumorphism fall out of fashion?
Three reasons: accessibility problems were severe, it required a near-identical page background which constrained layouts, and the dual-shadow look became overused and felt dated within two years. Designers moved to glassmorphism (frosted-glass effect using backdrop-blur) and then to claymorphism (chunkier 3D shadows on bright surfaces). Neumorphism still has its place for interactive controls, smart-home UIs, and calm dashboards.
Is my data secure?
Yes. Colors, settings, and selector all stay in your browser. Nothing is uploaded.
Related Tools
CSS Animation Generator →
Generate CSS @keyframes animations - 16 presets, full duration/timing/delay/direction/fill controls, prefers-reduced-motion wrapper. Live preview.…
CSS Aspect Ratio →
Generate CSS aspect-ratio with padding-top fallback, object-fit options, 16+ presets, decimal input. Live preview.…
CSS Beautifier →
Beautify or minify CSS with proper nested @media/@keyframes/@supports handling, comment preservation, calc()/var() awareness. Free,…
CSS Border Radius Generator →
Visual CSS border-radius with elliptical mode, 6 unit types (px/%/em/rem/vw/vh), 8 shape presets, live…
CSS Clip Path Generator →
Visual clip-path builder - polygon / circle / ellipse / inset / path, 20+…
CSS Columns Generator →
Generate CSS multi-column layout with column-count or column-width, gap, rule, fill, span, break-inside. Live…
CSS Cursor Generator →
Browse 34 CSS cursors organized by category, with custom URL cursor builder. Live hover…
CSS Filter Generator →
Generate CSS filter with 10 functions including drop-shadow, backdrop-filter mode, 8 preset combinations. Live…
CSS Flexbox Generator →
Visual flexbox builder with container + per-item controls (flex-grow/shrink/basis/order/align-self) and 6 layout presets. Free,…
CSS Glassmorphism Generator →
Visual frosted-glass CSS builder. 9 controls including backdrop-saturate, 6 presets, 4 background scenes to…
CSS Gradient Generator →
Visual gradient builder with 6 types (linear, radial, conic + 3 repeating). 8 presets,…
CSS Grid Generator →
Visual CSS Grid builder with grid-template-areas, auto-fit + minmax responsive tracks, per-item spans. 6…