Lime Grove
A light theme for Visual Studio Code with lime green syntax and dark orange chrome. 6 perceptually distinct colors for maximum code readability.
A light theme for Visual Studio Code with lime green syntax and dark orange chrome. 6 perceptually distinct colors for maximum code readability.
Full workbench mockup using this variant's colors and tokenColors.
Loading...
Workbench UI color keys from the theme JSON colors map.
TextMate scopes and font styles (syntax highlighting rules).
| scope | foreground | fontStyle |
|---|---|---|
| source, text | #2D2810 | — |
| comment, punctuation.definition.comment, comment.block, comment.line | #8A7848 | italic |
| comment.block.documentation, comment.line.double-slash.documentation | #706030 | italic |
| keyword, keyword.control, keyword.control.flow, keyword.control.conditional, keyword.control.loop, keyword.control.import, keyword.control.export, keyword.control.return, keyword.control.trycatch, keyword.control.exception, keyword.other.using, keyword.other.import, keyword.operator.new, keyword.operator.delete, keyword.operator.typeof, keyword.operator.void, keyword.operator.instanceof, keyword.operator.in, keyword.operator.of | #7B4FBE | bold |
| storage.type, storage.modifier | #7B4FBE | bold |
| entity.name.type, entity.name.class, entity.name.namespace, entity.name.scope-resolution, entity.name.enum | #1A6FAF | bold |
| support.class, support.type, meta.type.annotation, meta.type.parameters, entity.other.inherited-class | #1A6FAF | — |
| keyword.type, support.type.primitive, storage.type.primitive, storage.type.numeric, storage.type.string, storage.type.boolean, storage.type.object, storage.type.void, storage.type.cs | #1A6FAF | — |
| entity.name.function, entity.name.method, entity.name.member | #C05A10 | bold |
| meta.function-call entity.name.function, meta.method-call entity.name.function, support.function, support.function.builtin | #C05A10 | — |
| variable.parameter | #8B5A30 | italic |
| variable, variable.other, variable.other.readwrite, variable.other.object, variable.other.object.property | #2D2810 | — |
| variable.language | #7B4FBE | italic |
| variable.other.property, variable.other.member, support.variable.property | #1A5A8A | — |
| string, string.quoted, string.quoted.single, string.quoted.double, string.quoted.triple, string.template, string.interpolated | #3A8A0A | — |
| constant.character.escape, constant.character.entity | #A06000 | bold |
| punctuation.definition.template-expression, punctuation.section.embedded | #C05A10 | bold |
| constant.numeric, constant.numeric.integer, constant.numeric.float, constant.numeric.hex, constant.numeric.octal, constant.numeric.binary | #B5420A | — |
| constant.language, constant.language.boolean, constant.language.null, constant.language.undefined, constant.language.none | #B5420A | bold |
| constant.other | #A06000 | — |
| keyword.operator, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.comparison, keyword.operator.logical, keyword.operator.bitwise, keyword.operator.ternary, keyword.operator.spread, keyword.operator.optional, keyword.operator.nullish, keyword.operator.arrow | #5A6A72 | — |
| punctuation, punctuation.separator, punctuation.terminator, punctuation.accessor, punctuation.definition.block, punctuation.definition.parameters, meta.brace, meta.delimiter | #6A7878 | — |
| string.regexp, constant.other.character-class.regexp, constant.character.regexp, keyword.operator.quantifier.regexp, keyword.operator.or.regexp, punctuation.definition.group.regexp, punctuation.definition.character-class.regexp | #1A7A60 | — |
| meta.decorator, punctuation.decorator, entity.name.function.decorator, storage.type.annotation | #A06000 | italic |
| entity.name.type.attribute.cs, support.type.attribute | #A06000 | — |
| entity.name.tag, entity.name.tag.xml, entity.name.tag.html, meta.tag.xml entity.name.tag | #1A6FAF | bold |
| entity.other.attribute-name, entity.other.attribute-name.xml, entity.other.attribute-name.html | #A06000 | — |
| string.quoted.double.html, string.quoted.single.html, string.quoted.double.xml, string.quoted.single.xml | #3A8A0A | — |
| punctuation.definition.tag, punctuation.definition.tag.begin, punctuation.definition.tag.end, meta.tag punctuation | #5A6A72 | — |
| string.unquoted.cdata.xml | #3A8A0A | italic |
| meta.tag.sgml.doctype, meta.tag.preprocessor.xml | #8A7848 | italic |
| entity.name.tag.namespace.xml | #7B4FBE | — |
| entity.name.tag.css | #1A6FAF | — |
| entity.other.attribute-name.class.css, entity.other.attribute-name.id.css | #7B4FBE | — |
| support.type.property-name.css, support.type.property-name.scss, support.type.property-name.less | #A06000 | — |
| support.constant.property-value.css, meta.property-value.css | #3A8A0A | — |
| keyword.other.unit.css | #B5420A | — |
| entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css | #1A7A60 | — |
| support.type.property-name.json | #A06000 | bold |
| string.quoted.double.json | #3A8A0A | — |
| constant.numeric.json | #B5420A | — |
| constant.language.json | #B5420A | bold |
| markup.heading, entity.name.section.markdown, punctuation.definition.heading.markdown | #7B4FBE | bold |
| markup.bold, punctuation.definition.bold.markdown | #C05A10 | bold |
| markup.italic, punctuation.definition.italic.markdown | #1A6FAF | italic |
| markup.inline.raw, markup.fenced_code.block | #1A7A60 | — |
| markup.underline.link, string.other.link | #1A7A60 | underline |
| punctuation.definition.list.begin.markdown | #C05A10 | — |
| markup.quote, punctuation.definition.quote.begin.markdown | #8A7848 | italic |
| invalid, invalid.illegal | #FDF8EB | — |
| invalid.deprecated | #CC1100 | strikethrough |
Full workbench mockup using this variant's colors and tokenColors.
Loading...
Workbench UI color keys from the theme JSON colors map.
TextMate scopes and font styles (syntax highlighting rules).
| scope | foreground | fontStyle |
|---|---|---|
| source, text | #2D2418 | — |
| comment, punctuation.definition.comment, comment.block, comment.line | #7A6A4A | italic |
| comment.block.documentation, comment.line.double-slash.documentation | #6A5A3A | italic |
| keyword, keyword.control, keyword.control.flow, keyword.control.conditional, keyword.control.loop, keyword.control.import, keyword.control.export, keyword.control.return, keyword.control.trycatch, keyword.control.exception, keyword.other.using, keyword.other.import, keyword.operator.new, keyword.operator.delete, keyword.operator.typeof, keyword.operator.void, keyword.operator.instanceof, keyword.operator.in, keyword.operator.of | #7840C0 | bold |
| storage.type, storage.modifier | #7840C0 | bold |
| entity.name.type, entity.name.class, entity.name.namespace, entity.name.scope-resolution, entity.name.enum | #1A5A9A | bold |
| support.class, support.type, meta.type.annotation, meta.type.parameters, entity.other.inherited-class | #1A5A9A | — |
| keyword.type, support.type.primitive, storage.type.primitive, storage.type.numeric, storage.type.string, storage.type.boolean, storage.type.object, storage.type.void, storage.type.cs | #1A5A9A | — |
| entity.name.function, entity.name.method, entity.name.member | #AA5010 | bold |
| meta.function-call entity.name.function, meta.method-call entity.name.function, support.function, support.function.builtin | #AA5010 | — |
| variable.parameter | #8A5030 | italic |
| variable, variable.other, variable.other.readwrite, variable.other.object, variable.other.object.property | #2D2418 | — |
| variable.language | #7840C0 | italic |
| variable.other.property, variable.other.member, support.variable.property | #1A4A80 | — |
| string, string.quoted, string.quoted.single, string.quoted.double, string.quoted.triple, string.template, string.interpolated | #4A7A18 | — |
| constant.character.escape, constant.character.entity | #986010 | bold |
| punctuation.definition.template-expression, punctuation.section.embedded | #AA5010 | bold |
| constant.numeric, constant.numeric.integer, constant.numeric.float, constant.numeric.hex, constant.numeric.octal, constant.numeric.binary | #9A3A10 | — |
| constant.language, constant.language.boolean, constant.language.null, constant.language.undefined, constant.language.none | #9A3A10 | bold |
| constant.other | #986010 | — |
| keyword.operator, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.comparison, keyword.operator.logical, keyword.operator.bitwise, keyword.operator.ternary, keyword.operator.spread, keyword.operator.optional, keyword.operator.nullish, keyword.operator.arrow | #6A5A50 | — |
| punctuation, punctuation.separator, punctuation.terminator, punctuation.accessor, punctuation.definition.block, punctuation.definition.parameters, meta.brace, meta.delimiter | #786858 | — |
| string.regexp, constant.other.character-class.regexp, constant.character.regexp, keyword.operator.quantifier.regexp, keyword.operator.or.regexp, punctuation.definition.group.regexp, punctuation.definition.character-class.regexp | #1A7060 | — |
| meta.decorator, punctuation.decorator, entity.name.function.decorator, storage.type.annotation | #986010 | italic |
| entity.name.type.attribute.cs, support.type.attribute | #986010 | — |
| entity.name.tag, entity.name.tag.xml, entity.name.tag.html, meta.tag.xml entity.name.tag | #1A5A9A | bold |
| entity.other.attribute-name, entity.other.attribute-name.xml, entity.other.attribute-name.html | #986010 | — |
| string.quoted.double.html, string.quoted.single.html, string.quoted.double.xml, string.quoted.single.xml | #4A7A18 | — |
| punctuation.definition.tag, punctuation.definition.tag.begin, punctuation.definition.tag.end, meta.tag punctuation | #6A5A50 | — |
| string.unquoted.cdata.xml | #4A7A18 | italic |
| meta.tag.sgml.doctype, meta.tag.preprocessor.xml | #7A6A4A | italic |
| entity.name.tag.namespace.xml | #7840C0 | — |
| entity.name.tag.css | #1A5A9A | — |
| entity.other.attribute-name.class.css, entity.other.attribute-name.id.css | #7840C0 | — |
| support.type.property-name.css, support.type.property-name.scss, support.type.property-name.less | #986010 | — |
| support.constant.property-value.css, meta.property-value.css | #4A7A18 | — |
| keyword.other.unit.css | #9A3A10 | — |
| entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css | #1A7060 | — |
| support.type.property-name.json | #986010 | bold |
| string.quoted.double.json | #4A7A18 | — |
| constant.numeric.json | #9A3A10 | — |
| constant.language.json | #9A3A10 | bold |
| markup.heading, entity.name.section.markdown, punctuation.definition.heading.markdown | #7840C0 | bold |
| markup.bold, punctuation.definition.bold.markdown | #AA5010 | bold |
| markup.italic, punctuation.definition.italic.markdown | #1A5A9A | italic |
| markup.inline.raw, markup.fenced_code.block | #1A7060 | — |
| markup.underline.link, string.other.link | #1A7060 | underline |
| punctuation.definition.list.begin.markdown | #AA5010 | — |
| markup.quote, punctuation.definition.quote.begin.markdown | #7A6A4A | italic |
| invalid, invalid.illegal | #FAF7F2 | — |
| invalid.deprecated | #CC2200 | strikethrough |
Full workbench mockup using this variant's colors and tokenColors.
Loading...
Workbench UI color keys from the theme JSON colors map.
TextMate scopes and font styles (syntax highlighting rules).
| scope | foreground | fontStyle |
|---|---|---|
| source, text | #E0D8C0 | — |
| comment, punctuation.definition.comment, comment.block, comment.line | #7A6A48 | italic |
| comment.block.documentation, comment.line.double-slash.documentation | #8A7858 | italic |
| keyword, keyword.control, keyword.control.flow, keyword.control.conditional, keyword.control.loop, keyword.control.import, keyword.control.export, keyword.control.return, keyword.control.trycatch, keyword.control.exception, keyword.other.using, keyword.other.import, keyword.operator.new, keyword.operator.delete, keyword.operator.typeof, keyword.operator.void, keyword.operator.instanceof, keyword.operator.in, keyword.operator.of | #A888F8 | bold |
| storage.type, storage.modifier | #A888F8 | bold |
| entity.name.type, entity.name.class, entity.name.namespace, entity.name.scope-resolution, entity.name.enum | #60A8D8 | bold |
| support.class, support.type, meta.type.annotation, meta.type.parameters, entity.other.inherited-class | #60A8D8 | — |
| keyword.type, support.type.primitive, storage.type.primitive, storage.type.numeric, storage.type.string, storage.type.boolean, storage.type.object, storage.type.void, storage.type.cs | #60A8D8 | — |
| entity.name.function, entity.name.method, entity.name.member | #E07838 | bold |
| meta.function-call entity.name.function, meta.method-call entity.name.function, support.function, support.function.builtin | #E07838 | — |
| variable.parameter | #C09868 | italic |
| variable, variable.other, variable.other.readwrite, variable.other.object, variable.other.object.property | #E0D8C0 | — |
| variable.language | #A888F8 | italic |
| variable.other.property, variable.other.member, support.variable.property | #80C0E8 | — |
| string, string.quoted, string.quoted.single, string.quoted.double, string.quoted.triple, string.template, string.interpolated | #C0A820 | — |
| constant.character.escape, constant.character.entity | #D08030 | bold |
| punctuation.definition.template-expression, punctuation.section.embedded | #E07838 | bold |
| constant.numeric, constant.numeric.integer, constant.numeric.float, constant.numeric.hex, constant.numeric.octal, constant.numeric.binary | #E07868 | — |
| constant.language, constant.language.boolean, constant.language.null, constant.language.undefined, constant.language.none | #E07868 | bold |
| constant.other | #D08030 | — |
| keyword.operator, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.comparison, keyword.operator.logical, keyword.operator.bitwise, keyword.operator.ternary, keyword.operator.spread, keyword.operator.optional, keyword.operator.nullish, keyword.operator.arrow | #908878 | — |
| punctuation, punctuation.separator, punctuation.terminator, punctuation.accessor, punctuation.definition.block, punctuation.definition.parameters, meta.brace, meta.delimiter | #706858 | — |
| string.regexp, constant.other.character-class.regexp, constant.character.regexp, keyword.operator.quantifier.regexp, keyword.operator.or.regexp, punctuation.definition.group.regexp, punctuation.definition.character-class.regexp | #30C8A0 | — |
| meta.decorator, punctuation.decorator, entity.name.function.decorator, storage.type.annotation | #D08030 | italic |
| entity.name.type.attribute.cs, support.type.attribute | #D08030 | — |
| entity.name.tag, entity.name.tag.xml, entity.name.tag.html, meta.tag.xml entity.name.tag | #60A8D8 | bold |
| entity.other.attribute-name, entity.other.attribute-name.xml, entity.other.attribute-name.html | #D08030 | — |
| string.quoted.double.html, string.quoted.single.html, string.quoted.double.xml, string.quoted.single.xml | #C0A820 | — |
| punctuation.definition.tag, punctuation.definition.tag.begin, punctuation.definition.tag.end, meta.tag punctuation | #908878 | — |
| string.unquoted.cdata.xml | #C0A820 | italic |
| meta.tag.sgml.doctype, meta.tag.preprocessor.xml | #7A6A48 | italic |
| entity.name.tag.namespace.xml | #A888F8 | — |
| entity.name.tag.css | #60A8D8 | — |
| entity.other.attribute-name.class.css, entity.other.attribute-name.id.css | #A888F8 | — |
| support.type.property-name.css, support.type.property-name.scss, support.type.property-name.less | #D08030 | — |
| support.constant.property-value.css, meta.property-value.css | #C0A820 | — |
| keyword.other.unit.css | #E07868 | — |
| entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css | #30C8A0 | — |
| support.type.property-name.json | #D08030 | bold |
| string.quoted.double.json | #C0A820 | — |
| constant.numeric.json | #E07868 | — |
| constant.language.json | #E07868 | bold |
| markup.heading, entity.name.section.markdown, punctuation.definition.heading.markdown | #A888F8 | bold |
| markup.bold, punctuation.definition.bold.markdown | #E07838 | bold |
| markup.italic, punctuation.definition.italic.markdown | #60A8D8 | italic |
| markup.inline.raw, markup.fenced_code.block | #30C8A0 | — |
| markup.underline.link, string.other.link | #30C8A0 | underline |
| punctuation.definition.list.begin.markdown | #E07838 | — |
| markup.quote, punctuation.definition.quote.begin.markdown | #7A6A48 | italic |
| invalid, invalid.illegal | #1C1A14 | — |
| invalid.deprecated | #E07868 | strikethrough |
Full workbench mockup using this variant's colors and tokenColors.
Loading...
Workbench UI color keys from the theme JSON colors map.
TextMate scopes and font styles (syntax highlighting rules).
| scope | foreground | fontStyle |
|---|---|---|
| source, text | #2C3038 | — |
| comment, punctuation.definition.comment, comment.block, comment.line | #6A8490 | italic |
| comment.block.documentation, comment.line.double-slash.documentation | #587880 | italic |
| keyword, keyword.control, keyword.control.flow, keyword.control.conditional, keyword.control.loop, keyword.control.import, keyword.control.export, keyword.control.return, keyword.control.trycatch, keyword.control.exception, keyword.other.using, keyword.other.import, keyword.operator.new, keyword.operator.delete, keyword.operator.typeof, keyword.operator.void, keyword.operator.instanceof, keyword.operator.in, keyword.operator.of | #7840C8 | bold |
| storage.type, storage.modifier | #7840C8 | bold |
| entity.name.type, entity.name.class, entity.name.namespace, entity.name.scope-resolution, entity.name.enum | #1A6AAF | bold |
| support.class, support.type, meta.type.annotation, meta.type.parameters, entity.other.inherited-class | #1A6AAF | — |
| keyword.type, support.type.primitive, storage.type.primitive, storage.type.numeric, storage.type.string, storage.type.boolean, storage.type.object, storage.type.void, storage.type.cs | #1A6AAF | — |
| entity.name.function, entity.name.method, entity.name.member | #B85810 | bold |
| meta.function-call entity.name.function, meta.method-call entity.name.function, support.function, support.function.builtin | #B85810 | — |
| variable.parameter | #8A5A38 | italic |
| variable, variable.other, variable.other.readwrite, variable.other.object, variable.other.object.property | #2C3038 | — |
| variable.language | #7840C8 | italic |
| variable.other.property, variable.other.member, support.variable.property | #1A5A88 | — |
| string, string.quoted, string.quoted.single, string.quoted.double, string.quoted.triple, string.template, string.interpolated | #2A8848 | — |
| constant.character.escape, constant.character.entity | #9A6000 | bold |
| punctuation.definition.template-expression, punctuation.section.embedded | #B85810 | bold |
| constant.numeric, constant.numeric.integer, constant.numeric.float, constant.numeric.hex, constant.numeric.octal, constant.numeric.binary | #A04020 | — |
| constant.language, constant.language.boolean, constant.language.null, constant.language.undefined, constant.language.none | #A04020 | bold |
| constant.other | #9A6000 | — |
| keyword.operator, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.comparison, keyword.operator.logical, keyword.operator.bitwise, keyword.operator.ternary, keyword.operator.spread, keyword.operator.optional, keyword.operator.nullish, keyword.operator.arrow | #5A6A78 | — |
| punctuation, punctuation.separator, punctuation.terminator, punctuation.accessor, punctuation.definition.block, punctuation.definition.parameters, meta.brace, meta.delimiter | #687888 | — |
| string.regexp, constant.other.character-class.regexp, constant.character.regexp, keyword.operator.quantifier.regexp, keyword.operator.or.regexp, punctuation.definition.group.regexp, punctuation.definition.character-class.regexp | #1A7A90 | — |
| meta.decorator, punctuation.decorator, entity.name.function.decorator, storage.type.annotation | #9A6000 | italic |
| entity.name.type.attribute.cs, support.type.attribute | #9A6000 | — |
| entity.name.tag, entity.name.tag.xml, entity.name.tag.html, meta.tag.xml entity.name.tag | #1A6AAF | bold |
| entity.other.attribute-name, entity.other.attribute-name.xml, entity.other.attribute-name.html | #9A6000 | — |
| string.quoted.double.html, string.quoted.single.html, string.quoted.double.xml, string.quoted.single.xml | #2A8848 | — |
| punctuation.definition.tag, punctuation.definition.tag.begin, punctuation.definition.tag.end, meta.tag punctuation | #5A6A78 | — |
| string.unquoted.cdata.xml | #2A8848 | italic |
| meta.tag.sgml.doctype, meta.tag.preprocessor.xml | #6A8490 | italic |
| entity.name.tag.namespace.xml | #7840C8 | — |
| entity.name.tag.css | #1A6AAF | — |
| entity.other.attribute-name.class.css, entity.other.attribute-name.id.css | #7840C8 | — |
| support.type.property-name.css, support.type.property-name.scss, support.type.property-name.less | #9A6000 | — |
| support.constant.property-value.css, meta.property-value.css | #2A8848 | — |
| keyword.other.unit.css | #A04020 | — |
| entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css | #1A7A90 | — |
| support.type.property-name.json | #9A6000 | bold |
| string.quoted.double.json | #2A8848 | — |
| constant.numeric.json | #A04020 | — |
| constant.language.json | #A04020 | bold |
| markup.heading, entity.name.section.markdown, punctuation.definition.heading.markdown | #7840C8 | bold |
| markup.bold, punctuation.definition.bold.markdown | #B85810 | bold |
| markup.italic, punctuation.definition.italic.markdown | #1A6AAF | italic |
| markup.inline.raw, markup.fenced_code.block | #1A7A90 | — |
| markup.underline.link, string.other.link | #1A7A90 | underline |
| punctuation.definition.list.begin.markdown | #B85810 | — |
| markup.quote, punctuation.definition.quote.begin.markdown | #6A8490 | italic |
| invalid, invalid.illegal | #F7F8F8 | — |
| invalid.deprecated | #CC2200 | strikethrough |
export interface User {
id: string;
name: string;
role: "admin" | "member";
tags: string[];
}
/**
* Fetch user data by ID
* @param id
* @returns User object or null if ID is invalid
*/
export async function fetchUser(id: string): Promise<User | null> {
if (!id) {
return null;
}
const response = await fetch(`/api/users/${id}`, {
method: "GET",
headers: { Accept: "application/json" },
});
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
return (await response.json()) as User;
}
function greet(user: User): string {
// Simple greeting function that uses the user's name
return `Hello, ${user.name}!`;
}
export interface User {
id: string;
name: string;
role: "admin" | "member";
tags: string[];
}
/**
* Fetch user data by ID
* @param id
* @returns User object or null if ID is invalid
*/
export async function fetchUser(id: string): Promise<User | null> {
if (!id) {
return null;
}
const response = await fetch(`/api/users/${id}`, {
method: "GET",
headers: { Accept: "application/json" },
});
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
return (await response.json()) as User;
}
function greet(user: User): string {
// Simple greeting function that uses the user's name
return `Hello, ${user.name}!`;
}
export interface User {
id: string;
name: string;
role: "admin" | "member";
tags: string[];
}
/**
* Fetch user data by ID
* @param id
* @returns User object or null if ID is invalid
*/
export async function fetchUser(id: string): Promise<User | null> {
if (!id) {
return null;
}
const response = await fetch(`/api/users/${id}`, {
method: "GET",
headers: { Accept: "application/json" },
});
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
return (await response.json()) as User;
}
function greet(user: User): string {
// Simple greeting function that uses the user's name
return `Hello, ${user.name}!`;
}
export interface User {
id: string;
name: string;
role: "admin" | "member";
tags: string[];
}
/**
* Fetch user data by ID
* @param id
* @returns User object or null if ID is invalid
*/
export async function fetchUser(id: string): Promise<User | null> {
if (!id) {
return null;
}
const response = await fetch(`/api/users/${id}`, {
method: "GET",
headers: { Accept: "application/json" },
});
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
return (await response.json()) as User;
}
function greet(user: User): string {
// Simple greeting function that uses the user's name
return `Hello, ${user.name}!`;
}