Skip to content
Skillpedia
Interfaces (UI/UX)48k · #2779

duotone-design

Helps your agent use two-color schemes and striking imagery. It's useful for creating visually impactful and stylish designs.

What it does

This guide explains how to create designs using only two strong colors, with images processed to match those colors. It's inspired by Spotify's look.

When to use it

  • ✓When you want a striking look with high contrast.
  • ✓When creating a theme for an app or website with two main colors.
  • ✓If you're aiming for a modern and bold graphic style.

Example of what to ask your AI

“Create a music website design using two colors, with a Spotify-inspired look.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/design-it/duotone-design/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/design-it/duotone-design/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

The design uses only two colors: one dark and one light. All images are modified to fit these two colors. Text is large and solid.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add sickn33/agentic-awesome-skills --skill duotone-design

Or download just the file:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/design-it/duotone-design/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Duotone Design

"Striking contrast. Photography and UI stripped down to exactly two clashing or complementary colors."

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. Two Colors Only: The entire design is mapped to a dark color (replacing blacks/shadows) and a light color (replacing whites/highlights).
  2. Treated Imagery: All photos MUST be processed into the duotone palette.
  3. Bold, Flat Typography: Text is usually massive, solid, and uses one of the two colors.

Visual DNA

  • Colors: Very high contrast pairs. Navy and Peach, Deep Purple and Neon Green, Crimson and Cream. Look at Industrial Chic for inspiration.
  • Typography: Heavy, condensed sans-serifs (e.g., League Gothic, Oswald).
  • Imagery: High-contrast, gritty photography works best when mapped to duotone.

Web Implementation

  • Modern CSS can achieve image duotone effects without Photoshop, using mix-blend-mode and filters.
  • CSS Example:
:root {
  --duo-dark: #1E0045; /* Deep Purple */
  --duo-light: #CCFF00; /* Neon Lime */
}

body {
  background-color: var(--duo-dark);
  color: var(--duo-light);
}

/* CSS Duotone Image Effect */
.duotone-container {
  position: relative;
  width: 100%;
  height: 400px;
  background-color: var(--duo-light); /* Base color */
}

.duotone-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Convert image to grayscale, increase contrast */
  filter: grayscale(100%) contrast(1.5); 
  /* Multiply the grayscale image against the light background */
  mix-blend-mode: multiply;
}

.duotone-container::after {
  /* Overlay the dark color using screen/lighten */
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background-color: var(--duo-dark);
  mix-blend-mode: screen;
}

.duotone-btn {
  background: var(--duo-light);
  color: var(--duo-dark);
  border: none;
  font-weight: 900;
  text-transform: uppercase;
  padding: 16px 32px;
}

App Implementation

SwiftUI

struct DuotoneImage: View {
    let duoDark = Color(red: 0.12, green: 0.0, blue: 0.27)  // #1E0045
    let duoLight = Color(red: 0.8, green: 1.0, blue: 0.0)   // #CCFF00
    
    var body: some View {
        ZStack {
            // Background base color
            duoLight.ignoresSafeArea()
            
            // Image processing
            Image("sample_photo")
                .resizable()
                .scaledToFill()
                .grayscale(1.0)
                .contrast(1.5)
                .colorMultiply(duoLight) // Multiplies the light color into the grays
            
            // Dark color overlay
            duoDark
                .blendMode(.screen) // Equivalent to CSS screen blend mode
                .allowsHitTesting(false)
        }
        .frame(height: 400)
        .clipped()
    }
}
  • Real-time image processing is easy in SwiftUI.
  • Convert to .grayscale(), boost .contrast(), then use .colorMultiply() and .blendMode(.screen) layers to map the two colors exactly like CSS mix-blend-mode.

Flutter

class DuotoneImage extends StatelessWidget {
  final Color duoDark = const Color(0xFF1E0045);
  final Color duoLight = const Color(0xFFCCFF00);

  @override
  Widget build(BuildContext context) {
    return Container(
      height: 400,
      width: double.infinity,
      color: duoLight,
      child: Stack(
        fit: StackFit.expand,
        children: [
          // 1. Grayscale & Contrast (using ColorFilter matrix)
          // 2. Light Color Multiply
          ColorFiltered(
            colorFilter: ColorFilter.mode(duoLight, BlendMode.multiply),
            child: ColorFiltered(
              // Simple grayscale matrix
              colorFilter: const ColorFilter.matrix([
                0.2126, 0.7152, 0.0722, 0, 0,
                0.2126, 0.7152, 0.0722, 0, 0,
                0.2126, 0.7152, 0.0722, 0, 0,
                0,      0,      0,      1, 0,
              ]),
              child: Image.asset('assets/sample_photo.jpg', fit: BoxFit.cover),
            ),
          ),
          // 3. Dark Color Screen Overlay
          ColorFiltered(
            colorFilter: ColorFilter.mode(duoDark, BlendMode.screen),
            child: Container(color: Colors.transparent), // Applies filter to stack below
          ),
        ],
      ),

…
FAQ

What does 'duotone' mean?

Duotone means 'two tones'. In this context, the entire design is limited to just two chosen colors.

How are images treated?

Photos are converted to grayscale and then tinted with the chosen two colors, creating a high-contrast effect.

Can I use any color pair?

Yes, but high-contrast colors, like deep purple and neon green, or navy and peach, work best for the desired effect.

Details

Original description by the author

Web and App implementation guide for Duotone Design. Trigger when user wants two-color schemes, striking imagery, and Spotify-like playlist aesthetics.

repo: sickn33/agentic-awesome-skills

Popularity

GitHub stars
48k
Ranking position
#2779
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills