Skip to content

Commit 255c6ea

Browse files
authored
custom theme (#7)
* feat: new theme * fix: title * feat: colors * feat: improve layout * chore: upgrade deps
1 parent e4b5f8f commit 255c6ea

File tree

8 files changed

+672
-273
lines changed

8 files changed

+672
-273
lines changed

astro.config.mjs

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,13 @@ export default defineConfig({
1515
integrations: [
1616
starlight({
1717
title: "Bombshell",
18-
customCss: [
19-
// Relative path to your @font-face CSS file.
20-
"./src/fonts/font-face.css",
21-
],
2218
logo: {
2319
dark: "./src/assets/dark.svg",
2420
light: "./src/assets/light.svg",
2521
},
22+
customCss: [
23+
'./src/styles/tint.css'
24+
],
2625
components: {
2726
Head: "./src/starlightOverrides/Head.astro",
2827
},
@@ -37,7 +36,7 @@ export default defineConfig({
3736
tag: "link",
3837
attrs: {
3938
rel: "stylesheet",
40-
href: "https://use.typekit.net/bst3mzh.css?v=4",
39+
href: "https://use.typekit.net/bst3mzh.css?v=5",
4140
},
4241
},
4342
{
@@ -69,11 +68,11 @@ export default defineConfig({
6968
},
7069
},
7170
],
72-
social: {
73-
discord: "https://bomb.sh/chat",
74-
blueSky: "https://bomb.sh/on/bluesky",
75-
github: "https://bomb.sh/on/github",
76-
},
71+
social: [
72+
{ icon: 'discord', label: 'Discord', href: 'https://bomb.sh/chat' },
73+
{ icon: 'blueSky', label: 'Bluesky', href: 'https://bomb.sh/on/bluesky' },
74+
{ icon: 'github', label: 'GitHub', href: 'https://bomb.sh/on/github' },
75+
],
7776
plugins: [
7877
topics([
7978
{

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
"astro": "astro"
1111
},
1212
"dependencies": {
13-
"@astrojs/starlight": "^0.32.2",
13+
"@astrojs/starlight": "^0.34.4",
14+
"@bomb.sh/args": "^0.3.1",
1415
"@clack/core": "^0.4.2",
1516
"@clack/prompts": "1.0.0-alpha.0",
16-
"@bomb.sh/args": "^0.3.1",
1717
"@types/node": "^22.13.11",
18-
"astro": "^5.1.5",
18+
"astro": "^5.10.0",
1919
"expressive-code-twoslash": "^0.4.0",
2020
"sharp": "^0.33.5",
2121
"starlight-sidebar-topics": "^0.6.0"

pnpm-lock.yaml

Lines changed: 399 additions & 154 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/fonts/LICENSE

Lines changed: 0 additions & 93 deletions
This file was deleted.

src/fonts/font-face.css

Lines changed: 0 additions & 8 deletions
This file was deleted.
-20.6 KB
Binary file not shown.

src/styles/starlight.css

Lines changed: 110 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,61 @@
11
:root {
2-
/* Font settings */
3-
--sl-font: 'Urbanis', sans-serif;
4-
--sl-font-heading: 'Urbanist', sans-serif;
2+
--sl-font: system-ui, sans-serif;
3+
--sl-font-heading: 'polymath-display', sans-serif;
54

6-
/* Ensure these are set for both light and dark themes */
7-
--sl-color-text-heading: var(--sl-color-text);
5+
--sl-color-text-heading: var(--heading-fill);
6+
--sl-text-h1: var(--sl-text-6xl);
7+
--sl-color-accent-hsl: 311 100% 50%;
8+
--sl-color-accent-low: hsl(311 100% 50% / 0.5);
9+
--sl-color-accent: hsl(311 100% 50% / 0.9);
10+
--sl-color-accent-high: hsl(311 100% 50% / 1);
11+
12+
--sl-color-bg: var(--container-fill);
13+
--sl-color-bg-nav: var(--container-fill);
14+
--sl-color-bg-sidebar: var(--container-fill);
15+
--sl-color-bg-inline-code: var(--surface-inner-fill);
16+
--sl-color-bg-accent: var(--sl-color-accent-high);
17+
--sl-color-hairline-light: var(--surface-border-fill);
18+
--sl-color-hairline: var(--surface-border-fill);
19+
--sl-color-hairline-shade: var(--surface-border-fill);
20+
21+
--sl-icon-color: var(--color-white-90);
22+
}
23+
24+
:is(h1, h2, h3, h4, h5, h6) {
25+
font-feature-settings: 'ss03' on, 'ss12' on;
26+
}
27+
28+
:is(h1, .starlight-sidebar-topics) {
29+
font-feature-settings: 'ss01' on, 'ss03' on, 'ss09' on, 'ss10' on, 'ss12' on;
30+
font-family: var(--sl-font-heading);
31+
}
32+
:is(.starlight-sidebar-topics li) {
33+
font: inherit;
34+
font-feature-settings: inherit;
35+
text-transform: lowercase;
36+
}
37+
38+
:is(h1) {
39+
--c-border: var(--color-white-100);
40+
--c-start: var(--color-white-90);
41+
--c-end: var(--color-white-50);
42+
--s-border: 1px;
43+
-webkit-text-stroke-color: var(--c-border);
44+
-webkit-text-stroke-width: var(--s-border);
45+
background-clip: text;
46+
-webkit-background-clip: text;
47+
-webkit-text-fill-color: transparent;
48+
background-image: linear-gradient(to right, var(--c-start), var(--c-end));
49+
letter-spacing: 1px;
50+
}
51+
52+
:is(h2, h3, h4, h5, h6) {
53+
--c-start: var(--color-white-100);
54+
--c-end: var(--color-white-50);
55+
background-clip: text;
56+
-webkit-background-clip: text;
57+
-webkit-text-fill-color: transparent;
58+
background-image: linear-gradient(to right, var(--c-start), var(--c-end));
859
}
960

1061
/* Target specific elements */
@@ -15,6 +66,33 @@ header h1 {
1566
font-family: var(--sl-font-heading);
1667
}
1768

69+
a.site-title {
70+
color: white;
71+
}
72+
73+
starlight-toc nav > ul {
74+
--c-start: var(--color-white-50);
75+
--c-end: var(--color-white-10);
76+
border-left: 1px solid transparent;
77+
position: relative;
78+
&::before {
79+
content: '';
80+
position: absolute;
81+
top: 0;
82+
bottom: 0;
83+
left: 0;
84+
width: var(--border-050);
85+
background: linear-gradient(to bottom, var(--c-start), var(--c-end));
86+
}
87+
a {
88+
border-left: 2px solid transparent;
89+
border-radius: 0;
90+
}
91+
[aria-current] {
92+
border-left-color: var(--sl-color-accent);
93+
}
94+
}
95+
1896
p,
1997
li,
2098
td,
@@ -32,3 +110,30 @@ blockquote {
32110
background-color: #181818;
33111
color: white;
34112
}
113+
114+
.sidebar-pane {
115+
a {
116+
border: 1px solid transparent;
117+
}
118+
[aria-current="page"] {
119+
--c-start: hsl(var(--sl-color-accent-hsl) / 5%);
120+
--c-end: hsl(var(--sl-color-accent-hsl) / 30%);
121+
color: var(--sl-color-accent);
122+
background: linear-gradient(to right, var(--c-start), var(--c-end));
123+
border-color: var(--sl-color-accent);
124+
125+
&:hover {
126+
--c-start: hsl(var(--sl-color-accent-hsl) / 100%);
127+
--c-end: hsl(var(--sl-color-accent-hsl) / 50%);
128+
border-color: var(--sl-color-accent);
129+
color: var(--color-gray-100);
130+
background: linear-gradient(to right, var(--c-start), var(--c-end));
131+
}
132+
}
133+
}
134+
135+
starlight-menu-button button,
136+
mobile-starlight-toc nav {
137+
top: unset;
138+
bottom: 0;
139+
}

0 commit comments

Comments
 (0)