frontend-aesthetics — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited frontend-aesthetics (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill ensures websites and web applications are built with distinctive, creative aesthetics that avoid generic "AI slop" design patterns. Use this skill when creating any HTML, React, or web-based artifacts.
Avoid convergence toward generic outputs. Every design should feel intentionally crafted for its specific context, not like it came from a template.
/* Import from Google Fonts or other CDN */
@import url('https://fonts.googleapis.com/css2?family=Crimson+Pro:wght@300;400;600&family=Outfit:wght@400;600;800&display=swap');
:root {
--font-display: 'Outfit', sans-serif;
--font-body: 'Crimson Pro', serif;
}#### Dark & Cinematic
:root {
--bg-primary: #0a0a0f;
--bg-secondary: #1a1a2e;
--text-primary: #e8e8f0;
--text-secondary: #a8a8b8;
--accent: #ff6b6b;
--accent-alt: #4ecdc4;
}#### Warm & Earthy
:root {
--bg-primary: #faf8f3;
--bg-secondary: #e8dcc8;
--text-primary: #2d2416;
--text-secondary: #6b5d4f;
--accent: #d97706;
--accent-alt: #059669;
}#### Neon & Bold
:root {
--bg-primary: #000000;
--bg-secondary: #1a1a1a;
--text-primary: #00ff88;
--text-secondary: #88ffcc;
--accent: #ff0080;
--accent-alt: #00d4ff;
}animation-delay to stagger reveals for dramatic effect#### Staggered Fade-In Reveal
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.element-1 {
animation: fadeInUp 0.8s ease-out 0.1s both;
}
.element-2 {
animation: fadeInUp 0.8s ease-out 0.3s both;
}
.element-3 {
animation: fadeInUp 0.8s ease-out 0.5s both;
}#### Hover Effects
.card {
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.card:hover {
transform: translateY(-8px) scale(1.02);
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}#### Loading States
@keyframes shimmer {
0% { background-position: -1000px 0; }
100% { background-position: 1000px 0; }
}
.skeleton {
background: linear-gradient(90deg,
var(--bg-secondary) 0%,
var(--bg-primary) 50%,
var(--bg-secondary) 100%);
background-size: 1000px 100%;
animation: shimmer 2s infinite;
}import { motion } from "framer-motion";
const containerVariants = {
hidden: { opacity: 0 },
visible: {
opacity: 1,
transition: {
staggerChildren: 0.15,
delayChildren: 0.2
}
}
};
const itemVariants = {
hidden: { opacity: 0, y: 30 },
visible: { opacity: 1, y: 0 }
};
<motion.div
variants={containerVariants}
initial="hidden"
animate="visible"
>
{items.map(item => (
<motion.div key={item.id} variants={itemVariants}>
{item.content}
</motion.div>
))}
</motion.div>Create atmosphere and depth with:
#### Layered Gradients
background:
radial-gradient(circle at 20% 50%, rgba(120, 119, 198, 0.3), transparent 50%),
radial-gradient(circle at 80% 80%, rgba(255, 107, 107, 0.2), transparent 50%),
linear-gradient(135deg, #667eea 0%, #764ba2 100%);#### Geometric Patterns
background-image:
repeating-linear-gradient(45deg, transparent, transparent 35px,
rgba(255, 255, 255, 0.03) 35px, rgba(255, 255, 255, 0.03) 70px);#### Mesh Gradients
background:
radial-gradient(at 40% 20%, hsla(28, 100%, 74%, 1) 0, transparent 50%),
radial-gradient(at 80% 0%, hsla(189, 100%, 56%, 1) 0, transparent 50%),
radial-gradient(at 0% 50%, hsla(355, 100%, 93%, 1) 0, transparent 50%),
radial-gradient(at 80% 50%, hsla(340, 100%, 76%, 1) 0, transparent 50%),
radial-gradient(at 0% 100%, hsla(22, 100%, 77%, 1) 0, transparent 50%);#### Contextual Effects
:root {
--space-xs: clamp(0.5rem, 2vw, 0.75rem);
--space-sm: clamp(0.75rem, 3vw, 1rem);
--space-md: clamp(1rem, 4vw, 1.5rem);
--space-lg: clamp(1.5rem, 6vw, 2.5rem);
--space-xl: clamp(2.5rem, 8vw, 4rem);
--space-2xl: clamp(4rem, 12vw, 6rem);
}:root {
--font-display: 'JetBrains Mono', monospace;
--font-body: 'Space Mono', monospace;
--bg: #000000;
--text: #00ff00;
--accent: #ff00ff;
--border: 2px solid var(--accent);
}
/* Sharp corners, high contrast, no shadows */:root {
--font-display: 'Cormorant Garamond', serif;
--font-body: 'Source Sans 3', sans-serif;
--bg: #fafaf9;
--text: #1c1917;
--accent: #78716c;
--subtle: #f5f5f4;
}
/* Generous whitespace, subtle transitions, refined typography */:root {
--font-display: 'Orbitron', sans-serif;
--font-body: 'Rajdhani', sans-serif;
--bg: #0a0a0f;
--text: #00ffff;
--accent: #ff00ff;
--neon: drop-shadow(0 0 10px currentColor);
}
/* Neon effects, scan lines, glitch animations */:root {
--font-display: 'Playfair Display', serif;
--font-body: 'Lora', serif;
--bg: #fef9f3;
--text: #3a2817;
--accent: #c87941;
--paper: #f8f1e6;
}
/* Book-like, generous line height, warm tones */When creating a new frontend artifact:
Remember: Rotate through different pairings. Don't converge on favorites like Space Grotesk or Outfit across multiple projects.
Every frontend should feel intentionally designed for its specific context. When in doubt, make the bolder, more unexpected choice. Generic is the enemy of memorable.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.