Skip to content

Commit 65f11c4

Browse files
committed
better rainbow
1 parent 59cb918 commit 65f11c4

5 files changed

Lines changed: 54 additions & 10 deletions

File tree

public/build-data-pr.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
22
"count": null,
3-
"timestamp": 1780383250034
3+
"timestamp": 1780383718585
44
}

public/build-data-pypi.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"version": "9.14.0",
33
"releaseDate": "May 29, 2026",
4-
"timestamp": 1780383250035
4+
"timestamp": 1780383718586
55
}

src/components/SeasonalBanner.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ const C = {
1313
fn: '#79c0ff', // function name blue
1414
str: '#ffa657', // string literal amber
1515
punc: '#8b949e', // parens / punctuation slate
16-
message: '#f0f6fc', // output text, near-white
1716
};
1817

1918
/** Minimal tokenizer to syntax-highlight the faux command, e.g. celebrate('pride'). */
@@ -128,9 +127,9 @@ export default function SeasonalBanner() {
128127
Out[{month}]:
129128
</span>
130129

131-
{/* the message itself — the cell's output */}
132-
<span className="sb-fade sb-d3 font-medium" style={{ color: C.message }}>
133-
{config.banner}
130+
{/* the message itself — the cell's output, rainbow-clipped text */}
131+
<span className="sb-fade sb-d3 font-medium">
132+
<span className="sb-msg">{config.banner}</span>
134133
<span className="sb-cursor ml-1.5" aria-hidden="true" />
135134
</span>
136135
</div>

src/styles/seasonal-banner.css

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,24 @@
4545
height: 3px;
4646
}
4747

48+
/* The banner message as bright rainbow-clipped text (readable on the dark
49+
terminal surface). The flag emoji renders in full color regardless. */
50+
.sb-msg {
51+
background-image: linear-gradient(
52+
90deg,
53+
#fb7185,
54+
#fdba74,
55+
#fde047,
56+
#86efac,
57+
#93c5fd,
58+
#c4b5fd
59+
);
60+
-webkit-background-clip: text;
61+
background-clip: text;
62+
-webkit-text-fill-color: transparent;
63+
color: transparent;
64+
}
65+
4866
/* Blinking terminal cursor. */
4967
.sb-cursor {
5068
display: inline-block;

src/styles/themes/rainbow.css

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,37 @@
2828
#732982 83.33%, #732982 100%) !important;
2929
}
3030

31-
/* Note: headings (h2/h3) use the base `.gradient-text`, which is driven by the
32-
softened, readable theme vars above. We intentionally do NOT clip the full
33-
6-color flag into heading text — its yellow band is unreadable on white
34-
sections. The flag stays in the decorative section backgrounds below. */
31+
/* Headings (h2/h3 use .gradient-text): a full-spectrum rainbow so the pride
32+
feel comes through, but with deepened tones — and a readable gold in place of
33+
pure yellow — so every glyph stays AA (>=4.5:1) on white sections. */
34+
[data-color-theme="rainbow"] .gradient-text {
35+
background-image: linear-gradient(
36+
to right,
37+
#e11d48,
38+
#c2410c,
39+
#a16207,
40+
#15803d,
41+
#1d4ed8,
42+
#7c3aed
43+
);
44+
-webkit-background-clip: text;
45+
background-clip: text;
46+
-webkit-text-fill-color: transparent;
47+
color: transparent;
48+
}
49+
50+
/* Dark mode: brighter rainbow tones, readable on the dark surface. */
51+
.dark[data-color-theme="rainbow"] .gradient-text {
52+
background-image: linear-gradient(
53+
to right,
54+
#fb7185,
55+
#fdba74,
56+
#fde047,
57+
#86efac,
58+
#93c5fd,
59+
#c4b5fd
60+
);
61+
}
3562

3663
/* Add backdrop blur to gradient sections */
3764
[data-color-theme="rainbow"] section.gradient-hero .max-w-7xl.py-20,

0 commit comments

Comments
 (0)