Agent Skill to Soft Pastel
Agent Skill to Soft Pastel is a verified SKILL blueprint on Promptally in Fullstack & Backend Engineering optimized for leading AI models. Web and App implementation guide for Soft Pastel Design. Trigger when user wants gentle colors, calming UI, baby/lifestyle branding, or low-contrast aesthetics. Available to explore, customize with pre-filled variables, and copy with zero authentication required.
Technical Specifications
| Specification | Value |
|---|---|
| Artifact type | SKILL (Fullstack & Backend Engineering) |
| Compatible engines | Universal / Model Agnostic |
| Input variables | None (pre-filled) |
| Approximate tokens | 2,722 |
| Source file | SKILL.md |
| Access tier | Free public (MIT) |
Pre-Filled Template
---
name: soft-pastel
description: Web and App implementation guide for Soft Pastel Design. Trigger when user wants gentle colors, calming UI, baby/lifestyle branding, or low-contrast aesthetics.
date_added: "2026-06-17"
risk: safe
source: self
source_type: self
---
# Soft Pastel Design
> "Calm, airy, and gentle. A low-stress interface built on washed-out, cheerful hues."
## 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
1. **Desaturated, High-Lightness Colors**: Every color is mixed with a heavy amount of white.
2. **Soft, Rounded Edges**: Border radii are large and friendly.
3. **Airy Spacing**: Generous whitespace prevents the soft colors from feeling muddy or crowded.
## Visual DNA
- **Colors**: Mint green, baby blue, blush pink, lavender, and buttercream yellow. Use a warm, slightly off-white background (e.g., `#FFFBF7`) rather than clinical `#FFFFFF`.
- **Typography**: Soft, rounded sans-serifs (`Quicksand`, `Nunito`) or elegant, low-contrast serifs. Avoid aggressive, ultra-bold fonts.
- **Shadows**: Very soft, large-spread shadows, often tinted with the pastel color rather than black.
## Web Implementation
- **CSS Example**:
```css
:root {
--pastel-bg: #FFFBF7;
--pastel-pink: #FFD1DC;
--pastel-blue: #AEC6CF;
--pastel-green: #B7E4C7;
--pastel-text: #4A4A4A; /* Soft dark grey, NOT pure black */
}
body {
background-color: var(--pastel-bg);
color: var(--pastel-text);
font-family: 'Nunito', sans-serif;
line-height: 1.6;
}
.pastel-card {
background-color: #ffffff;
border-radius: 24px;
padding: 40px;
/* Tinted, very soft shadow */
box-shadow: 0 20px 40px rgba(174, 198, 207, 0.15);
}
.pastel-pill {
background-color: var(--pastel-pink);
color: #a05a6c; /* Darker version of the pink for contrast */
border-radius: 50px;
padding: 8px 24px;
font-weight: 700;
display: inline-block;
}
.pastel-btn {
background-color: var(--pastel-blue);
color: #2b5563; /* Darker text */
border: none;
border-radius: 12px;
padding: 16px 32px;
transition: transform 0.2s;
}
.pastel-btn:hover {
transform: translateY(-2px);
box-shadow: 0 10px 20px rgba(174, 198, 207, 0.4);
}
```
## App Implementation
### SwiftUI
```swift
struct SoftPastelView: View {
// Pastel Palette
let bg = Color(hex: "FFFBF7")
let pink = Color(hex: "FFD1DC")
let blue = Color(hex: "AEC6CF")
let textDark = Color(hex: "4A4A4A")
var body: some View {
ScrollView {
VStack(spacing: 32) {
// Pastel Card
VStack(alignment: .leading, spacing: 16) {
Text("Calm & Airy")
.font(.custom("Nunito-Bold", size: 28))
.foregroundColor(textDark)
Text("Generous whitespace and soft corners prevent the desaturated colors from feeling muddy.")
.font(.custom("Nunito-Regular", size: 16))
.foregroundColor(textDark.opacity(0.8))
.lineSpacing(6)
}
.padding(40)
.frame(maxWidth: .infinity, alignment: .leading)
.background(Color.white)
.cornerRadius(32) // Soft, large radius
// Tinted pastel shadow instead of black/gray
.shadow(color: blue.opacity(0.2), radius: 30, y: 15)
// Pastel Button
Button(action: {}) {
Text("Gentle Action")
.font(.custom("Nunito-Bold", size: 18))
.foregroundColor(Color(hex: "2B5563")) // Darker contrast of the blue
.frame(maxWidth: .infinity)
.padding(.vertical, 20)
.background(blue)
.cornerRadius(20)
}
}
.padding(24)
}
.background(bg.ignoresSafeArea())
}
}
```
- A custom font like Nunito or Quicksand is practically required. System fonts are often too rigid.
- The `shadow(color:)` must be tinted with one of your pastel palette colors, never black or gray.
- Corner radii should be very large (20-32).
### Flutter
```dart
class SoftPastelScreen extends StatelessWidget {
final Color bg = const Color(0xFFFFFBF7);
final Color pink = const Color(0xFFFFD1DC);
final Color blue = const Color(0xFFAEC6CF);
final Color textDark = const Color(0xFF4A4A4A);
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: bg,
body: SingleChildScrollView(
padding: const EdgeInsets.all(24.0),
child: Column(
children: [
// Pastel Card
Container(
width: double.infinity,
padding: const EdgeInsets.all(40),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(32), // Soft edges
boxShadow: [
// Tinted shadow
BoxShadow(color: blue.withOpacity(0.2), blurRadius: 30, offset: const Offset(0, 15))
],
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text('Calm & Airy', style: TextStyle(fontFamily: 'Nunito', fontSize: 28, fontWeight: FontWeight.bold, color: textDark)),
const SizedBox(height: 16),
Text('Generous whitespace and soft corners.', style: TextStyle(fontFamily: 'Nunito', fontSize: 16, height: 1.6, color: textDark.withOpacity(0.8))),
],
),
),
const SizedBox(height: 32),
// Pastel Button
ElevatedButton(
onPressed: () {},
style: ElevatedButton.styleFrom(
backgroundColor: blue,
foregroundColor: const Color(0xFF2B5563), // Darker text for contrast
minimumSize: const Size(double.infinity, 60),
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)),
elevation: 0, // Remove default harsh shadow
),
child: const Text('Gentle Action', style: TextStyle(fontFamily: 'Nunito', fontSize: 18, fontWeight: FontWeight.bold)),
),
],
),
),
);
}
}
```
- Disable `elevation` on Flutter buttons and cards if you want to apply custom tinted drop shadows. Default elevations cast black shadows.
### React Native
```jsx
const SoftPastelScreen = () => {
const colors = {
bg: '#FFFBF7',
blue: '#AEC6CF',
textDark: '#4A4A4A'
};
return (
<ScrollView style={{ flex: 1, backgroundColor: colors.bg, padding: 24 }}>
{/* Pastel Card */}
<View style={{
backgroundColor: '#FFFFFF',
borderRadius: 32,
padding: 40,
marginBottom: 32,
// iOS tinted shadow
shadowColor: colors.blue, shadowOffset: { width: 0, height: 15 },
shadowOpacity: 0.2, shadowRadius: 30,
// Android tinted shadow (Requires Android 9+)
elevation: 10, shadowColor: colors.blue,
}}>
<Text style={{ fontFamily: 'Nunito-Bold', fontSize: 28, color: colors.textDark, marginBottom: 16 }}>
Calm & Airy
</Text>
<Text style={{ fontFamily: 'Nunito-Regular', fontSize: 16, lineHeight: 26, color: colors.textDark, opacity: 0.8 }}>
Generous whitespace and soft corners prevent the desaturated colors from feeling muddy.
</Text>
</View>
{/* Pastel Button */}
<TouchableOpacity style={{
backgroundColor: colors.blue,
borderRadius: 20,
paddingVertical: 20,
alignItems: 'center'
}}>
<Text style={{ fontFamily: 'Nunito-Bold', fontSize: 18, color: '#2B5563' }}>
Gentle Action
</Text>
</TouchableOpacity>
</ScrollView>
);
};
```
- Make sure you are using a soft, non-pure-white background (`#FFFBF7`) so that pure `#FFFFFF` cards pop nicely against it without harsh borders.
- Tinted shadows work on Android 9+ via `shadowColor` combined with `elevation`.
### Jetpack Compose
```kotlin
@Composable
fun SoftPastelScreen() {
val bg = Color(0xFFFFFBF7)
val blue = Color(0xFFAEC6CF)
val textDark = Color(0xFF4A4A4A)
Column(
modifier = Modifier.fillMaxSize().background(bg).verticalScroll(rememberScrollState()).padding(24.dp)
) {
// Pastel Card
Box(
modifier = Modifier
.fillMaxWidth()
.shadow(
elevation = 20.dp,
shape = RoundedCornerShape(32.dp),
ambientColor = blue, // Tinted shadow
spotColor = blue
)
.background(Color.White, RoundedCornerShape(32.dp))
.padding(40.dp)
) {
Column {
Text(
text = "Calm & Airy",
fontSize = 28.sp,
fontWeight = FontWeight.Bold,
color = textDark,
fontFamily = FontFamily.SansSerif // Replace with Nunito
)
Spacer(Modifier.height(16.dp))
Text(
text = "Generous whitespace and soft corners.",
fontSize = 16.sp,
lineHeight = 26.sp,
color = textDark.copy(alpha = 0.8f),
fontFamily = FontFamily.SansSerif
)
}
}
Spacer(Modifier.height(32.dp))
// Pastel Button
Button(
onClick = { },
colors = ButtonDefaults.buttonColors(containerColor = blue, contentColor = Color(0xFF2B5563)),
shape = RoundedCornerShape(20.dp),
modifier = Modifier.fillMaxWidth().height(60.dp),
elevation = null
) {
Text("Gentle Action", fontSize = 18.sp, fontWeight = FontWeight.Bold)
}
}
}
```
- The `shadow` modifier in Compose takes `ambientColor` and `spotColor`. Set both to your pastel accent color to achieve the soft tinted glow.
## Do's and Don'ts
- **DO**: Use illustrative assets that match the pastel vibe (flat vectors, soft gradients).
- **DON'T**: Use stark black borders, sharp corners, or high-saturation primary colors.
## 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.
How to use this skill
- Review the pre-filled example and source files above.
- Copy the template or download
SKILL.md, then use it in your model, IDE, or workflow tool. - Compare your result with the sample output when one is provided.
Frequently Asked Questions
How do I use Agent Skill to Soft Pastel?
Open the skill on Promptally, review the pre-filled example, then copy the template or download SKILL.md and paste it into your model, IDE or workflow tool. Agent Skill to Soft Pastel is a static blueprint with no dynamic variables. Copy it and use it as-is.
Is Agent Skill to Soft Pastel free?
Yes. Agent Skill to Soft Pastel is free to view, copy and download on Promptally without creating an account. It is published under the MIT license.
What variables does Agent Skill to Soft Pastel need?
Agent Skill to Soft Pastel is a static blueprint with no dynamic variables. Copy it and use it as-is.