summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAdam <[email protected]>2026-03-12 14:11:12 -0500
committerAdam <[email protected]>2026-03-12 14:11:22 -0500
commit02c75821a897657a3512ad157e9666a830b76253 (patch)
tree600a3e4ede113e8dd803bcab28bb16c5d99427de
parent3ba9ab2c0ab695bc56dfbd16d3f85854e504dbb5 (diff)
downloadopencode-02c75821a897657a3512ad157e9666a830b76253.tar.gz
opencode-02c75821a897657a3512ad157e9666a830b76253.zip
feat(app): AMOLED theme
-rw-r--r--packages/ui/src/theme/default-themes.ts3
-rw-r--r--packages/ui/src/theme/themes/amoled.json49
2 files changed, 52 insertions, 0 deletions
diff --git a/packages/ui/src/theme/default-themes.ts b/packages/ui/src/theme/default-themes.ts
index b3cfb340c..4b5601b1c 100644
--- a/packages/ui/src/theme/default-themes.ts
+++ b/packages/ui/src/theme/default-themes.ts
@@ -14,6 +14,7 @@ import vesperThemeJson from "./themes/vesper.json"
import carbonfoxThemeJson from "./themes/carbonfox.json"
import gruvboxThemeJson from "./themes/gruvbox.json"
import auraThemeJson from "./themes/aura.json"
+import amoledThemeJson from "./themes/amoled.json"
export const oc2Theme = oc2ThemeJson as DesktopTheme
export const tokyonightTheme = tokyoThemeJson as DesktopTheme
@@ -30,9 +31,11 @@ export const vesperTheme = vesperThemeJson as DesktopTheme
export const carbonfoxTheme = carbonfoxThemeJson as DesktopTheme
export const gruvboxTheme = gruvboxThemeJson as DesktopTheme
export const auraTheme = auraThemeJson as DesktopTheme
+export const amoledTheme = amoledThemeJson as DesktopTheme
export const DEFAULT_THEMES: Record<string, DesktopTheme> = {
"oc-2": oc2Theme,
+ amoled: amoledTheme,
aura: auraTheme,
ayu: ayuTheme,
carbonfox: carbonfoxTheme,
diff --git a/packages/ui/src/theme/themes/amoled.json b/packages/ui/src/theme/themes/amoled.json
new file mode 100644
index 000000000..4734927a2
--- /dev/null
+++ b/packages/ui/src/theme/themes/amoled.json
@@ -0,0 +1,49 @@
+{
+ "$schema": "https://opencode.ai/desktop-theme.json",
+ "name": "AMOLED",
+ "id": "amoled",
+ "light": {
+ "palette": {
+ "neutral": "#f0f0f0",
+ "ink": "#0a0a0a",
+ "primary": "#6200ff",
+ "accent": "#ff0080",
+ "success": "#00e676",
+ "warning": "#ffab00",
+ "error": "#ff1744",
+ "info": "#00b0ff",
+ "diffAdd": "#00e676",
+ "diffDelete": "#ff1744"
+ },
+ "overrides": {
+ "syntax-comment": "#757575",
+ "syntax-keyword": "#d500f9",
+ "syntax-string": "#00e676",
+ "syntax-primitive": "#00b0ff",
+ "syntax-property": "#ff9100",
+ "syntax-constant": "#6200ff"
+ }
+ },
+ "dark": {
+ "palette": {
+ "neutral": "#000000",
+ "ink": "#ffffff",
+ "primary": "#b388ff",
+ "accent": "#ff4081",
+ "success": "#00ff88",
+ "warning": "#ffea00",
+ "error": "#ff1744",
+ "info": "#18ffff",
+ "diffAdd": "#00ff88",
+ "diffDelete": "#ff1744"
+ },
+ "overrides": {
+ "syntax-comment": "#555555",
+ "syntax-keyword": "#ff00ff",
+ "syntax-string": "#00ff88",
+ "syntax-primitive": "#18ffff",
+ "syntax-property": "#ffea00",
+ "syntax-constant": "#b388ff"
+ }
+ }
+}