Duolingo
A gamified, character-driven canvas built around Duo green (#58CC02) — one of the most recognized brand greens in consumer apps — with bright white surfaces, bold rounded typography, and a supporting cast of vibrant accent colors (yellow #FFC800, red #FF4B4B, blue #1CB0F6) that drive streak and XP mechanics. The system feels physically substantial: thick drop shadows on interactive elements, bold outlines on cards and buttons, and Duo the owl's presence throughout. Typography is set in Feather Bold — a custom rounded display face — that reads as fun and slightly educational, like a children's book that grew up.
Color Tokens
version: alpha name: Duolingo description: "A gamified, character-driven canvas built around Duo green (#58CC02) — one of the most recognized brand greens in consumer apps — with bright white surfaces, bold rounded typography, and a supporting cast of vibrant accent colors (yellow #FFC800, red #FF4B4B, blue #1CB0F6) that drive streak and XP mechanics. The system feels physically substantial: thick drop shadows on interactive elements, bold outlines on cards and buttons, and Duo the owl's presence throughout. Typography is set in Feather Bold — a custom rounded display face — that reads as fun and slightly educational, like a children's book that grew up."
colors: primary: "#58CC02" on-primary: "#ffffff" primary-hover: "#49AD00" primary-shadow: "#58A700" secondary: "#1CB0F6" on-secondary: "#ffffff" accent-yellow: "#FFC800" accent-red: "#FF4B4B" accent-purple: "#CE82FF" ink: "#3C3C3C" ink-muted: "#777777" canvas: "#ffffff" surface-1: "#F7F7F7" surface-2: "#EBEBEB" border: "#E5E5E5" streak: "#FF9600" xp: "#FFC800"
typography: display: fontFamily: "Feather Bold, Nunito, -apple-system, sans-serif" fontSize: 40px fontWeight: 800 lineHeight: 1.15 letterSpacing: -0.01em body: fontFamily: "Nunito, -apple-system, BlinkMacSystemFont, sans-serif" fontSize: 15px fontWeight: 700 lineHeight: 1.5 letterSpacing: 0
spacing: base: 8px scale: [4, 8, 12, 16, 20, 24, 32, 40, 48, 64]
radius: sm: 8px md: 12px lg: 20px xl: 28px pill: 9999px
shadows: button: "0 4px 0 #58A700" card: "0 2px 0 #E5E5E5" elevated: "0 4px 16px rgba(0,0,0,0.1)"
motion: duration-fast: 80ms duration-base: 200ms easing: cubic-bezier(0.34, 1.56, 0.64, 1)
1. Visual Theme & Atmosphere
Duolingo is the most playful app at scale. Every surface decision reinforces the gamification loop: the green CTA button has a physical shadow (4px bottom) that depresses on press, streaks and XP use warm yellows and oranges, and Duo the owl mascot provides emotional feedback throughout. The app runs on positive reinforcement — correct answers trigger green explosions and character celebrations. The design system serves behavioral psychology as much as aesthetics.
2. Color System
Green is Duolingo's core identity:
- Primary green: #58CC02 — CTAs, correct states, active elements
- Green shadow: #58A700 — 3D button shadow effect, giving buttons physicality
- Blue: #1CB0F6 — secondary actions, listening exercises
- Yellow: #FFC800 — streaks, XP, gold achievements
- Red: #FF4B4B — incorrect answers, hearts/lives
- Purple: #CE82FF — gems, premium features
- Canvas: White with minimal gray surface layers
3. Typography
Feather Bold (and Nunito as fallback) is rounded and chunky — the letters feel approachable for language learners of all ages. Body text runs heavy (700) even at reading sizes, reinforcing the bold character of the system. All caps labels use tight tracking. No thin weights anywhere — this system doesn't whisper.
4. Components & Patterns
- CTA button: Full-width, 3D shadow effect that presses down on click, large border-radius (12px)
- Progress bar: Green fill with animated XP gain, rounded pill shape
- Lesson cards: Bold bordered tiles with character art, thick outline style
- Answer options: Large tap targets, 12px radius, border changes on select (green correct / red wrong)
- Streak flame: Animated fire icon, orange color, always in navigation header
- Character feedback: Full-screen celebration with Duo animation on lesson complete
5. Spacing & Layout
Mobile-first. Primary lesson view is single-column, 16px horizontal padding. Tap targets minimum 56px height. Marketing and web are centered column ~640px max. White space is minimal — the content is dense with interactive elements.
6. Motion & Interaction
Highly animated. Correct answers trigger particle explosions. Duo bounces and waves. Buttons physically press. Streak milestones play full-screen animations. The motion design is closer to a mobile game than a productivity app — every interaction has a reward signal.