feat: add JetBrains themes

This commit is contained in:
Bohdan Triapitsyn
2026-05-28 01:13:37 +03:00
parent 32ab46c567
commit 3817a5947f
3 changed files with 368 additions and 0 deletions
@@ -0,0 +1,182 @@
{
"metadata": {
"id": "jetbrains-dark",
"name": "JetBrains",
"description": "JetBrains IDE-inspired colors for OpenChamber - dark variant",
"author": "Artem Evsevev, adapted for OpenChamber",
"version": "1.0.0",
"variant": "dark",
"tags": [
"dark",
"jetbrains",
"ide",
"blue"
]
},
"colors": {
"primary": {
"base": "#6796f5",
"hover": "#70AEFF",
"active": "#5594FA",
"foreground": "#1E1F22",
"muted": "#6796f580",
"emphasis": "#70AEFF"
},
"surface": {
"background": "#1E1F22",
"foreground": "#DFE1E5",
"muted": "#26282B",
"mutedForeground": "#9fa0a2",
"elevated": "#2B2D30",
"elevatedForeground": "#DFE1E5",
"overlay": "#00000080",
"subtle": "#2c2d32"
},
"interactive": {
"border": "#474a51",
"borderHover": "#4B5059",
"borderFocus": "#6796f5",
"selection": "#43454A",
"selectionForeground": "#DFE1E5",
"focus": "#6796f5",
"focusRing": "#6796f550",
"cursor": "#CED0D6",
"hover": "#3C3E41",
"active": "#494A4D"
},
"status": {
"error": "#FA6675",
"errorForeground": "#1E1F22",
"errorBackground": "#402929",
"errorBorder": "#FA6675",
"warning": "#F2C55C",
"warningForeground": "#1E1F22",
"warningBackground": "#665014",
"warningBorder": "#F2C55C",
"success": "#57965D",
"successForeground": "#1E1F22",
"successBackground": "#253627",
"successBorder": "#57965D",
"info": "#3592C4",
"infoForeground": "#1E1F22",
"infoBackground": "#243846",
"infoBorder": "#3592C4"
},
"pr": {
"open": "#5FAD65",
"draft": "#868A91",
"blocked": "#F2C55C",
"merged": "#A571E6",
"closed": "#DB5C5C"
},
"syntax": {
"base": {
"background": "#1E1F22",
"foreground": "#BCBEC4",
"comment": "#7A7E85",
"keyword": "#CF8E6D",
"string": "#6AAB73",
"number": "#2AACB8",
"function": "#6AA2D7",
"variable": "#BCBEC4",
"type": "#A6BB77",
"operator": "#BCBEC4"
},
"tokens": {
"commentDoc": "#5F826B",
"stringEscape": "#CF8E6D",
"keywordImport": "#CF8E6D",
"storageModifier": "#CF8E6D",
"functionCall": "#6AA2D7",
"method": "#6AA2D7",
"functionBuiltin": "#D5A563",
"variableProperty": "#C77DBB",
"variableOther": "#BCBEC4",
"variableGlobal": "#E59EAE",
"variableLocal": "#BCBEC4",
"parameter": "#3CACAC",
"constant": "#C77DBB",
"class": "#57AAF7",
"className": "#57AAF7",
"interface": "#8D91DC",
"struct": "#A6BB77",
"enum": "#A6BB77",
"typeParameter": "#3CACAC",
"namespace": "#BCBEC4",
"module": "#8D91DC",
"tag": "#D5B778",
"jsxTag": "#D5B778",
"tagAttribute": "#B3AE60",
"tagAttributeValue": "#6AAB73",
"boolean": "#CF8E6D",
"decorator": "#B3AE60",
"label": "#D5A563",
"punctuation": "#BCBEC4",
"macro": "#D5A563",
"preprocessor": "#D5A563",
"regex": "#6AAB73",
"url": "#57AAF7",
"key": "#C77DBB",
"exception": "#E59EAE"
},
"highlights": {
"diffAdded": "#549159",
"diffAddedBackground": "#294436",
"diffRemoved": "#F75464",
"diffRemovedBackground": "#45302B",
"diffModified": "#70AEFF",
"diffModifiedBackground": "#243C63",
"lineNumber": "#4B5059",
"lineNumberActive": "#A1A3AB"
}
},
"markdown": {
"heading1": "#FFFFFF",
"heading2": "#DFE1E5",
"heading3": "#CED0D6",
"heading4": "#BCBEC4",
"link": "#56A8F5",
"linkHover": "#6796f5",
"inlineCode": "#6AAB73",
"inlineCodeBackground": "#26282B",
"blockquote": "#7A7E85",
"blockquoteBorder": "#393B41",
"listMarker": "#B3AE6099"
},
"chat": {
"userMessage": "#DFE1E5",
"userMessageBackground": "#3a5b9d76",
"assistantMessage": "#DFE1E5",
"assistantMessageBackground": "#1E1F22",
"timestamp": "#7A7E85",
"divider": "#393B41"
},
"tools": {
"background": "#26282B50",
"border": "#393B41",
"headerHover": "#3C3E4150",
"icon": "#B0B1B3",
"title": "#DFE1E5",
"description": "#B0B1B3",
"edit": {
"added": "#549159",
"addedBackground": "#29443640",
"removed": "#F75464",
"removedBackground": "#45302B40",
"lineNumber": "#4B5059"
}
}
},
"config": {
"fonts": {
"sans": "\"JetBrains Mono\", \"IBM Plex Mono\", monospace",
"mono": "\"JetBrains Mono\", \"IBM Plex Mono\", monospace",
"heading": "\"JetBrains Mono\", \"IBM Plex Mono\", monospace"
},
"transitions": {
"fast": "150ms ease",
"normal": "250ms ease",
"slow": "350ms ease"
}
}
}
@@ -0,0 +1,182 @@
{
"metadata": {
"id": "jetbrains-light",
"name": "JetBrains",
"description": "JetBrains IDE-inspired colors for OpenChamber - light variant",
"author": "Artem Evsevev, adapted for OpenChamber",
"version": "1.0.0",
"variant": "light",
"tags": [
"light",
"jetbrains",
"ide",
"blue"
]
},
"colors": {
"primary": {
"base": "#195ce3",
"hover": "#2D61F0",
"active": "#0055FF",
"foreground": "#FFFFFF",
"muted": "#3573F080",
"emphasis": "#006DCC"
},
"surface": {
"background": "#FFF",
"foreground": "#000000",
"muted": "#F7F8FA",
"mutedForeground": "#404040",
"elevated": "#FFFFFF",
"elevatedForeground": "#000000",
"overlay": "#00000025",
"subtle": "#ecf0f8"
},
"interactive": {
"border": "#cfd3de",
"borderHover": "#AEB3C2",
"borderFocus": "#0055FF",
"selection": "#DFE1E5",
"selectionForeground": "#000000",
"focus": "#0055FF",
"focusRing": "#0055FF40",
"cursor": "#000000",
"hover": "#E6E6E8",
"active": "#DBDCDE"
},
"status": {
"error": "#CE0606",
"errorForeground": "#FFFFFF",
"errorBackground": "#FFE8E8",
"errorBorder": "#CF5B56",
"warning": "#F49810",
"warningForeground": "#000000",
"warningBackground": "#FFF8DC",
"warningBorder": "#F49810",
"success": "#077D18",
"successForeground": "#FFFFFF",
"successBackground": "#E9F5E6",
"successBorder": "#55A76A",
"info": "#389FD6",
"infoForeground": "#000000",
"infoBackground": "#E7F4FB",
"infoBorder": "#389FD6"
},
"pr": {
"open": "#369650",
"draft": "#808080",
"blocked": "#F49810",
"merged": "#834DF0",
"closed": "#E55765"
},
"syntax": {
"base": {
"background": "#FFFFFF",
"foreground": "#080808",
"comment": "#8C8C8C",
"keyword": "#0033B3",
"string": "#067D17",
"number": "#1750EB",
"function": "#00627A",
"variable": "#000000",
"type": "#A04908",
"operator": "#080808"
},
"tokens": {
"commentDoc": "#8C8C8C",
"stringEscape": "#0037A6",
"keywordImport": "#0033B3",
"storageModifier": "#0033B3",
"functionCall": "#00627A",
"method": "#00627A",
"functionBuiltin": "#C27203",
"variableProperty": "#871094",
"variableOther": "#000000",
"variableGlobal": "#1C5DFE",
"variableLocal": "#000000",
"parameter": "#007E8A",
"constant": "#871094",
"class": "#00627A",
"className": "#00627A",
"interface": "#835DDA",
"struct": "#A04908",
"enum": "#A04908",
"typeParameter": "#007E8A",
"namespace": "#000000",
"module": "#835DDA",
"tag": "#0033B3",
"jsxTag": "#0033B3",
"tagAttribute": "#9E880D",
"tagAttributeValue": "#067D17",
"boolean": "#0033B3",
"decorator": "#9E880D",
"label": "#C27203",
"punctuation": "#080808",
"macro": "#C27203",
"preprocessor": "#C27203",
"regex": "#067D17",
"url": "#00627A",
"key": "#871094",
"exception": "#1C5DFE"
},
"highlights": {
"diffAdded": "#077D18",
"diffAddedBackground": "#BEE6BE",
"diffRemoved": "#FF0000",
"diffRemovedBackground": "#FFD5CC",
"diffModified": "#0133B3",
"diffModifiedBackground": "#DDE8FF",
"lineNumber": "#AEB3C2",
"lineNumberActive": "#767A8A"
}
},
"markdown": {
"heading1": "#000000",
"heading2": "#161617",
"heading3": "#404040",
"heading4": "#404040",
"link": "#006DCC",
"linkHover": "#3573F0",
"inlineCode": "#067D17",
"inlineCodeBackground": "#F5F7F9",
"blockquote": "#8C8C8C",
"blockquoteBorder": "#C9CCD6",
"listMarker": "#9E880D99"
},
"chat": {
"userMessage": "#000000",
"userMessageBackground": "#E8F1FF",
"assistantMessage": "#000000",
"assistantMessageBackground": "#F7F8FA",
"timestamp": "#767A8A",
"divider": "#C9CCD6"
},
"tools": {
"background": "#F5F7F950",
"border": "#AEB3C280",
"headerHover": "#E6E6E8",
"icon": "#404040",
"title": "#000000",
"description": "#404040",
"edit": {
"added": "#077D18",
"addedBackground": "#BEE6BE50",
"removed": "#FF0000",
"removedBackground": "#FFD5CC50",
"lineNumber": "#AEB3C2"
}
}
},
"config": {
"fonts": {
"sans": "\"JetBrains Mono\", \"IBM Plex Mono\", monospace",
"mono": "\"JetBrains Mono\", \"IBM Plex Mono\", monospace",
"heading": "\"JetBrains Mono\", \"IBM Plex Mono\", monospace"
},
"transitions": {
"fast": "150ms ease",
"normal": "250ms ease",
"slow": "350ms ease"
}
}
}
@@ -19,6 +19,8 @@ import dracula_light_Raw from './dracula-light.json';
// import github_light_Raw from './github-light.json';
import gruvbox_dark_Raw from './gruvbox-dark.json';
import gruvbox_light_Raw from './gruvbox-light.json';
import jetbrains_dark_Raw from './jetbrains-dark.json';
import jetbrains_light_Raw from './jetbrains-light.json';
import kanagawa_dark_Raw from './kanagawa-dark.json';
import kanagawa_light_Raw from './kanagawa-light.json';
// import lucent_orng_dark_Raw from './lucent-orng-dark.json';
@@ -79,6 +81,8 @@ export const presetThemes: Theme[] = [
// github_light_Raw as Theme,
gruvbox_dark_Raw as Theme,
gruvbox_light_Raw as Theme,
jetbrains_dark_Raw as Theme,
jetbrains_light_Raw as Theme,
kanagawa_dark_Raw as Theme,
kanagawa_light_Raw as Theme,
// lucent_orng_dark_Raw as Theme,