Skip to main content
VS Code preview Full workbench mockup using this variant's colors and tokenColors.
colors Workbench UI color keys from the theme JSON colors map.
activityBar.background #383f51 activityBar.foreground #f1f3f8 activityBar.inactiveForeground #a2abc0 activityBarBadge.background #686dbc activityBarBadge.foreground #ffffff badge.background #a3a5b9 tokenColors TextMate scopes and font styles (syntax highlighting rules).
scope foreground fontStyle punctuation.definition.delayed.unison,punctuation.definition.list.begin.unison,punctuation.definition.list.end.unison,punctuation.definition.ability.begin.unison,punctuation.definition.ability.end.unison,punctuation.operator.assignment.as.unison,punctuation.separator.pipe.unison,punctuation.separator.delimiter.unison,punctuation.definition.hash.unison #0025c0 — constant.other.character-class.regexp #0025c0 — keyword.operator.quantifier.regexp #005fc4 — punctuation.definition.string.begin,punctuation.definition.string.end
Shiki preview TypeScript sample highlighted with this variant's colors and tokenColors.
Spacegrey Theme — spacegrey
badge.foreground
#f3f4ff
breadcrumb.activeSelectionForeground #4e4e4e
breadcrumb.background #f6f9ff
breadcrumb.focusForeground #4e4e4e
breadcrumb.foreground #02030dcc
button.background #404cb4
button.foreground #ffffff
button.hoverBackground #5966df
button.secondaryBackground #5f6a79
button.secondaryForeground #ffffff
button.secondaryHoverBackground #4c5561
checkbox.background #ffffff
checkbox.border #00000000
checkbox.foreground #616161
debugExceptionWidget.background #f3f3f3
debugExceptionWidget.border #d5d5d5
debugToolBar.background #f3f3f3
debugToolBar.border #d5d5d5
diffEditor.border #d7d7d7
diffEditor.insertedTextBackground #9bb95533
diffEditor.removedTextBackground #ff000033
dropdown.background #ffffff
dropdown.border #00000000
dropdown.foreground #616161
editor.background #f1f3f8
editor.findMatchBackground #ffe580
editor.findMatchBorder #ffcb00
editor.findMatchHighlightBackground #ffda8355
editor.findMatchHighlightBorder #ffffff00
editor.findRangeHighlightBackground #c6d7f938
editor.findRangeHighlightBorder #e7e9ee00
editor.foldBackground #a5bbe44d
editor.foreground #383f51
editor.hoverHighlightBackground #add6ff26
editor.inactiveSelectionBackground #bebebe5c
editor.lineHighlightBackground #0800ff12
editor.lineHighlightBorder #eeeeee
editor.rangeHighlightBackground #fdff0028
editor.rangeHighlightBorder #ffffff00
editor.selectionBackground #aab0d36e
editor.selectionHighlightBackground #d5ddff80
editor.selectionHighlightBorder #495F77
editor.wordHighlightBackground #87c7ff40
editor.wordHighlightStrongBackground #76d2ff40
editorBracketMatch.background #e6e3ff
editorBracketMatch.border #0000
editorCodeLens.foreground #999999
editorCursor.background #ffffff
editorCursor.foreground #7400ff
editorError.background #B73A3400
editorError.border #ffffff00
editorError.foreground #e51400
editorGroup.border #e7e7e7
editorGroup.emptyBackground #f1f3f8
editorGroupHeader.border #405a96
editorGroupHeader.tabsBackground #e5e7ee
editorGroupHeader.tabsBorder #a6a9c0
editorGutter.addedBackground #81b88b
editorGutter.background #e8ebf2
editorGutter.commentRangeForeground #4b4c5a
editorGutter.deletedBackground #ca4b51
editorGutter.foldingControlForeground #4b4c5a
editorGutter.modifiedBackground #66afe0
editorHoverWidget.background #f8faff
editorHoverWidget.border #a7afc4
editorHoverWidget.foreground #526594
editorIndentGuide.activeBackground #939393
editorIndentGuide.background #d3d3d3
editorInfo.background #4490BF00
editorInfo.border #4490BF00
editorInfo.foreground #75beff
editorLineNumber.activeForeground #6264de
editorLineNumber.foreground #707896
editorLink.activeForeground #6264de
editorMarkerNavigation.background #ffffff
editorMarkerNavigationError.background #e51400
editorMarkerNavigationInfo.background #75beff
editorMarkerNavigationWarning.background #e9a700
editorOverviewRuler.background #e1e3ee
editorOverviewRuler.border #ffffff4d
editorRuler.foreground #dfe6f0
editorSuggestWidget.background #f8f9fd
editorSuggestWidget.border #a7afc4
editorSuggestWidget.foreground #080d24
editorSuggestWidget.highlightForeground #1b3fcb
editorSuggestWidget.selectedBackground #d6d9ea
editorSuggestWidget.selectedForeground #424766
editorWarning.background #A9904000
editorWarning.border #ffffff00
editorWarning.foreground #e9a700
editorWhitespace.foreground #7575753e
editorWidget.background #f9fbff
editorWidget.foreground #202541
editorWidget.resizeBorder #c7c7c7
focusBorder #0090f1
foreground #616161
gitDecoration.addedResourceForeground #587c0c
gitDecoration.conflictingResourceForeground #6c6cc4
gitDecoration.deletedResourceForeground #ad0707
gitDecoration.ignoredResourceForeground #8e8e90
gitDecoration.modifiedResourceForeground #895503
gitDecoration.stageDeletedResourceForeground #ad0707
gitDecoration.stageModifiedResourceForeground #895503
gitDecoration.submoduleResourceForeground #1258a7
gitDecoration.untrackedResourceForeground #007100
icon.foreground #616161
input.background #ffffff
input.foreground #616161
input.placeholderForeground #767676
inputOption.activeBackground #0090f133
inputOption.activeBorder #007acc00
inputOption.activeForeground #000000
list.activeSelectionBackground #cfd2e2
list.activeSelectionForeground #151654
list.activeSelectionIconForeground #030425
list.dropBackground #d6ebff
list.focusBackground #d6ebff
list.focusForeground #616161
list.highlightForeground #4400ff
list.hoverBackground #eaebf0
list.hoverForeground #616161
list.inactiveSelectionBackground #e4e6f1
list.inactiveSelectionForeground #616161
listFilterWidget.background #c5b1a8
listFilterWidget.noMatchesOutline #be1100
listFilterWidget.outline #00000000
menu.background #ffffff
menu.border #00000085
menu.foreground #616161
menu.selectionBackground #0060c0
menu.selectionBorder #00000000
menu.selectionForeground #535f80
menu.separatorBackground #888888
menubar.selectionBackground #0000001a
menubar.selectionForeground #333333
merge.commonContentBackground #E5E5E5
merge.commonHeaderBackground #BFBFBF
merge.currentContentBackground #DBF4EF
merge.currentHeaderBackground #A4E3D6
merge.incomingContentBackground #DBECFF
merge.incomingHeaderBackground #A6CFFF
minimap.background #f1f3f8
minimap.errorHighlight #e51400
minimap.findMatchHighlight #ffe580
minimap.selectionHighlight #bdbee06e
minimap.warningHighlight #e9a700
minimapGutter.addedBackground #81b88b
minimapGutter.deletedBackground #ca4b51
minimapGutter.modifiedBackground #66afe0
notificationCenter.border #d5d5d5
notificationCenterHeader.background #e0e2ec
notificationCenterHeader.foreground #616161
notifications.background #eff4ff
notifications.border #b3bcd5
notifications.foreground #2d3e4d
notificationsErrorIcon.foreground #e51400
notificationsInfoIcon.foreground #75beff
notificationsWarningIcon.foreground #e9a700
notificationToast.border #d5d5d5
panel.background #f0f1f5
panel.border #a9aab8
panelSection.border #80808059
panelTitle.activeBorder #1400ff
panelTitle.activeForeground #1b2045
panelTitle.inactiveForeground #515564bf
peekView.border #007acc
peekViewEditor.background #f2f8fc
peekViewEditor.matchHighlightBackground #fffdf3
peekViewEditor.matchHighlightBorder #00000000
peekViewEditorGutter.background #f2f8fc
peekViewResult.background #f3f3f3
peekViewResult.fileForeground #1e1e1e
peekViewResult.lineForeground #646465
peekViewResult.matchHighlightBackground #ea5c004d
peekViewResult.selectionBackground #3399ff33
peekViewResult.selectionForeground #6c6c6c
peekViewTitle.background #ffffff
peekViewTitleDescription.foreground #616161e6
peekViewTitleLabel.foreground #333333
pickerGroup.border #cccedb
pickerGroup.foreground #0066bf
progressBar.background #0e70c0
scrollbar.shadow #dddddd
scrollbarSlider.activeBackground #00000099
scrollbarSlider.background #64646466
scrollbarSlider.hoverBackground #646464b3
selection.background #b0daff
settings.focusedRowBackground #ffffff07
settings.headerForeground #616161
sideBar.background #f8f7fd
sideBar.dropBackground #d6ebff
sideBar.foreground #15093d
sideBarSectionHeader.background #d9dce4
sideBarSectionHeader.border #61616130
sideBarSectionHeader.foreground #151654
sideBarTitle.foreground #6f6f6f
statusBar.background #535f80
statusBar.debuggingBackground #cc6633
statusBar.debuggingForeground #ffffff
statusBar.foreground #ffffff
statusBar.noFolderBackground #68217a
statusBar.noFolderForeground #ffffff
statusBarItem.activeBackground #FFFFFF25
statusBarItem.hoverBackground #ffffff1f
statusBarItem.remoteBackground #798fc4
statusBarItem.remoteForeground #ffffff
tab.activeBackground #ffffff
tab.activeBorder #00000000
tab.activeBorderTop #00000000
tab.activeForeground #333333
tab.border #dddee6
tab.hoverBackground #ffffff
tab.inactiveBackground #f3f4fd
tab.inactiveForeground #333333b3
terminal.ansiBlack #000000
terminal.ansiBlue #0451a5
terminal.ansiBrightBlack #666666
terminal.ansiBrightBlue #0451a5
terminal.ansiBrightCyan #0598bc
terminal.ansiBrightGreen #14ce14
terminal.ansiBrightMagenta #bc05bc
terminal.ansiBrightRed #cd3131
terminal.ansiBrightWhite #b0bdc7
terminal.ansiBrightYellow #f5c800
terminal.ansiCyan #0089ac
terminal.ansiGreen #00ac00
terminal.ansiMagenta #bc05bc
terminal.ansiRed #cd3131
terminal.ansiWhite #555555
terminal.ansiYellow #d89e00
terminal.border #aab0d3
terminal.foreground #333333
terminal.selectionBackground #aab0d36e
terminalCursor.background #7400ff
terminalCursor.foreground #a6a9c0
textLink.foreground #0064a7
titleBar.activeBackground #f1f3f8
titleBar.activeForeground #1a294d
titleBar.border #00000000
titleBar.inactiveBackground #ebedf2
titleBar.inactiveForeground #8898c0
tree.indentGuidesStroke #c0c3d6
walkThrough.embeddedEditorBackground #00000050
widget.shadow #0a111358 #006618
variable.parameter.function #383f51 —
comment markup.link #788da1 —
markup.changed.diff #003f8c —
meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff #804666 —
markup.inserted.diff #006618 —
markup.deleted.diff #0025c0 —
punctuation.separator.key-value #383f51 —
keyword.operator.expression.import #804666 —
support.constant.math #003f8c —
support.constant.property.math #005fc4 —
variable.other.constant #003f8c
keyword.operator.logical #227d92 —
keyword.operator.bitwise #227d92 —
keyword.operator.channel #227d92 —
support.constant.property-value.scss,support.constant.property-value.css #005fc4 —
keyword.operator.css,keyword.operator.scss #227d92 —
support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss #005fc4 —
punctuation.separator.list.comma.css #383f51 —
support.constant.color.w3c-standard-color-name.css #005fc4 —
support.type.vendored.property-name.css #227d92 —
support.module.node,support.type.object.module,support.module.node #003f8c —
variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node #2f5591
support.constant.json #005fc4 —
keyword.operator.expression.instanceof, keyword.operator.new, keyword.operator.ternary, keyword.operator.optional, keyword.operator.expression.keyof #2400e2 —
support.type.object.console #0025c0 —
support.variable.property.process #005fc4 —
entity.name.function,support.function.console #804666 —
keyword.operator.misc.rust #383f51 —
keyword.operator.sigil.rust #2400e2 —
keyword.operator.delete #2400e2 —
support.type.object.dom #227d92 —
support.variable.dom,support.variable.property.dom #0025c0 —
keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational #227d92 —
punctuation.separator.delimiter #383f51 —
keyword.operator.assignment.compound #2400e2 —
keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts #227d92 —
entity.name.namespace #003f8c —
variable.language #003f8c —
token.package.keyword #2400e2 —
entity.name.function, meta.definition.function #4155C4 bold
entity.name.function, meta.function-call #3508AE
entity.name.class.identifier.namespace.type #003f8c —
entity.name.class, variable.other.class #003f8c —
keyword.other.special-method #804666 —
keyword.operator.expression.delete,keyword.operator.expression.in,keyword.operator.expression.of,keyword.operator.expression.instanceof,keyword.operator.new,keyword.operator.expression.typeof,keyword.operator.expression.void #2400e2 —
support.type.property-name #383f51 —
support.constant.property-value #383f51 —
support.constant.font-name #005fc4 —
punctuation.definition.tag #7f89a3
entity.other.inherited-class #003f8c —
constant.other.symbol #227d92 —
punctuation.definition.constant #005fc4 —
meta.jsx.children #1c2436 —
entity.other.attribute-name ##2f5591 —
markup.heading punctuation.definition.heading, entity.name.section #804666 —
keyword.other.unit #0025c0 —
markup.bold,todo.bold #005fc4 —
punctuation.definition.bold #003f8c —
markup.italic, punctuation.definition.italic,todo.emphasis #2400e2 —
entity.name.section.markdown #0025c0 —
punctuation.definition.heading.markdown #0025c0 —
punctuation.definition.list.begin.markdown #0025c0 —
markup.heading.setext #383f51 —
punctuation.definition.bold.markdown #005fc4 —
markup.inline.raw.markdown #006618 —
markup.inline.raw.string.markdown #006618 —
punctuation.definition.list.markdown #0025c0 —
punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.definition.metadata.markdown #0025c0 —
beginning.punctuation.definition.list.markdown #0025c0 —
punctuation.definition.metadata.markdown #0025c0 —
markup.underline.link.markdown,markup.underline.link.image.markdown #2400e2 —
string.other.link.title.markdown,string.other.link.description.markdown #804666 —
constant.character.escape #227d92 —
punctuation.section.embedded, variable.interpolation #0025c0 —
punctuation.section.embedded.begin,punctuation.section.embedded.end #2400e2 —
invalid.illegal.bad-ampersand.html #383f51 —
invalid.deprecated #8594A8 —
invalid.unimplemented #003F8C —
source.json meta.structure.dictionary.json > string.quoted.json #0025c0 —
source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string #0025c0 —
source.json meta.structure.dictionary.json > value.json > string.quoted.json,source.json meta.structure.array.json > value.json > string.quoted.json,source.json meta.structure.dictionary.json > value.json > string.quoted.json > punctuation,source.json meta.structure.array.json > value.json > string.quoted.json > punctuation #006618 —
constant.language.boolean #2400E2
constant.numeric.decimal #1F589F
source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json #227d92 —
support.type.property-name.json #0025c0 —
support.type.property-name.json punctuation #0025c0 —
function.parameter #383f51 —
inline-color-decoration rgb-value #005fc4 —
support.type.primitive,support.type.builtin #2400E2 —
block.scope.end,block.scope.begin #383f51 —
token.error-token #f44747 —
token.debug-token #2400e2 —
punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded #2400e2 —
meta.template.expression #383f51 —
meta.property.object #0025c0 —
variable.parameter.function.js #0025c0 —
keyword.other.template.begin #006618 —
keyword.other.template.end #006618 —
keyword.other.substitution.begin #006618 —
keyword.other.substitution.end #006618 —
keyword.operator.assignment #161F39 —
punctuation.quasi.element #2400e2 —
constant.character.entity #0025c0 —
entity.other.attribute-name.pseudo-element, entity.other.attribute-name.pseudo-class #227d92 —
meta.scope.prerequisites.makefile #0025c0 —
text.variable, text.bracketed #0025c0 —
support.type.swift, support.type.vb.asp #003f8c —
entity.name.function.xi #003f8c —
entity.name.class.xi #227d92 —
constant.character.character-class.regexp.xi #0025c0 —
constant.regexp.xi #2400e2 —
entity.name.label.cs, markup.heading.setext.1.markdown, markup.heading.setext.2.markdown #0025c0 —
meta.brace.square #383f51 —
comment, punctuation.definition.comment #788da1 italic
markup.quote.markdown #788da1 —
punctuation.definition.block.sequence.item.yaml #383f51 —
comment.line.double-slash,comment.block.documentation — italic
markup.italic.markdown — 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 } !` ;
}
fetchUser.ts
index.ts
README.md
src
components
fetchUser.ts
src
components
fetchUser.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Problems1
Output
Debug Console
Terminal
Ports
~/my-project $ pnpm dev
▲ Next.js ready on http://localhost:3000
✓ compiled client and server successfully in 412ms
wait - compiling /theme/vscode...
main*
Spacegrey Theme | Coding Theme
Button.tsx
fetchUser
31
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 } !` ;
}