gruvbox-medium.ts

  1import chroma from "chroma-js"
  2import { colorRamp, createColorScheme } from "../common/ramps"
  3
  4const name = "Gruvbox"
  5const author = "Dawid Kurek (dawikur@gmail.com)"
  6const url = "https://github.com/morhetz/gruvbox"
  7const license = {
  8    type: "MIT/X11",
  9    url: "https://en.wikipedia.org/wiki/MIT_License",
 10}
 11
 12export const dark = createColorScheme(`${name} Dark Medium`, false, {
 13    neutral: chroma.scale([
 14        "#282828",
 15        "#3c3836",
 16        "#504945",
 17        "#665c54",
 18        "#7C6F64",
 19        "#928374",
 20        "#A89984",
 21        "#BDAE93",
 22        "#D5C4A1",
 23        "#EBDBB2",
 24        "#FBF1C7",
 25    ]),
 26    red: chroma.scale([
 27        "#4D150F",
 28        "#7D241A",
 29        "#A31C17",
 30        "#CC241D",
 31        "#C83A29",
 32        "#FB4934",
 33        "#F06D61",
 34        "#E6928E",
 35        "#FFFFFF",
 36    ]),
 37    orange: chroma.scale([
 38        "#462307",
 39        "#7F400C",
 40        "#AB4A0B",
 41        "#D65D0E",
 42        "#CB6614",
 43        "#FE8019",
 44        "#F49750",
 45        "#EBAE87",
 46        "#FFFFFF",
 47    ]),
 48    yellow: chroma.scale([
 49        "#3D2C05",
 50        "#7D5E17",
 51        "#AC7A1A",
 52        "#D79921",
 53        "#E8AB28",
 54        "#FABD2F",
 55        "#F2C45F",
 56        "#EBCC90",
 57        "#FFFFFF",
 58    ]),
 59    green: chroma.scale([
 60        "#32330A",
 61        "#5C5D13",
 62        "#797814",
 63        "#98971A",
 64        "#93951E",
 65        "#B8BB26",
 66        "#C2C359",
 67        "#CCCB8D",
 68        "#FFFFFF",
 69    ]),
 70    cyan: chroma.scale([
 71        "#283D20",
 72        "#47603E",
 73        "#537D54",
 74        "#689D6A",
 75        "#719963",
 76        "#8EC07C",
 77        "#A1C798",
 78        "#B4CEB5",
 79        "#FFFFFF",
 80    ]),
 81    blue: chroma.scale([
 82        "#103738",
 83        "#214C4D",
 84        "#376A6C",
 85        "#458588",
 86        "#688479",
 87        "#83A598",
 88        "#92B3AE",
 89        "#A2C2C4",
 90        "#FFFFFF",
 91    ]),
 92    violet: chroma.scale([
 93        "#392228",
 94        "#69434D",
 95        "#8D4E6B",
 96        "#B16286",
 97        "#A86B7C",
 98        "#D3869B",
 99        "#D59BAF",
100        "#D8B1C3",
101        "#FFFFFF",
102    ]),
103    magenta: chroma.scale([
104        "#48402C",
105        "#756D59",
106        "#867A69",
107        "#A89984",
108        "#BCAF8E",
109        "#EBDBB2",
110        "#DFD3BA",
111        "#D4CCC2",
112        "#FFFFFF",
113    ]),
114})
115
116export const light = createColorScheme(`${name} Light Medium`, true, {
117    neutral: chroma.scale([
118        "#282828",
119        "#3c3836",
120        "#504945",
121        "#665c54",
122        "#7C6F64",
123        "#928374",
124        "#A89984",
125        "#BDAE93",
126        "#D5C4A1",
127        "#EBDBB2",
128        "#FBF1C7",
129    ]),
130    red: colorRamp(chroma("#9d0006")),
131    orange: colorRamp(chroma("#af3a03")),
132    yellow: colorRamp(chroma("#b57614")),
133    green: colorRamp(chroma("#79740e")),
134    cyan: colorRamp(chroma("#427b58")),
135    blue: colorRamp(chroma("#076678")),
136    violet: colorRamp(chroma("#8f3f71")),
137    magenta: colorRamp(chroma("#d65d0e")),
138})