Skip to main content
Coding Theme

Color themes

VS Code preview

Full workbench mockup using this variant's colors and tokenColors.

src
components
fetchUser.ts
User
tags
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}!`;
}
WSL
1 1
main*
Copilot
Ln 5, Col 12
Spaces: 2
UTF-8
LF
TypeScript
Adwaita Dark & default syntax highlighting

Adwaita matches the GNOME Adwaita look, with syntax from GNOME Builder. Extra variants add a colorful status bar, or swap in VS Code's default syntax.

Adwaita Dark uses background #1d1d1d. Comments are #77767B. Keywords are #FFA348. Strings, types, and storage types are #5BC8AF. Variables are #C0BFBC. Numbers are #7D8AC7.

Adwaita Light is white. Comments stay #77767B. Keywords are #C64600. Strings, types, and storage types are #218787. Variables are #504E55. Numbers are #4E57BA.

The default-syntax variants use Dark+ and Light+ token colors on the same backgrounds.

colors

Workbench UI color keys from the theme JSON colors map.

keyHEXRGBRGBA
activityBar.activeBorder
activityBar.background
activityBar.border
activityBar.foreground
activityBarBadge.background
breadcrumb.background
button.background
button.border
button.hoverBackground
commandCenter.background
commandCenter.border
editor.background
editorBracketMatch.background
editorBracketMatch.border
editorGroup.border
editorGroupHeader.border
editorGroupHeader.tabsBackground
editorGroupHeader.tabsBorder
editorGutter.addedBackground
editorGutter.deletedBackground
editorGutter.modifiedBackground
editorIndentGuide.activeBackground
editorIndentGuide.background
editorLineNumber.foreground
editorRuler.foreground
focusBorder
gitDecoration.addedResourceForeground
gitDecoration.deletedResourceForeground
gitDecoration.ignoredResourceForeground
gitDecoration.modifiedResourceForeground
gitDecoration.renamedResourceForeground
gitDecoration.stageDeletedResourceForeground
gitDecoration.stageModifiedResourceForeground
gitDecoration.untrackedResourceForeground
input.background
list.activeSelectionBackground
list.activeSelectionForeground
list.activeSelectionIconForeground
list.focusHighlightForeground
list.highlightForeground
list.hoverBackground
list.inactiveSelectionBackground
panel.background
panel.border
panelSectionHeader.background
panelSectionHeader.border
panelTitle.activeBorder
panelTitle.activeForeground
scrollbar.shadow
sideBar.background
sideBar.border
sideBar.foreground
sideBarSectionHeader.background
sideBarSectionHeader.border
statusBar.background
statusBar.border
statusBar.debuggingForeground
statusBar.foreground
statusBar.noFolderBackground
statusBar.noFolderForeground
statusBarItem.remoteBackground
statusBarItem.remoteForeground
tab.activeBackground
tab.border
tab.hoverBackground
tab.inactiveBackground
titleBar.activeBackground
titleBar.border
tree.indentGuidesStroke
widget.shadow
window.activeBorder

tokenColors

Foregrounds this theme assigns to the token scope catalog. A rule with only a font style is skipped, and a longer matching scope wins. Italic and bold rules are not listed — the preview above shows them in the code.

scopeHEXRGBRGBA
comment
comment.block
comment.block.documentation
comment.line
constant
constant.character
constant.character.escape
constant.numeric
constant.numeric.integer
constant.numeric.float
constant.numeric.hex
constant.numeric.octal
constant.other
constant.other.placeholder
constant.regexp
entity
entity.name
entity.name.class
entity.name.function
entity.name.namespace
entity.name.tag
entity.name.type
entity.name.type.enum
entity.name.type.interface
entity.name.type.struct
entity.other
entity.other.attribute-name
entity.other.inherited-class
invalid
invalid.deprecated
invalid.illegal
keyword
keyword.control
keyword.control.flow
keyword.operator
keyword.operator.new
keyword.operator.assignment
keyword.operator.arithmetic
keyword.operator.logical
keyword.other
markup
markup.bold
markup.changed
markup.deleted
markup.heading
markup.inline.raw
markup.inserted
meta
meta.preprocessor
meta.type
storage
storage.modifier
storage.type
string
string.interpolated
string.other
string.quoted
string.quoted.double
string.quoted.other
string.quoted.single
string.quoted.triple
string.regexp
string.template
string.unquoted
support
support.class
support.constant
support.function
support.other
support.type
support.type.primitive
support.type.property-name
support.variable
variable
variable.function
variable.language
variable.name
variable.other
variable.other.constant
variable.other.property
variable.other.readwrite
variable.parameter