minimalism
Web and App implementation guide for the Minimalism design style. Trigger when the user wants simple layouts, lots of whitespace, few colors, and cl…
它会碰到什么
扫了多少1 个文本文件,9 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
Minimalism
> "Less is more. Remove until nothing is left but the essential."
When to Use
Use this sub-style when the user's request matches the aesthetic described above. This is a child reference of the design-it skill and is not meant to be triggered directly.
Core Principles
- Extreme Whitespace: Margins and padding should be double what you initially think is appropriate.
- Strict Typography: Rely on font weights and sizes to establish hierarchy, not colors or boxes.
- Absence of Decor: No borders, no drop shadows, no background textures.
Visual DNA
- Colors: Best paired with Minimalist Slate or Modern Editorial palettes. Backgrounds must be absolute (pure or off-white/black).
- Typography: Sans-serif, geometric. (e.g.,
Inter,Helvetica Neue,SF Pro). Use extreme contrast in weights (Thin vs Black). - Spacing: Use a generous baseline grid (e.g., multiples of 8px, heavily favoring 48px to 120px padding).
Web Implementation
- Use Flexbox/Grid with large
gapproperties. - CSS Example:
.minimal-container {
max-width: 800px;
margin: 0 auto;
padding: 120px 24px;
background-color: var(--bg-primary);
}
.minimal-title {
font-size: 3rem;
font-weight: 300;
letter-spacing: -0.02em;
margin-bottom: 48px;
}
.minimal-btn {
background: transparent;
border: 1px solid var(--text-primary);
padding: 16px 32px;
text-transform: uppercase;
letter-spacing: 0.1em;
transition: all 0.3s ease;
}
App Implementation
SwiftUI
struct MinimalView: View {
var body: some View {
ScrollView {
VStack(alignment: .leading, spacing: 48) {
Text("Headline")
.font(.system(size: 34, weight: .light))
.tracking(-0.5)
Text("Body text sits quietly with generous space around it. Let the content breathe.")
.font(.system(size: 17, weight: .regular))
.foregroundColor(.secondary)
.lineSpacing(6)
// Minimal button — just a thin border, no fill
Button(action: {}) {
Text("Continue")
.font(.system(size: 14, weight: .medium))
.tracking(1.5)
.textCase(.uppercase)
.padding(.horizontal, 32)
.padding(.vertical, 16)
.overlay(
RoundedRectangle(cornerRadius: 0)
.stroke(Color.primary, lineWidth: 1)
)
}
}
.padding(.horizontal, 24)
.padding(.vertical, 80)
}
.background(Color(.systemBackground))
}
}
- Use
VStack(spacing: 40...64)for generous separation between elements. - Never use
.shadow()orCard-like containers. Let whitespace define grouping. - Use
Divider()sparingly — only when two adjacent sections need separation.
Flutter
class MinimalScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.white,
body: SingleChildScrollView(
padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 80),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'Headline',
style: TextStyle(
fontSize: 34,
fontWeight: FontWeight.w300,
letterSpacing: -0.5,
color: Colors.black87,
),
),
const SizedBox(height: 48),
Text(
'Body text sits quietly with generous space around it.',
style: TextStyle(
fontSize: 17,
fontWeight: FontWeight.w400,
height: 1.6,
color: Colors.black54,
),
),
const SizedBox(height: 48),
// Minimal button — outlined, no elevation
OutlinedButton(
onPressed: () {},
style: OutlinedButton.styleFrom(
side: const BorderSide(color: Colors.black87, width: 1),
shape: const RoundedRectangleBorder(borderRadius: BorderRadius.zero),
padding: const EdgeInsets.symmetric(horizontal: 32, vertical: 16),
),
child: Text(
'CONTINUE',
style: TextStyle(
fontSize: 14,
fontWeight: FontWeight.w500,
letterSpacing: 1.5,
color: Colors.black87,
),
),
),
],
),
),
);
}
}
- Set
elevation: 0on all Material widgets (AppBar,Card,FloatingActionButton). - Use
SizedBox(height: 48)or larger for vertical spacing. Avoid tight layouts. - Override
ThemeDatato remove all default shadows:cardTheme: CardTheme(elevation: 0).
React Native
const MinimalScreen = () => (
<ScrollView
style={{ flex: 1, backgroundColor: '#FFFFFF' }}
contentContainerStyle={{ paddingHorizontal: 24, paddingVertical: 80 }}
>
<Text style={{
fontSize: 34,
fontWeight: '300',
letterSpacing: -0.5,
color: '#1A1A1A',
marginBottom: 48,
}}>
Headline
</Text>
<Text style={{
fontSize: 17,
fontWeight: '400',
lineHeight: 28,
color: '#666666',
marginBottom: 48,
}}>
Body text sits quietly with generous space around it.
</Text>
<TouchableOpacity
style={{
borderWidth: 1,
borderColor: '#1A1A1A',
paddingHorizontal: 32,
paddingVertical: 16,
alignSelf: 'flex-start',
}}
activeOpacity={0.6}
>
<Text style={{
fontSize: 14,
fontWeight: '500',
letterSpacing: 1.5,
color: '#1A1A1A',
textTransform: 'uppercase',
}}>
Continue
</Text>
</TouchableOpacity>
</ScrollView>
);
- Use
paddingVertical: 80for screen-level spacing. Double what feels natural. - Avoid all
elevationandshadowColorproperties. NoborderRadiuson cards. - If using a UI library (e.g., React Native Paper), strip default elevations.
Jetpack Compose
@Composable
fun MinimalScreen() {
Column(
modifier = Modifier
.fillMaxSize()
.background(Color.White)
.verticalScroll(rememberScrollState())
.padding(horizontal = 24.dp, vertical = 80.dp)
) {
Text(
text = "Headline",
fontSize = 34.sp,
fontWeight = FontWeight.Light,
letterSpacing = (-0.5).sp,
color = Color(0xFF1A1A1A),
)
Spacer(modifier = Modifier.height(48.dp))
Text(
text = "Body text sits quietly with generous space around it.",
fontSize = 17.sp,
fontWeight = FontWeight.Normal,
lineHeight = 28.sp,
color = Color(0xFF666666),
)
Spacer(modifier = Modifier.height(48.dp))
// Minimal outlined button
OutlinedButton(
onClick = {},
shape = RectangleShape,
border = BorderStroke(1.dp, Color(0xFF1A1A1A)),
colors = ButtonDefaults.outlinedButtonColors(containerColor = Color.Transparent),
contentPadding = PaddingValues(horizontal = 32.dp, vertical = 16.dp),
) {
Text(
text = "CONTINUE",
fontSize = 14.sp,
fontWeight = FontWeight.Medium,
letterSpacing = 1.5.sp,
color = Color(0xFF1A1A1A),
)
}
}
}
- Set
elevation = 0.dpon allCard,TopAppBar, andFloatingActionButtoncomposables. - Use
Spacer(modifier = Modifier.height(48.dp))consistently for generous vertical gaps. - Override
MaterialThemeshape and shadow defaults to remove all depth cues.
Do's and Don'ts
- DO: Focus intensely on alignment. A 1px misalignment breaks the illusion of minimalism.
- DON'T: Use "card" wrappers for content. Let the whitespace define the grouping.
Limitations
- This is a styling reference and does not replace environment-specific validation, accessibility testing, or expert review.
- Ensure appropriate contrast ratios and responsive behaviors are verified separately.
想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
它属于哪个仓库
星标★ 46,490
本站分层T1
该仓技能数6676
原文件路径
plugins/agentic-awesome-skills-claude/skills/design-it/minimalism/SKILL.md同一个仓库里的其他技能
同名技能的其他版本
有 3 个不同仓库或目录里都有叫 minimalism 的技能。它们内容并不相同,别混用:
- sickn33/agentic-awesome-skills — Web and App implementation guide for the Minimalism design style. Trigger when the user wa
- sickn33/agentic-awesome-skills — Web and App implementation guide for the Minimalism design style. Trigger when the user wa