Skip to content
This repository was archived by the owner on Apr 1, 2026. It is now read-only.

Commit 9cce0cf

Browse files
authored
feat: add Night Owl theme (desktop) (anomalyco#7151)
Co-authored-by: shuv <shuv@shuv.dev>
1 parent a41c850 commit 9cce0cf

3 files changed

Lines changed: 135 additions & 0 deletions

File tree

packages/ui/src/theme/default-themes.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import catppuccinThemeJson from "./themes/catppuccin.json"
99
import ayuThemeJson from "./themes/ayu.json"
1010
import oneDarkProThemeJson from "./themes/onedarkpro.json"
1111
import shadesOfPurpleThemeJson from "./themes/shadesofpurple.json"
12+
import nightowlThemeJson from "./themes/nightowl.json"
1213

1314
export const oc1Theme = oc1ThemeJson as DesktopTheme
1415
export const tokyonightTheme = tokyoThemeJson as DesktopTheme
@@ -20,6 +21,7 @@ export const catppuccinTheme = catppuccinThemeJson as DesktopTheme
2021
export const ayuTheme = ayuThemeJson as DesktopTheme
2122
export const oneDarkProTheme = oneDarkProThemeJson as DesktopTheme
2223
export const shadesOfPurpleTheme = shadesOfPurpleThemeJson as DesktopTheme
24+
export const nightowlTheme = nightowlThemeJson as DesktopTheme
2325

2426
export const DEFAULT_THEMES: Record<string, DesktopTheme> = {
2527
"oc-1": oc1Theme,
@@ -32,4 +34,5 @@ export const DEFAULT_THEMES: Record<string, DesktopTheme> = {
3234
ayu: ayuTheme,
3335
onedarkpro: oneDarkProTheme,
3436
shadesofpurple: shadesOfPurpleTheme,
37+
nightowl: nightowlTheme,
3538
}

packages/ui/src/theme/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,5 @@ export {
4141
ayuTheme,
4242
oneDarkProTheme,
4343
shadesOfPurpleTheme,
44+
nightowlTheme,
4445
} from "./default-themes"
Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
{
2+
"$schema": "https://opencode.ai/desktop-theme.json",
3+
"name": "Night Owl",
4+
"id": "nightowl",
5+
"light": {
6+
"seeds": {
7+
"neutral": "#f0f0f0",
8+
"primary": "#4876d6",
9+
"success": "#2aa298",
10+
"warning": "#c96765",
11+
"error": "#de3d3b",
12+
"info": "#4876d6",
13+
"interactive": "#4876d6",
14+
"diffAdd": "#2aa298",
15+
"diffDelete": "#de3d3b"
16+
},
17+
"overrides": {
18+
"background-base": "#fbfbfb",
19+
"background-weak": "#f0f0f0",
20+
"background-strong": "#ffffff",
21+
"background-stronger": "#ffffff",
22+
"border-weak-base": "#d9d9d9",
23+
"border-weak-hover": "#cccccc",
24+
"border-weak-active": "#bfbfbf",
25+
"border-weak-selected": "#4876d6",
26+
"border-weak-disabled": "#e6e6e6",
27+
"border-weak-focus": "#4876d6",
28+
"border-base": "#c0c0c0",
29+
"border-hover": "#b3b3b3",
30+
"border-active": "#a6a6a6",
31+
"border-selected": "#4876d6",
32+
"border-disabled": "#d9d9d9",
33+
"border-focus": "#4876d6",
34+
"border-strong-base": "#90a7b2",
35+
"border-strong-hover": "#7d9aa6",
36+
"border-strong-active": "#6a8d9a",
37+
"border-strong-selected": "#4876d6",
38+
"border-strong-disabled": "#c0c0c0",
39+
"border-strong-focus": "#4876d6",
40+
"surface-diff-add-base": "#eaf8f6",
41+
"surface-diff-delete-base": "#fbe9e9",
42+
"surface-diff-hidden-base": "#e8f0fc",
43+
"text-base": "#403f53",
44+
"text-weak": "#7a8181",
45+
"text-strong": "#1a1a1a",
46+
"syntax-string": "#c96765",
47+
"syntax-primitive": "#aa0982",
48+
"syntax-property": "#4876d6",
49+
"syntax-type": "#994cc3",
50+
"syntax-constant": "#2aa298",
51+
"syntax-info": "#4876d6",
52+
"markdown-heading": "#4876d6",
53+
"markdown-text": "#403f53",
54+
"markdown-link": "#4876d6",
55+
"markdown-link-text": "#2aa298",
56+
"markdown-code": "#2aa298",
57+
"markdown-block-quote": "#7a8181",
58+
"markdown-emph": "#994cc3",
59+
"markdown-strong": "#c96765",
60+
"markdown-horizontal-rule": "#90a7b2",
61+
"markdown-list-item": "#4876d6",
62+
"markdown-list-enumeration": "#2aa298",
63+
"markdown-image": "#4876d6",
64+
"markdown-image-text": "#2aa298",
65+
"markdown-code-block": "#403f53"
66+
}
67+
},
68+
"dark": {
69+
"seeds": {
70+
"neutral": "#011627",
71+
"primary": "#82aaff",
72+
"success": "#c5e478",
73+
"warning": "#ecc48d",
74+
"error": "#ef5350",
75+
"info": "#82aaff",
76+
"interactive": "#82aaff",
77+
"diffAdd": "#c5e478",
78+
"diffDelete": "#ef5350"
79+
},
80+
"overrides": {
81+
"background-base": "#011627",
82+
"background-weak": "#0b253a",
83+
"background-strong": "#001122",
84+
"background-stronger": "#000c17",
85+
"border-weak-base": "#1d3b53",
86+
"border-weak-hover": "#234561",
87+
"border-weak-active": "#2a506f",
88+
"border-weak-selected": "#82aaff",
89+
"border-weak-disabled": "#0f2132",
90+
"border-weak-focus": "#82aaff",
91+
"border-base": "#3a5a75",
92+
"border-hover": "#456785",
93+
"border-active": "#507494",
94+
"border-selected": "#82aaff",
95+
"border-disabled": "#1a3347",
96+
"border-focus": "#82aaff",
97+
"border-strong-base": "#5f7e97",
98+
"border-strong-hover": "#6e8da6",
99+
"border-strong-active": "#7d9cb5",
100+
"border-strong-selected": "#82aaff",
101+
"border-strong-disabled": "#2c4a63",
102+
"border-strong-focus": "#82aaff",
103+
"surface-diff-add-base": "#0a2e1a",
104+
"surface-diff-delete-base": "#2d1b1b",
105+
"surface-diff-hidden-base": "#0b253a",
106+
"text-base": "#d6deeb",
107+
"text-weak": "#5f7e97",
108+
"text-strong": "#ffffff",
109+
"syntax-string": "#ecc48d",
110+
"syntax-primitive": "#f78c6c",
111+
"syntax-property": "#82aaff",
112+
"syntax-type": "#c5e478",
113+
"syntax-constant": "#7fdbca",
114+
"syntax-info": "#82aaff",
115+
"markdown-heading": "#82aaff",
116+
"markdown-text": "#d6deeb",
117+
"markdown-link": "#82aaff",
118+
"markdown-link-text": "#7fdbca",
119+
"markdown-code": "#c5e478",
120+
"markdown-block-quote": "#5f7e97",
121+
"markdown-emph": "#c792ea",
122+
"markdown-strong": "#ecc48d",
123+
"markdown-horizontal-rule": "#5f7e97",
124+
"markdown-list-item": "#82aaff",
125+
"markdown-list-enumeration": "#7fdbca",
126+
"markdown-image": "#82aaff",
127+
"markdown-image-text": "#7fdbca",
128+
"markdown-code-block": "#d6deeb"
129+
}
130+
}
131+
}

0 commit comments

Comments
 (0)