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});