Kairo Themes
A collection of carefully crafted dark and light themes for VS Code — Astral, Aurora, Default, Lavender, Light, and Mint.
A collection of carefully crafted dark and light themes for VS Code — Astral, Aurora, Default, Lavender, Light, and Mint.
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, punctuation.definition.comment | #484F58 | italic |
| keyword, keyword.control, keyword.operator.new, keyword.other.import | #00E5FF | bold |
| keyword.operator, keyword.operator.logical, keyword.operator.comparison | #79C0FF | — |
| storage, storage.type, storage.modifier | #7B1FA2 | italic |
| string, string.quoted, string.template | #3FB950 | — |
| constant.character.escape, string.regexp | #79C0FF | — |
| constant.numeric | #D29922 | — |
| constant, constant.language | #E3B341 | — |
| entity.name.function, meta.definition.method entity.name.function | #58A6FF | bold |
| meta.function-call, support.function | #00E5FF | — |
| variable, variable.other | #E6EDF3 | — |
| variable.parameter | #A5D6FF | italic |
| variable.language, variable.other.this, variable.other.self | #00E5FF | italic |
| entity.name.type, entity.name.class, support.class | #D29922 | bold |
| entity.name.interface, entity.name.enum | #BC8CFF | — |
| entity.name.tag | #F85149 | — |
| entity.other.attribute-name | #79C0FF | — |
| support.type.property-name | #00E5FF | — |
| support.constant.property-value | #3FB950 | — |
| punctuation, meta.brace | #484F58 | — |
| meta.decorator, punctuation.decorator | #D29922 | italic |
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, punctuation.definition.comment | #2E4050 | italic |
| keyword, keyword.control, keyword.operator.new, keyword.other.import | #00BFA5 | bold |
| keyword.operator, keyword.operator.logical, keyword.operator.comparison | #40C0E0 | — |
| storage, storage.type, storage.modifier | #AA00FF | italic |
| string, string.quoted, string.template | #64FFDA | — |
| constant.character.escape, string.regexp | #18FFFF | — |
| constant.numeric | #EEFF41 | — |
| constant, constant.language | #F4FF81 | — |
| entity.name.function, meta.definition.method entity.name.function | #40D0C0 | bold |
| meta.function-call, support.function | #00BFA5 | — |
| variable, variable.other | #E8F0F0 | — |
| variable.parameter | #A0C8D0 | italic |
| variable.language, variable.other.this, variable.other.self | #00BFA5 | italic |
| entity.name.type, entity.name.class, support.class | #EEFF41 | bold |
| entity.name.interface, entity.name.enum | #E040FB | — |
| entity.name.tag | #FF5252 | — |
| entity.other.attribute-name | #40C0E0 | — |
| support.type.property-name | #00BFA5 | — |
| support.constant.property-value | #64FFDA | — |
| punctuation, meta.brace | #3A4A55 | — |
| meta.decorator, punctuation.decorator | #EEFF41 | italic |
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, punctuation.definition.comment | #607D8B | italic |
| keyword, keyword.control, keyword.operator.new, keyword.other.import | #CFD8DC | bold |
| keyword.operator, keyword.operator.logical, keyword.operator.comparison | #26C6DA | — |
| storage, storage.type, storage.modifier | #AB47BC | italic |
| string, string.quoted, string.template | #66BB6A | — |
| constant.character.escape, string.regexp | #26C6DA | — |
| constant.numeric | #FFA726 | — |
| constant, constant.language | #FFB74D | — |
| entity.name.function, meta.definition.method entity.name.function | #64B5F6 | bold |
| meta.function-call, support.function | #CFD8DC | — |
| variable, variable.other | #ECEFF1 | — |
| variable.parameter | #B0BEC5 | italic |
| variable.language, variable.other.this, variable.other.self | #CFD8DC | italic |
| entity.name.type, entity.name.class, support.class | #FFA726 | bold |
| entity.name.interface, entity.name.enum | #CE93D8 | — |
| entity.name.tag | #EF5350 | — |
| entity.other.attribute-name | #64B5F6 | — |
| support.type.property-name | #CFD8DC | — |
| support.constant.property-value | #66BB6A | — |
| punctuation, meta.brace | #78909C | — |
| meta.decorator, punctuation.decorator | #FFA726 | italic |
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, punctuation.definition.comment | #5E4B8B | italic |
| keyword, keyword.control, keyword.operator.new, keyword.other.import | #B39DDB | bold |
| keyword.operator, keyword.operator.logical, keyword.operator.comparison | #90CAF9 | — |
| storage, storage.type, storage.modifier | #CE93D8 | italic |
| string, string.quoted, string.template | #A5D6A7 | — |
| constant.character.escape, string.regexp | #80DEEA | — |
| constant.numeric | #FFE082 | — |
| constant, constant.language | #FFF59D | — |
| entity.name.function, meta.definition.method entity.name.function | #CE93D8 | bold |
| meta.function-call, support.function | #B39DDB | — |
| variable, variable.other | #EDE7F6 | — |
| variable.parameter | #C5B8E0 | italic |
| variable.language, variable.other.this, variable.other.self | #B39DDB | italic |
| entity.name.type, entity.name.class, support.class | #FFE082 | bold |
| entity.name.interface, entity.name.enum | #E1BEE7 | — |
| entity.name.tag | #EF9A9A | — |
| entity.other.attribute-name | #90CAF9 | — |
| support.type.property-name | #B39DDB | — |
| support.constant.property-value | #A5D6A7 | — |
| punctuation, meta.brace | #7E69A8 | — |
| meta.decorator, punctuation.decorator | #FFE082 | italic |
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}!`;
}