Skip to content

Commit 210b6c9

Browse files
authored
Add Cotton Candy theme (#208)
- Register the new color theme in the UI - Add Cotton Candy light and dark palettes - Document the theme alongside the existing theme guide
1 parent 1891f13 commit 210b6c9

3 files changed

Lines changed: 80 additions & 3 deletions

File tree

apps/web/src/hooks/useTheme.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ type ColorTheme =
99
| "carbon"
1010
| "vapor"
1111
| "cathedral-circuit"
12+
| "cotton-candy"
1213
| "custom";
1314

1415
type FontFamily = "dm-sans" | "inter" | "plus-jakarta-sans";
@@ -27,6 +28,7 @@ export const COLOR_THEMES: { id: ColorTheme; label: string }[] = [
2728
{ id: "carbon", label: "Carbon" },
2829
{ id: "vapor", label: "Vapor" },
2930
{ id: "cathedral-circuit", label: "Cathedral Circuit" },
31+
{ id: "cotton-candy", label: "Cotton Candy" },
3032
{ id: "custom", label: "Custom" },
3133
];
3234

@@ -68,6 +70,7 @@ function getStoredColorTheme(): ColorTheme {
6870
raw === "carbon" ||
6971
raw === "vapor" ||
7072
raw === "cathedral-circuit" ||
73+
raw === "cotton-candy" ||
7174
raw === "custom"
7275
) {
7376
return raw;

apps/web/src/themes.css

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,66 @@
243243
--warning-foreground: #e8b830;
244244
}
245245

246+
/* ─── Cotton Candy ─── sweet, dreamy, adorably feminine ─── */
247+
248+
:root.theme-cotton-candy {
249+
color-scheme: light;
250+
--background: #fef5f8;
251+
--foreground: #2e1a2b;
252+
--card: #fceef4;
253+
--card-foreground: #2e1a2b;
254+
--popover: #fceef4;
255+
--popover-foreground: #2e1a2b;
256+
--primary: oklch(0.65 0.2 340);
257+
--primary-foreground: #ffffff;
258+
--secondary: rgba(220, 130, 180, 0.07);
259+
--secondary-foreground: #2e1a2b;
260+
--muted: rgba(180, 160, 220, 0.07);
261+
--muted-foreground: #8a7090;
262+
--accent: rgba(140, 200, 240, 0.12);
263+
--accent-foreground: #2e1a2b;
264+
--destructive: #e5486a;
265+
--destructive-foreground: #cd2b50;
266+
--border: rgba(220, 150, 200, 0.15);
267+
--input: rgba(220, 150, 200, 0.18);
268+
--ring: oklch(0.65 0.2 340);
269+
--info: #7baed4;
270+
--info-foreground: #5a90b8;
271+
--success: #6cc4a0;
272+
--success-foreground: #4aaa82;
273+
--warning: #e8b0c0;
274+
--warning-foreground: #c88a9a;
275+
}
276+
277+
:root.theme-cotton-candy.dark {
278+
color-scheme: dark;
279+
--background: #1a0e18;
280+
--foreground: #f2e4ef;
281+
--card: #221420;
282+
--card-foreground: #f2e4ef;
283+
--popover: #221420;
284+
--popover-foreground: #f2e4ef;
285+
--primary: oklch(0.72 0.18 340);
286+
--primary-foreground: #1a0e18;
287+
--secondary: rgba(240, 160, 210, 0.07);
288+
--secondary-foreground: #f2e4ef;
289+
--muted: rgba(200, 170, 240, 0.07);
290+
--muted-foreground: #a088a8;
291+
--accent: rgba(140, 200, 250, 0.1);
292+
--accent-foreground: #f2e4ef;
293+
--destructive: #ff6b8a;
294+
--destructive-foreground: #ff95aa;
295+
--border: rgba(220, 150, 200, 0.1);
296+
--input: rgba(220, 150, 200, 0.12);
297+
--ring: oklch(0.72 0.18 340);
298+
--info: #89cff0;
299+
--info-foreground: #a8dcf5;
300+
--success: #7dd4b0;
301+
--success-foreground: #90e0c0;
302+
--warning: #f0b8c8;
303+
--warning-foreground: #f5c8d5;
304+
}
305+
246306
/* ─── Cathedral Circuit ─── sacred machine, techno-gothic ─── */
247307

248308
:root.theme-cathedral-circuit {

docs/themes.md

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,20 @@ The goal is to avoid generic editor skins and instead build themes that feel lik
109109

110110
---
111111

112-
### 9. Arctic Signal
112+
### 9. Cotton Candy
113+
114+
**Vibe:** sweet, dreamy, adorably feminine
115+
**Palette:** pastel pink, baby blue, lavender, soft rose, cream
116+
117+
- Soft pink and baby blue create a whimsical, cotton candy fairground feel
118+
- Light mode is airy and bright with rosy card backgrounds
119+
- Dark mode wraps everything in a cozy plum-kissed night
120+
- Info/accent colors lean baby blue; primary leans hot pink
121+
- Playful yet legible — sugar rush without the eye strain
122+
123+
---
124+
125+
### 10. Arctic Signal
113126

114127
**Vibe:** crisp, focused, northern
115128
**Palette:** icy slate, polar blue, snow glow, aurora green
@@ -120,7 +133,7 @@ The goal is to avoid generic editor skins and instead build themes that feel lik
120133

121134
---
122135

123-
### 10. Cathedral Circuit
136+
### 11. Cathedral Circuit
124137

125138
**Vibe:** sacred machine, techno-gothic
126139
**Palette:** graphite, sapphire, ruby, emerald, dim gold
@@ -131,7 +144,7 @@ The goal is to avoid generic editor skins and instead build themes that feel lik
131144

132145
---
133146

134-
### 11. Desert Mirage
147+
### 12. Desert Mirage
135148

136149
**Vibe:** cinematic, unusual, warm
137150
**Palette:** dark bronze-brown, sand, cactus green, sunset coral, twilight violet
@@ -165,6 +178,7 @@ If narrowing to a stronger first shortlist, these feel the most distinctive:
165178
### Playful / expressive
166179

167180
- Candy Reactor
181+
- Cotton Candy
168182
- Velvet Casino
169183

170184
### Atmospheric / weird

0 commit comments

Comments
 (0)