Kawaii VS Code Color
Kawaii dark, dark contrast-tuned, light pastel, and light contrast-tuned VS Code themes with optional glow effects, image-backed editor styling, color customization, Settings Sync, and JSON import/export.
Kawaii dark, dark contrast-tuned, light pastel, and light contrast-tuned VS Code themes with optional glow effects, image-backed editor styling, color customization, Settings Sync, and JSON import/export.
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 |
|---|---|---|
| comment, string.quoted.docstring.multi.python, string.quoted.docstring.multi.python punctuation.definition.string.begin.python, string.quoted.docstring.multi.python punctuation.definition.string.end.python | #848bbd | italic |
| string.quoted, string.template, punctuation.definition.string | #ff8b39 | — |
| string.template meta.embedded.line | #b8b0b4 | — |
| variable, entity.name.variable | #B893CE | — |
| variable.language | #fe4450 | bold |
| variable.parameter | — | italic |
| storage.type, storage.modifier | #fede5d | — |
| constant | #f97e72 | — |
| string.regexp | #f97e72 | — |
| constant.numeric | #f97e72 | — |
| constant.language | #f97e72 | — |
| constant.character.escape | #36f9f6 | — |
| entity.name | #fe4450 | — |
| entity.name.tag | #72f1b8 | — |
| punctuation.definition.tag | #36f9f6 | — |
| entity.other.attribute-name | #fede5d | — |
| entity.other.attribute-name.html | #fede5d | italic |
| entity.name.type, meta.attribute.class.html | #fe4450 | — |
| entity.other.inherited-class | #D50 | — |
| entity.name.function, variable.function | #36f9f6 | — |
| keyword.control.export.js, keyword.control.import.js | #72f1b8 | — |
| constant.numeric.decimal.js | #2EE2FA | — |
| keyword | #fede5d | — |
| keyword.control | #fede5d | — |
| keyword.operator | #fede5d | — |
| keyword.operator.new, keyword.operator.expression, keyword.operator.logical | #fede5d | — |
| keyword.other.unit | #f97e72 | — |
| support | #fe4450 | — |
| support.function | #36f9f6 | — |
| support.variable | #ff7edb | — |
| meta.object-literal.key, support.type.property-name | #ff7edb | — |
| punctuation.separator.key-value | #b8b0b4 | — |
| punctuation.section.embedded | #fede5d | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end | #72f1b8 | — |
| support.type.property-name.css, support.type.property-name.json | #72f1b8 | — |
| switch-block.expr.js | #72f1b8 | — |
| variable.other.constant.property.js, variable.other.property.js | #2ee2fa | — |
| constant.other.color | #f97e72 | — |
| support.constant.font-name | #f97e72 | — |
| entity.other.attribute-name.id | #36f9f6 | — |
| entity.other.attribute-name.pseudo-element, entity.other.attribute-name.pseudo-class | #D50 | — |
| support.function.misc.css | #fe4450 | — |
| markup.heading, entity.name.section | #ff7edb | — |
| text.html, keyword.operator.assignment | #fffafdEE | — |
| markup.quote | #b8b0b4cc | italic |
| beginning.punctuation.definition.list | #ff7edb | — |
| markup.underline.link | #D50 | — |
| string.other.link.description | #f97e72 | — |
| meta.function-call.generic.python | #36f9f6 | — |
| variable.parameter.function-call.python | #72f1b8 | — |
| storage.type.cs | #fe4450 | — |
| entity.name.variable.local.cs | #ff7edb | — |
| entity.name.variable.field.cs, entity.name.variable.property.cs | #ff7edb | — |
| constant.other.placeholder.c | #72f1b8 | italic |
| keyword.control.directive.include.c, keyword.control.directive.define.c | #72f1b8 | — |
| storage.modifier.c | #fe4450 | — |
| source.cpp keyword.operator | #fede5d | — |
| constant.other.placeholder.cpp | #72f1b8 | italic |
| keyword.control.directive.include.cpp, keyword.control.directive.define.cpp | #72f1b8 | — |
| storage.modifier.specifier.const.cpp | #fe4450 | — |
| source.elixir support.type.elixir, source.elixir meta.module.elixir entity.name.class.elixir | #36f9f6 | — |
| source.elixir entity.name.function | #72f1b8 | — |
| source.elixir constant.other.symbol.elixir, source.elixir constant.other.keywords.elixir | #36f9f6 | — |
| source.elixir punctuation.definition.string | #72f1b8 | — |
| source.elixir variable.other.readwrite.module.elixir, source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir | #72f1b8 | — |
| source.elixir .punctuation.binary.elixir | #ff7edb | italic |
| entity.global.clojure | #36f9f6 | bold |
| storage.control.clojure | #36f9f6 | italic |
| meta.metadata.simple.clojure, meta.metadata.map.clojure | #fe4450 | italic |
| meta.quoted-expression.clojure | — | italic |
| meta.symbol.clojure | #ff7edbff | — |
| source.go | #ff7edbff | — |
| source.go meta.function-call.go | #36f9f6 | — |
| source.go keyword.package.go, source.go keyword.import.go, source.go keyword.function.go, source.go keyword.type.go, source.go keyword.const.go, source.go keyword.var.go, source.go keyword.map.go, source.go keyword.channel.go, source.go keyword.control.go | #fede5d | — |
| source.go storage.type, source.go keyword.struct.go, source.go keyword.interface.go | #72f1b8 | — |
| source.go constant.language.go, source.go constant.other.placeholder.go, source.go variable | #2EE2FA | — |
| markup.underline.link.markdown, markup.inline.raw.string.markdown | #72f1b8 | italic |
| string.other.link.title.markdown | #fede5d | — |
| markup.heading.markdown, entity.name.section.markdown | #ff7edb | bold |
| markup.italic.markdown | #2EE2FA | italic |
| markup.bold.markdown | #2EE2FA | bold |
| punctuation.definition.quote.begin.markdown, markup.quote.markdown | #72f1b8 | — |
| source.dart, source.python, source.scala | #ff7edbff | — |
| string.interpolated.single.dart | #f97e72 | — |
| variable.parameter.dart | #72f1b8 | — |
| constant.numeric.dart | #2EE2FA | — |
| variable.parameter.scala | #2EE2FA | — |
| meta.template.expression.scala | #72f1b8 | — |
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 |
|---|---|---|
| meta.embedded, source.groovy.embedded | #2b1d29ff | — |
| emphasis | — | italic |
| strong | — | bold |
| meta.diff.header | #000080 | — |
| comment | #008000 | — |
| constant.language | #0000ff | — |
| constant.numeric, variable.other.enummember, keyword.operator.plus.exponent, keyword.operator.minus.exponent | #098658 | — |
| constant.regexp | #811f3f | — |
| entity.name.tag | #800000 | — |
| entity.name.selector | #800000 | — |
| entity.other.attribute-name | #ff0000 | — |
| entity.other.attribute-name.class.css, entity.other.attribute-name.class.mixin.css, entity.other.attribute-name.id.css, entity.other.attribute-name.parent-selector.css, entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css, source.css.less entity.other.attribute-name.id, entity.other.attribute-name.attribute.scss, entity.other.attribute-name.scss | #800000 | — |
| invalid | #cd3131 | — |
| markup.underline | — | underline |
| markup.bold | #000080 | bold |
| markup.heading | #800000 | bold |
| markup.italic | — | italic |
| markup.inserted | #098658 | — |
| markup.deleted | #a31515 | — |
| markup.changed | #0451a5 | — |
| punctuation.definition.quote.begin.markdown, punctuation.definition.list.begin.markdown | #0451a5 | — |
| markup.inline.raw | #800000 | — |
| punctuation.definition.tag | #800000 | — |
| meta.preprocessor, entity.name.function.preprocessor | #0000ff | — |
| meta.preprocessor.string | #a31515 | — |
| meta.preprocessor.numeric | #098658 | — |
| meta.structure.dictionary.key.python | #0451a5 | — |
| storage | #0000ff | — |
| storage.type | #0000ff | — |
| storage.modifier, keyword.operator.noexcept | #0000ff | — |
| string, meta.embedded.assembly | #a31515 | — |
| string.comment.buffered.block.pug, string.quoted.pug, string.interpolated.pug, string.unquoted.plain.in.yaml, string.unquoted.plain.out.yaml, string.unquoted.block.yaml, string.quoted.single.yaml, string.quoted.double.xml, string.quoted.single.xml, string.unquoted.cdata.xml, string.quoted.double.html, string.quoted.single.html, string.unquoted.html, string.quoted.single.handlebars, string.quoted.double.handlebars | #0000ff | — |
| string.regexp | #811f3f | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded | #0000ff | — |
| meta.template.expression | #2b1d29 | — |
| support.constant.property-value, support.constant.font-name, support.constant.media-type, support.constant.media, constant.other.color.rgb-value, constant.other.rgb-value, support.constant.color | #0451a5 | — |
| support.type.vendored.property-name, support.type.property-name, variable.css, variable.scss, variable.other.less, source.coffee.embedded | #ff0000 | — |
| support.type.property-name.json | #0451a5 | — |
| keyword | #0000ff | — |
| keyword.control | #0000ff | — |
| keyword.operator | #2b1d29 | — |
| keyword.operator.new, keyword.operator.expression, keyword.operator.cast, keyword.operator.sizeof, keyword.operator.alignof, keyword.operator.typeid, keyword.operator.alignas, keyword.operator.instanceof, keyword.operator.logical.python, keyword.operator.wordlike | #0000ff | — |
| keyword.other.unit | #098658 | — |
| punctuation.section.embedded.begin.php, punctuation.section.embedded.end.php | #800000 | — |
| support.function.git-rebase | #0451a5 | — |
| constant.sha.git-rebase | #098658 | — |
| storage.modifier.import.java, variable.language.wildcard.java, storage.modifier.package.java | #2b1d29 | — |
| variable.language | #0000ff | — |
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 |
|---|---|---|
| comment, string.quoted.docstring.multi.python, string.quoted.docstring.multi.python punctuation.definition.string.begin.python, string.quoted.docstring.multi.python punctuation.definition.string.end.python | #848bbd | italic |
| string.quoted, string.template, punctuation.definition.string | #ff8b39 | — |
| string.template meta.embedded.line | #b8b0b4 | — |
| variable, entity.name.variable | #B893CE | — |
| variable.language | #fe4450 | bold |
| variable.parameter | — | italic |
| storage.type, storage.modifier | #fede5d | — |
| constant | #f97e72 | — |
| string.regexp | #f97e72 | — |
| constant.numeric | #f97e72 | — |
| constant.language | #f97e72 | — |
| constant.character.escape | #36f9f6 | — |
| entity.name | #fe4450 | — |
| entity.name.tag | #72f1b8 | — |
| punctuation.definition.tag | #36f9f6 | — |
| entity.other.attribute-name | #fede5d | — |
| entity.other.attribute-name.html | #fede5d | italic |
| entity.name.type, meta.attribute.class.html | #fe4450 | — |
| entity.other.inherited-class | #D50 | — |
| entity.name.function, variable.function | #36f9f6 | — |
| keyword.control.export.js, keyword.control.import.js | #72f1b8 | — |
| constant.numeric.decimal.js | #2EE2FA | — |
| keyword | #fede5d | — |
| keyword.control | #fede5d | — |
| keyword.operator | #fede5d | — |
| keyword.operator.new, keyword.operator.expression, keyword.operator.logical | #fede5d | — |
| keyword.other.unit | #f97e72 | — |
| support | #fe4450 | — |
| support.function | #36f9f6 | — |
| support.variable | #ff7edb | — |
| meta.object-literal.key, support.type.property-name | #ff7edb | — |
| punctuation.separator.key-value | #b8b0b4 | — |
| punctuation.section.embedded | #fede5d | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end | #72f1b8 | — |
| support.type.property-name.css, support.type.property-name.json | #72f1b8 | — |
| switch-block.expr.js | #72f1b8 | — |
| variable.other.constant.property.js, variable.other.property.js | #2ee2fa | — |
| constant.other.color | #f97e72 | — |
| support.constant.font-name | #f97e72 | — |
| entity.other.attribute-name.id | #36f9f6 | — |
| entity.other.attribute-name.pseudo-element, entity.other.attribute-name.pseudo-class | #D50 | — |
| support.function.misc.css | #fe4450 | — |
| markup.heading, entity.name.section | #ff7edb | — |
| text.html, keyword.operator.assignment | #fffafdEE | — |
| markup.quote | #b8b0b4cc | italic |
| beginning.punctuation.definition.list | #ff7edb | — |
| markup.underline.link | #D50 | — |
| string.other.link.description | #f97e72 | — |
| meta.function-call.generic.python | #36f9f6 | — |
| variable.parameter.function-call.python | #72f1b8 | — |
| storage.type.cs | #fe4450 | — |
| entity.name.variable.local.cs | #ff7edb | — |
| entity.name.variable.field.cs, entity.name.variable.property.cs | #ff7edb | — |
| constant.other.placeholder.c | #72f1b8 | italic |
| keyword.control.directive.include.c, keyword.control.directive.define.c | #72f1b8 | — |
| storage.modifier.c | #fe4450 | — |
| source.cpp keyword.operator | #fede5d | — |
| constant.other.placeholder.cpp | #72f1b8 | italic |
| keyword.control.directive.include.cpp, keyword.control.directive.define.cpp | #72f1b8 | — |
| storage.modifier.specifier.const.cpp | #fe4450 | — |
| source.elixir support.type.elixir, source.elixir meta.module.elixir entity.name.class.elixir | #36f9f6 | — |
| source.elixir entity.name.function | #72f1b8 | — |
| source.elixir constant.other.symbol.elixir, source.elixir constant.other.keywords.elixir | #36f9f6 | — |
| source.elixir punctuation.definition.string | #72f1b8 | — |
| source.elixir variable.other.readwrite.module.elixir, source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir | #72f1b8 | — |
| source.elixir .punctuation.binary.elixir | #ff7edb | italic |
| entity.global.clojure | #36f9f6 | bold |
| storage.control.clojure | #36f9f6 | italic |
| meta.metadata.simple.clojure, meta.metadata.map.clojure | #fe4450 | italic |
| meta.quoted-expression.clojure | — | italic |
| meta.symbol.clojure | #ff7edbff | — |
| source.go | #ff7edbff | — |
| source.go meta.function-call.go | #36f9f6 | — |
| source.go keyword.package.go, source.go keyword.import.go, source.go keyword.function.go, source.go keyword.type.go, source.go keyword.const.go, source.go keyword.var.go, source.go keyword.map.go, source.go keyword.channel.go, source.go keyword.control.go | #fede5d | — |
| source.go storage.type, source.go keyword.struct.go, source.go keyword.interface.go | #72f1b8 | — |
| source.go constant.language.go, source.go constant.other.placeholder.go, source.go variable | #2EE2FA | — |
| markup.underline.link.markdown, markup.inline.raw.string.markdown | #72f1b8 | italic |
| string.other.link.title.markdown | #fede5d | — |
| markup.heading.markdown, entity.name.section.markdown | #ff7edb | bold |
| markup.italic.markdown | #2EE2FA | italic |
| markup.bold.markdown | #2EE2FA | bold |
| punctuation.definition.quote.begin.markdown, markup.quote.markdown | #72f1b8 | — |
| source.dart, source.python, source.scala | #ff7edbff | — |
| string.interpolated.single.dart | #f97e72 | — |
| variable.parameter.dart | #72f1b8 | — |
| constant.numeric.dart | #2EE2FA | — |
| variable.parameter.scala | #2EE2FA | — |
| meta.template.expression.scala | #72f1b8 | — |
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 |
|---|---|---|
| meta.embedded, source.groovy.embedded | #2b1d29ff | — |
| emphasis | — | italic |
| strong | — | bold |
| meta.diff.header | #000080 | — |
| comment | #008000 | — |
| constant.language | #0000ff | — |
| constant.numeric, variable.other.enummember, keyword.operator.plus.exponent, keyword.operator.minus.exponent | #098658 | — |
| constant.regexp | #811f3f | — |
| entity.name.tag | #800000 | — |
| entity.name.selector | #800000 | — |
| entity.other.attribute-name | #ff0000 | — |
| entity.other.attribute-name.class.css, entity.other.attribute-name.class.mixin.css, entity.other.attribute-name.id.css, entity.other.attribute-name.parent-selector.css, entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css, source.css.less entity.other.attribute-name.id, entity.other.attribute-name.attribute.scss, entity.other.attribute-name.scss | #800000 | — |
| invalid | #cd3131 | — |
| markup.underline | — | underline |
| markup.bold | #000080 | bold |
| markup.heading | #800000 | bold |
| markup.italic | — | italic |
| markup.inserted | #098658 | — |
| markup.deleted | #a31515 | — |
| markup.changed | #0451a5 | — |
| punctuation.definition.quote.begin.markdown, punctuation.definition.list.begin.markdown | #0451a5 | — |
| markup.inline.raw | #800000 | — |
| punctuation.definition.tag | #800000 | — |
| meta.preprocessor, entity.name.function.preprocessor | #0000ff | — |
| meta.preprocessor.string | #a31515 | — |
| meta.preprocessor.numeric | #098658 | — |
| meta.structure.dictionary.key.python | #0451a5 | — |
| storage | #0000ff | — |
| storage.type | #0000ff | — |
| storage.modifier, keyword.operator.noexcept | #0000ff | — |
| string, meta.embedded.assembly | #a31515 | — |
| string.comment.buffered.block.pug, string.quoted.pug, string.interpolated.pug, string.unquoted.plain.in.yaml, string.unquoted.plain.out.yaml, string.unquoted.block.yaml, string.quoted.single.yaml, string.quoted.double.xml, string.quoted.single.xml, string.unquoted.cdata.xml, string.quoted.double.html, string.quoted.single.html, string.unquoted.html, string.quoted.single.handlebars, string.quoted.double.handlebars | #0000ff | — |
| string.regexp | #811f3f | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded | #0000ff | — |
| meta.template.expression | #2b1d29 | — |
| support.constant.property-value, support.constant.font-name, support.constant.media-type, support.constant.media, constant.other.color.rgb-value, constant.other.rgb-value, support.constant.color | #0451a5 | — |
| support.type.vendored.property-name, support.type.property-name, variable.css, variable.scss, variable.other.less, source.coffee.embedded | #ff0000 | — |
| support.type.property-name.json | #0451a5 | — |
| keyword | #0000ff | — |
| keyword.control | #0000ff | — |
| keyword.operator | #2b1d29 | — |
| keyword.operator.new, keyword.operator.expression, keyword.operator.cast, keyword.operator.sizeof, keyword.operator.alignof, keyword.operator.typeid, keyword.operator.alignas, keyword.operator.instanceof, keyword.operator.logical.python, keyword.operator.wordlike | #0000ff | — |
| keyword.other.unit | #098658 | — |
| punctuation.section.embedded.begin.php, punctuation.section.embedded.end.php | #800000 | — |
| support.function.git-rebase | #0451a5 | — |
| constant.sha.git-rebase | #098658 | — |
| storage.modifier.import.java, variable.language.wildcard.java, storage.modifier.package.java | #2b1d29 | — |
| variable.language | #0000ff | — |
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}!`;
}