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.activeBorder #be9898d0 activityBar.activeFocusBorder #be9898 activityBar.background #f9f5f5 activityBar.border #f9f5f5 activityBar.dropBackground #f9f5f5 activityBar.foreground #be9898 tokenColors TextMate scopes and font styles (syntax highlighting rules).
scope foreground fontStyle keyword, storage.type.function, storage.type.class, storage.type.enum, storage.type.interface, storage.type.property, keyword.operator.new, keyword.operator.expression, keyword.operator.new, keyword.operator.delete, storage.type.extends #f165bd — keyword.other.debugger #f165bd — storage, modifier, keyword.var, entity.name.tag, keyword.control.case, keyword.control.switch #f165bd — keyword.operator #f165bd —
Shiki preview TypeScript sample highlighted with this variant's colors and tokenColors.
Soft Material — Soft Material
activityBar.inactiveForeground
#dfc5c5
activityBarBadge.background #dabfbf
activityBarBadge.foreground #f9f5f5
badge.background #dabfbf
badge.foreground #f9f5f5
breadcrumb.activeSelectionForeground #be9898
breadcrumb.focusForeground #be9898
breadcrumb.foreground #dfc5c5
button.background #dabfbf
button.foreground #f9f5f5
button.hoverBackground #dabfbfd0
charts.blue #75a9d9
charts.foreground #be9898
charts.green #96ad01
charts.orange #f165bd
charts.purple #aea6e1
charts.red #f165bd
charts.yellow #ec9157
checkbox.background #f9f5f5
checkbox.border #ebe6e4
checkbox.foreground #f165bd
debugConsole.errorForeground #f165bd
debugConsole.infoForeground #96ad01
debugConsole.sourceForeground #aea6e1
debugConsole.warningForeground #ec9157
debugConsoleInputIcon.foreground #25b7b8
debugIcon.breakpointCurrentStackframeForeground #75a9d9
debugIcon.breakpointDisabledForeground #f1706f
debugIcon.breakpointForeground #f165bd
debugIcon.breakpointStackframeForeground #f165bd
debugIcon.breakpointUnverifiedForeground #dabfbf
debugIcon.continueForeground #75a9d9
debugIcon.disconnectForeground #aea6e1
debugIcon.pauseForeground #ec9157
debugIcon.restartForeground #25b7b8
debugIcon.startForeground #25b7b8
debugIcon.stepBackForeground #75a9d9
debugIcon.stepIntoForeground #75a9d9
debugIcon.stepOutForeground #75a9d9
debugIcon.stepOverForeground #75a9d9
debugIcon.stopForeground #f165bd
debugTokenExpression.boolean #aea6e1
debugTokenExpression.error #f165bd
debugTokenExpression.name #75a9d9
debugTokenExpression.number #aea6e1
debugTokenExpression.string #ec9157
debugTokenExpression.value #96ad01
debugToolBar.background #f9f5f5
diffEditor.insertedTextBackground #6ec39830
diffEditor.removedTextBackground #f1706f30
dropdown.background #f9f5f5
dropdown.border #ebe6e4
dropdown.foreground #dabfbf
editor.background #f9f5f5
editor.findMatchBackground #f3945940
editor.findMatchHighlightBackground #a4bb4a40
editor.findRangeHighlightBackground #efeae970
editor.foldBackground #ebe6e480
editor.foreground #be9898
editor.hoverHighlightBackground #efeae990
editor.inactiveSelectionBackground #efeae970
editor.lineHighlightBackground #f2edec70
editor.lineHighlightBorder #ebe6e400
editor.rangeHighlightBackground #f2edec80
editor.selectionBackground #efeae9e0
editor.selectionHighlightBackground #efeae970
editor.snippetFinalTabstopHighlightBackground #a4bb4a40
editor.snippetFinalTabstopHighlightBorder #f9f5f5
editor.snippetTabstopHighlightBackground #f2edec
editor.symbolHighlightBackground #6cb3c640
editor.wordHighlightBackground #efeae948
editor.wordHighlightStrongBackground #efeae990
editorBracketMatch.background #ebe6e4
editorBracketMatch.border #f9f5f500
editorCodeLens.foreground #dfc5c5
editorCursor.foreground #f165bd
editorError.background #f1706f00
editorError.foreground #f1706f
editorGroup.border #f2edec
editorGroup.dropBackground #ebe6e460
editorGroupHeader.noTabsBackground #f9f5f5
editorGroupHeader.tabsBackground #f9f5f5
editorGutter.addedBackground #a4bb4aa0
editorGutter.background #f9f5f500
editorGutter.commentRangeForeground #e3cbcb
editorGutter.deletedBackground #f1706fa0
editorGutter.modifiedBackground #6cb3c6a0
editorHint.foreground #e092be
editorHoverWidget.background #f4f0f0
editorHoverWidget.border #efeae9
editorIndentGuide.activeBackground #dabfbf50
editorIndentGuide.background #dabfbf20
editorInfo.background #6cb3c600
editorInfo.foreground #6cb3c6
editorLightBulb.foreground #ec9157
editorLightBulbAutoFix.foreground #25b7b8
editorLineNumber.activeForeground #dabfbfe0
editorLineNumber.foreground #e3cbcba0
editorLink.activeForeground #96ad01
editorMarkerNavigation.background #f4f0f0
editorMarkerNavigationError.background #f1706f80
editorMarkerNavigationInfo.background #6cb3c680
editorMarkerNavigationWarning.background #e4b64980
editorOverviewRuler.addedForeground #a4bb4aa0
editorOverviewRuler.border #f9f5f500
editorOverviewRuler.commonContentForeground #dfc5c5
editorOverviewRuler.currentContentForeground #6cb3c6
editorOverviewRuler.deletedForeground #f1706fa0
editorOverviewRuler.errorForeground #f165bd
editorOverviewRuler.findMatchForeground #6ec398
editorOverviewRuler.incomingContentForeground #6ec398
editorOverviewRuler.infoForeground #aea6e1
editorOverviewRuler.modifiedForeground #6cb3c6a0
editorOverviewRuler.rangeHighlightForeground #6ec398
editorOverviewRuler.selectionHighlightForeground #6ec398
editorOverviewRuler.warningForeground #ec9157
editorOverviewRuler.wordHighlightForeground #ebe6e4
editorOverviewRuler.wordHighlightStrongForeground #ebe6e4
editorRuler.foreground #efeae9a0
editorSuggestWidget.background #f4f0f0
editorSuggestWidget.border #f4f0f0
editorSuggestWidget.foreground #be9898
editorSuggestWidget.highlightForeground #96ad01
editorSuggestWidget.selectedBackground #efeae9
editorUnnecessaryCode.border #f9f5f5
editorUnnecessaryCode.opacity #00000080
editorWarning.background #e4b64900
editorWarning.foreground #e4b649
editorWhitespace.foreground #efeae9
editorWidget.background #f9f5f5
editorWidget.border #ebe6e4
editorWidget.foreground #be9898
errorForeground #f165bd
extensionBadge.remoteBackground #dabfbf
extensionBadge.remoteForeground #f9f5f5
extensionButton.prominentBackground #dabfbf
extensionButton.prominentForeground #f9f5f5
extensionButton.prominentHoverBackground #dabfbfd0
focusBorder #f9f5f500
foreground #dabfbf
gitDecoration.addedResourceForeground #96ad01a0
gitDecoration.conflictingResourceForeground #aea6e1a0
gitDecoration.deletedResourceForeground #f165bda0
gitDecoration.ignoredResourceForeground #ebe6e4
gitDecoration.modifiedResourceForeground #75a9d9a0
gitDecoration.stageDeletedResourceForeground #25b7b8a0
gitDecoration.stageModifiedResourceForeground #25b7b8a0
gitDecoration.submoduleResourceForeground #f165bda0
gitDecoration.untrackedResourceForeground #ec9157a0
icon.foreground #aea6e1
imagePreview.border #f9f5f5
input.background #f9f5f500
input.border #ebe6e4
input.foreground #be9898
input.placeholderForeground #e3cbcb
inputOption.activeBorder #25b7b8
inputValidation.errorBackground #f1706f
inputValidation.errorBorder #f165bd
inputValidation.errorForeground #be9898
inputValidation.infoBackground #6cb3c6
inputValidation.infoBorder #75a9d9
inputValidation.infoForeground #be9898
inputValidation.warningBackground #e4b649
inputValidation.warningBorder #ec9157
inputValidation.warningForeground #be9898
list.activeSelectionBackground #efeae980
list.activeSelectionForeground #be9898
list.dropBackground #f4f0f080
list.errorForeground #f165bd
list.focusBackground #efeae980
list.focusForeground #be9898
list.highlightForeground #96ad01
list.hoverBackground #f9f5f500
list.hoverForeground #be9898
list.inactiveFocusBackground #efeae960
list.inactiveSelectionBackground #efeae980
list.inactiveSelectionForeground #dabfbf
list.invalidItemForeground #f1706f
list.warningForeground #ec9157
menu.background #f9f5f5
menu.foreground #dabfbf
menu.selectionBackground #f4f0f0
menu.selectionForeground #be9898
menubar.selectionBackground #f9f5f5
menubar.selectionBorder #f9f5f5
merge.border #f9f5f500
merge.currentContentBackground #6cb3c640
merge.currentHeaderBackground #6cb3c680
merge.incomingContentBackground #6ec39840
merge.incomingHeaderBackground #6ec39880
minimap.errorHighlight #f1706f80
minimap.findMatchHighlight #6ec39860
minimap.selectionHighlight #ebe6e4f0
minimap.warningHighlight #e4b64980
minimapGutter.addedBackground #a4bb4aa0
minimapGutter.deletedBackground #f1706fa0
minimapGutter.modifiedBackground #6cb3c6a0
notebook.cellHoverBackground #f9f5f5
notebook.cellToolbarSeparator #ebe6e4
notebook.focusedCellBackground #f9f5f5
notebook.focusedCellBorder #ebe6e4
notebook.focusedRowBorder #ebe6e4
notebook.inactiveFocusedCellBorder #ebe6e4
notebook.outputContainerBackgroundColor #f4f0f0
notebook.selectedCellBorder #ebe6e4
notebookStatusErrorIcon.foreground #f165bd
notebookStatusRunningIcon.foreground #75a9d9
notebookStatusSuccessIcon.foreground #96ad01
notificationCenterHeader.background #f2edec
notificationCenterHeader.foreground #be9898
notificationLink.foreground #96ad01
notifications.background #f9f5f5
notifications.foreground #be9898
notificationsErrorIcon.foreground #f165bd
notificationsInfoIcon.foreground #75a9d9
notificationsWarningIcon.foreground #ec9157
panel.background #f9f5f5
panel.border #f9f5f5
panelInput.border #ebe6e4
panelTitle.activeBorder #be9898d0
panelTitle.activeForeground #be9898
panelTitle.inactiveForeground #dfc5c5
peekView.border #efeae9
peekViewEditor.background #f4f0f0
peekViewEditor.matchHighlightBackground #e4b64950
peekViewEditorGutter.background #f4f0f0
peekViewResult.background #f4f0f0
peekViewResult.fileForeground #be9898
peekViewResult.lineForeground #dabfbf
peekViewResult.matchHighlightBackground #e4b64950
peekViewResult.selectionBackground #6ec39850
peekViewResult.selectionForeground #be9898
peekViewTitle.background #efeae9
peekViewTitleDescription.foreground #be9898
peekViewTitleLabel.foreground #96ad01
pickerGroup.border #be98981a
problemsErrorIcon.foreground #f165bd
problemsInfoIcon.foreground #75a9d9
problemsWarningIcon.foreground #ec9157
progressBar.background #dabfbf
quickInput.list.focusBackground #efeae980
sash.hoverBorder #efeae9
scrollbar.shadow #3c474d18
scrollbarSlider.activeBackground #dabfbf
scrollbarSlider.background #ebe6e480
scrollbarSlider.hoverBackground #ebe6e4
selection.background #efeae9f0
settings.checkboxBackground #f9f5f5
settings.checkboxBorder #ebe6e4
settings.checkboxForeground #f165bd
settings.dropdownBackground #f9f5f5
settings.dropdownBorder #ebe6e4
settings.dropdownForeground #25b7b8
settings.focusedRowBackground #f4f0f0
settings.headerForeground #dabfbf
settings.modifiedItemIndicator #e3cbcb
settings.numberInputBackground #f9f5f5
settings.numberInputBorder #ebe6e4
settings.numberInputForeground #aea6e1
settings.textInputBackground #f9f5f5
settings.textInputBorder #ebe6e4
settings.textInputForeground #75a9d9
sideBar.background #f9f5f5
sideBar.foreground #dfc5c5
sideBarSectionHeader.background #f9f5f500
sideBarSectionHeader.foreground #dabfbf
sideBarTitle.foreground #dabfbf
statusBar.background #f9f5f5
statusBar.border #f9f5f5
statusBar.debuggingBackground #f9f5f5
statusBar.debuggingForeground #f165bd
statusBar.foreground #dabfbf
statusBar.noFolderBackground #f9f5f5
statusBar.noFolderBorder #f9f5f5
statusBar.noFolderForeground #dabfbf
statusBarItem.activeBackground #efeae970
statusBarItem.hoverBackground #efeae9a0
statusBarItem.prominentBackground #f9f5f5
statusBarItem.prominentForeground #be9898
statusBarItem.prominentHoverBackground #efeae9a0
statusBarItem.remoteBackground #f9f5f5
statusBarItem.remoteForeground #dabfbf
symbolIcon.arrayForeground #75a9d9
symbolIcon.booleanForeground #aea6e1
symbolIcon.classForeground #ec9157
symbolIcon.colorForeground #be9898
symbolIcon.constantForeground #25b7b8
symbolIcon.constructorForeground #aea6e1
symbolIcon.enumeratorForeground #aea6e1
symbolIcon.enumeratorMemberForeground #25b7b8
symbolIcon.eventForeground #ec9157
symbolIcon.fieldForeground #be9898
symbolIcon.fileForeground #be9898
symbolIcon.folderForeground #be9898
symbolIcon.functionForeground #96ad01
symbolIcon.interfaceForeground #ec9157
symbolIcon.keyForeground #96ad01
symbolIcon.keywordForeground #f165bd
symbolIcon.methodForeground #96ad01
symbolIcon.moduleForeground #aea6e1
symbolIcon.namespaceForeground #aea6e1
symbolIcon.nullForeground #25b7b8
symbolIcon.numberForeground #aea6e1
symbolIcon.objectForeground #aea6e1
symbolIcon.operatorForeground #f165bd
symbolIcon.packageForeground #aea6e1
symbolIcon.propertyForeground #25b7b8
symbolIcon.referenceForeground #75a9d9
symbolIcon.snippetForeground #be9898
symbolIcon.stringForeground #96ad01
symbolIcon.structForeground #ec9157
symbolIcon.textForeground #be9898
symbolIcon.typeParameterForeground #25b7b8
symbolIcon.unitForeground #be9898
symbolIcon.variableForeground #75a9d9
tab.activeBackground #f9f5f5
tab.activeBorder #be9898d0
tab.activeForeground #be9898
tab.border #f9f5f5
tab.hoverBackground #f9f5f5
tab.hoverForeground #be9898
tab.inactiveBackground #f9f5f5
tab.inactiveForeground #e3cbcb
tab.unfocusedActiveBorder #dfc5c5
tab.unfocusedActiveForeground #dabfbf
tab.unfocusedHoverForeground #be9898
tab.unfocusedInactiveForeground #e3cbcb
terminal.ansiBlack #be9898
terminal.ansiBlue #75a9d9
terminal.ansiBrightBlack #be9898
terminal.ansiBrightBlue #75a9d9
terminal.ansiBrightCyan #25b7b8
terminal.ansiBrightGreen #96ad01
terminal.ansiBrightMagenta #aea6e1
terminal.ansiBrightRed #f165bd
terminal.ansiBrightWhite #f4f0f0
terminal.ansiBrightYellow #ec9157
terminal.ansiCyan #25b7b8
terminal.ansiGreen #96ad01
terminal.ansiMagenta #aea6e1
terminal.ansiRed #f165bd
terminal.ansiWhite #dfc5c5
terminal.ansiYellow #ec9157
terminal.foreground #be9898
terminalCursor.foreground #f165bd
testing.iconErrored #f165bd
testing.iconFailed #f165bd
testing.iconPassed #25b7b8
testing.iconQueued #75a9d9
testing.iconSkipped #aea6e1
testing.iconUnset #ec9157
testing.runAction #25b7b8
textBlockQuote.background #f4f0f0
textBlockQuote.border #efeae9
textCodeBlock.background #f4f0f0
textLink.activeForeground #96ad01c0
textLink.foreground #96ad01
titleBar.activeBackground #f9f5f5
titleBar.activeForeground #dabfbf
titleBar.border #f9f5f5
titleBar.inactiveBackground #f9f5f5
titleBar.inactiveForeground #e3cbcb
tree.indentGuidesStroke #e3cbcb
welcomePage.buttonBackground #f4f0f0
welcomePage.buttonHoverBackground #f4f0f0a0
widget.shadow #3c474d18 string, punctuation.definition.string.end, punctuation.definition.string.begin, punctuation.definition.string.template.begin, punctuation.definition.string.template.end #ec9157 —
entity.other.attribute-name #ec9157 —
constant.character.escape, punctuation.quasi.element, punctuation.definition.template-expression, punctuation.section.embedded, storage.type.format, constant.other.placeholder, constant.other.placeholder, variable.interpolation #96ad01 —
entity.name.function, support.function, meta.function, meta.function-call, meta.definition.method #96ad01 —
keyword.control.at-rule, keyword.control.import, keyword.control.export, storage.type.namespace, punctuation.decorator, keyword.control.directive, keyword.preprocessor, punctuation.definition.preprocessor, punctuation.definition.directive, keyword.other.import, keyword.other.package, entity.name.type.namespace, entity.name.scope-resolution, keyword.other.using, keyword.package, keyword.import, keyword.map #25b7b8 —
storage.type.annotation #25b7b8 —
entity.name.label, constant.other.label #25b7b8 —
support.module, support.node, support.other.module, support.type.object.module, entity.name.type.module, entity.name.type.class.module, keyword.control.module #25b7b8 —
storage.type, support.type, entity.name.type, keyword.type #75a9d9 —
entity.name.type.class, support.class, entity.name.class, entity.other.inherited-class, storage.class #75a9d9 —
constant.language.boolean #aea6e1 —
entity.name.function.preprocessor #aea6e1 —
variable.language.this, variable.language.self, variable.language.super, keyword.other.this, variable.language.special, constant.language.null, constant.language.undefined, constant.language.nan #aea6e1 —
constant.language, support.constant #aea6e1 —
variable, support.variable, meta.definition.variable #be9898 —
variable.object.property, support.variable.property, variable.other.property, variable.other.object.property, variable.other.enummember, variable.other.member, meta.object-literal.key #be9898 —
punctuation, meta.brace, meta.delimiter, meta.bracket #be9898 —
heading.1.markdown, markup.heading.setext.1.markdown #f165bd bold
heading.2.markdown, markup.heading.setext.2.markdown #f165bd bold
heading.3.markdown #ec9157 bold
heading.4.markdown #96ad01 bold
heading.5.markdown #75a9d9 bold
heading.6.markdown #aea6e1 bold
punctuation.definition.heading.markdown #dfc5c5 regular
string.other.link.title.markdown, constant.other.reference.link.markdown, string.other.link.description.markdown #aea6e1 regular
markup.underline.link.image.markdown, markup.underline.link.markdown #96ad01 underline
punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.definition.italic.markdown, punctuation.definition.quote.begin.markdown, punctuation.definition.metadata.markdown, punctuation.separator.key-value.markdown, punctuation.definition.constant.markdown #dfc5c5 —
punctuation.definition.bold.markdown #dfc5c5 regular
meta.separator.markdown, punctuation.definition.constant.begin.markdown, punctuation.definition.constant.end.markdown #dfc5c5 bold
markup.bold markup.italic, markup.italic markup.bold — italic bold
punctuation.definition.markdown, punctuation.definition.raw.markdown #ec9157 —
fenced_code.block.language #ec9157 —
markup.fenced_code.block.markdown, markup.inline.raw.string.markdown #96ad01 —
punctuation.definition.list.begin.markdown #f165bd —
punctuation.definition.heading.restructuredtext #f165bd bold
punctuation.definition.field.restructuredtext, punctuation.separator.key-value.restructuredtext, punctuation.definition.directive.restructuredtext, punctuation.definition.constant.restructuredtext, punctuation.definition.italic.restructuredtext, punctuation.definition.table.restructuredtext #dfc5c5 —
punctuation.definition.bold.restructuredtext #dfc5c5 regular
entity.name.tag.restructuredtext, punctuation.definition.link.restructuredtext, punctuation.definition.raw.restructuredtext, punctuation.section.raw.restructuredtext #25b7b8 —
constant.other.footnote.link.restructuredtext #aea6e1 —
support.directive.restructuredtext #f165bd —
entity.name.directive.restructuredtext, markup.raw.restructuredtext, markup.raw.inner.restructuredtext, string.other.link.title.restructuredtext #96ad01 —
punctuation.definition.function.latex, punctuation.definition.function.tex, punctuation.definition.keyword.latex, constant.character.newline.tex, punctuation.definition.keyword.tex #dfc5c5 —
support.function.be.latex #f165bd —
support.function.section.latex, keyword.control.table.cell.latex, keyword.control.table.newline.latex #f165bd —
support.class.latex, variable.parameter.latex, variable.parameter.function.latex, variable.parameter.definition.label.latex, constant.other.reference.label.latex #ec9157 —
keyword.control.preamble.latex #aea6e1 —
punctuation.separator.namespace.xml #dfc5c5 —
entity.name.tag.html, entity.name.tag.xml, entity.name.tag.localname.xml #f165bd —
entity.other.attribute-name.html, entity.other.attribute-name.xml, entity.other.attribute-name.localname.xml #ec9157 —
string.quoted.double.html, string.quoted.single.html, punctuation.definition.string.begin.html, punctuation.definition.string.end.html, punctuation.separator.key-value.html, punctuation.definition.string.begin.xml, punctuation.definition.string.end.xml, string.quoted.double.xml, string.quoted.single.xml, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, punctuation.definition.tag.xml, meta.tag.xml, meta.tag.preprocessor.xml, meta.tag.other.html, meta.tag.block.any.html, meta.tag.inline.any.html #96ad01 —
variable.language.documentroot.xml, meta.tag.sgml.doctype.xml #aea6e1 —
storage.type.proto #ec9157 —
string.quoted.double.proto.syntax, string.quoted.single.proto.syntax, string.quoted.double.proto, string.quoted.single.proto #96ad01 —
entity.name.class.proto, entity.name.class.message.proto #25b7b8 —
punctuation.definition.entity.css, punctuation.separator.key-value.css, punctuation.terminator.rule.css, punctuation.separator.list.comma.css #dfc5c5 —
entity.other.attribute-name.class.css #f165bd —
keyword.other.unit #f165bd —
entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css #ec9157 —
string.quoted.single.css, string.quoted.double.css, support.constant.property-value.css, meta.property-value.css, punctuation.definition.string.begin.css, punctuation.definition.string.end.css, constant.numeric.css, support.constant.font-name.css, variable.parameter.keyframe-list.css #96ad01 —
support.type.property-name.css #25b7b8 —
support.type.vendored.property-name.css #75a9d9 —
entity.name.tag.css, entity.other.keyframe-offset.css, punctuation.definition.keyword.css, keyword.control.at-rule.keyframes.css, meta.selector.css #aea6e1 —
punctuation.definition.entity.scss, punctuation.separator.key-value.scss, punctuation.terminator.rule.scss, punctuation.separator.list.comma.scss #dfc5c5 —
keyword.control.at-rule.keyframes.scss #f165bd —
punctuation.definition.interpolation.begin.bracket.curly.scss, punctuation.definition.interpolation.end.bracket.curly.scss #ec9157 —
punctuation.definition.string.begin.scss, punctuation.definition.string.end.scss, string.quoted.double.scss, string.quoted.single.scss, constant.character.css.sass, meta.property-value.scss #96ad01 —
keyword.control.at-rule.include.scss, keyword.control.at-rule.use.scss, keyword.control.at-rule.mixin.scss, keyword.control.at-rule.extend.scss, keyword.control.at-rule.import.scss #aea6e1 —
meta.function.stylus #be9898 —
entity.name.function.stylus #ec9157 —
string.unquoted.js #be9898 —
punctuation.accessor.js, punctuation.separator.key-value.js, punctuation.separator.label.js, keyword.operator.accessor.js #dfc5c5 —
punctuation.definition.block.tag.jsdoc #f165bd —
storage.type.js, storage.type.function.arrow.js #f165bd —
punctuation.definition.tag.jsx, entity.other.attribute-name.jsx, punctuation.definition.tag.begin.js.jsx, punctuation.definition.tag.end.js.jsx, entity.other.attribute-name.js.jsx #96ad01 —
entity.name.type.module.ts #be9898 —
keyword.operator.type.annotation.ts, punctuation.accessor.ts, punctuation.separator.key-value.ts #dfc5c5 —
punctuation.definition.tag.directive.ts, entity.other.attribute-name.directive.ts #96ad01 —
entity.name.type.ts, entity.name.type.interface.ts, entity.other.inherited-class.ts, entity.name.type.alias.ts, entity.name.type.class.ts, entity.name.type.enum.ts #25b7b8 —
storage.type.ts, storage.type.function.arrow.ts, storage.type.type.ts #f165bd —
entity.name.type.module.ts #75a9d9 —
keyword.control.import.ts, keyword.control.export.ts, storage.type.namespace.ts #aea6e1 —
entity.name.type.module.tsx #be9898 —
keyword.operator.type.annotation.tsx, punctuation.accessor.tsx, punctuation.separator.key-value.tsx #dfc5c5 —
punctuation.definition.tag.directive.tsx, entity.other.attribute-name.directive.tsx, punctuation.definition.tag.begin.tsx, punctuation.definition.tag.end.tsx, entity.other.attribute-name.tsx #96ad01 —
entity.name.type.tsx, entity.name.type.interface.tsx, entity.other.inherited-class.tsx, entity.name.type.alias.tsx, entity.name.type.class.tsx, entity.name.type.enum.tsx #25b7b8 —
entity.name.type.module.tsx #75a9d9 —
keyword.control.import.tsx, keyword.control.export.tsx, storage.type.namespace.tsx #aea6e1 —
storage.type.tsx, storage.type.function.arrow.tsx, storage.type.type.tsx, support.class.component.tsx #f165bd —
storage.type.function.coffee #f165bd —
meta.type-signature.purescript #be9898 —
keyword.other.double-colon.purescript, keyword.other.arrow.purescript, keyword.other.big-arrow.purescript #f165bd —
entity.name.function.purescript #ec9157 —
string.quoted.single.purescript, string.quoted.double.purescript, punctuation.definition.string.begin.purescript, punctuation.definition.string.end.purescript, string.quoted.triple.purescript, entity.name.type.purescript #96ad01 —
support.other.module.purescript #aea6e1 —
punctuation.dot.dart #dfc5c5 —
storage.type.primitive.dart #f165bd —
support.class.dart #ec9157 —
entity.name.function.dart, string.interpolated.single.dart, string.interpolated.double.dart #96ad01 —
variable.language.dart #75a9d9 —
keyword.other.import.dart, storage.type.annotation.dart #aea6e1 —
entity.other.attribute-name.class.pug #f165bd —
storage.type.function.pug #f165bd —
entity.other.attribute-name.tag.pug #25b7b8 —
entity.name.tag.pug, storage.type.import.include.pug #aea6e1 —
meta.function-call.c, storage.modifier.array.bracket.square.c, meta.function.definition.parameters.c #be9898 —
punctuation.separator.dot-access.c, constant.character.escape.line-continuation.c #dfc5c5 —
keyword.control.directive.include.c, punctuation.definition.directive.c, keyword.control.directive.pragma.c, keyword.control.directive.line.c, keyword.control.directive.define.c, keyword.control.directive.conditional.c, keyword.control.directive.diagnostic.error.c, keyword.control.directive.undef.c, keyword.control.directive.conditional.ifdef.c, keyword.control.directive.endif.c, keyword.control.directive.conditional.ifndef.c, keyword.control.directive.conditional.if.c, keyword.control.directive.else.c #f165bd —
punctuation.separator.pointer-access.c #f165bd —
variable.other.member.c #25b7b8 —
meta.function-call.cpp, storage.modifier.array.bracket.square.cpp, meta.function.definition.parameters.cpp, meta.body.function.definition.cpp #be9898 —
punctuation.separator.dot-access.cpp, constant.character.escape.line-continuation.cpp #dfc5c5 —
keyword.control.directive.include.cpp, punctuation.definition.directive.cpp, keyword.control.directive.pragma.cpp, keyword.control.directive.line.cpp, keyword.control.directive.define.cpp, keyword.control.directive.conditional.cpp, keyword.control.directive.diagnostic.error.cpp, keyword.control.directive.undef.cpp, keyword.control.directive.conditional.ifdef.cpp, keyword.control.directive.endif.cpp, keyword.control.directive.conditional.ifndef.cpp, keyword.control.directive.conditional.if.cpp, keyword.control.directive.else.cpp, storage.type.namespace.definition.cpp, keyword.other.using.directive.cpp, storage.type.struct.cpp #f165bd —
punctuation.separator.pointer-access.cpp, punctuation.section.angle-brackets.begin.template.call.cpp, punctuation.section.angle-brackets.end.template.call.cpp #f165bd —
variable.other.member.cpp #25b7b8 —
keyword.other.using.cs #f165bd —
keyword.type.cs, constant.character.escape.cs, punctuation.definition.interpolation.begin.cs, punctuation.definition.interpolation.end.cs #ec9157 —
string.quoted.double.cs, string.quoted.single.cs, punctuation.definition.string.begin.cs, punctuation.definition.string.end.cs #96ad01 —
variable.other.object.property.cs #25b7b8 —
entity.name.type.namespace.cs #aea6e1 —
keyword.symbol.fsharp, constant.language.unit.fsharp #be9898 —
keyword.format.specifier.fsharp, entity.name.type.fsharp #ec9157 —
string.quoted.double.fsharp, string.quoted.single.fsharp, punctuation.definition.string.begin.fsharp, punctuation.definition.string.end.fsharp #96ad01 —
entity.name.section.fsharp #75a9d9 —
support.function.attribute.fsharp #aea6e1 —
punctuation.separator.java, punctuation.separator.period.java #dfc5c5 —
keyword.other.import.java, keyword.other.package.java #f165bd —
storage.type.function.arrow.java, keyword.control.ternary.java #f165bd —
variable.other.property.java #25b7b8 —
variable.language.wildcard.java, storage.modifier.import.java, storage.type.annotation.java, punctuation.definition.annotation.java, storage.modifier.package.java, entity.name.type.module.java #aea6e1 —
keyword.other.import.kotlin #f165bd —
storage.type.kotlin #f165bd —
constant.language.kotlin #25b7b8 —
entity.name.package.kotlin, storage.type.annotation.kotlin #aea6e1 —
entity.name.package.scala #aea6e1 —
constant.language.scala #75a9d9 —
entity.name.import.scala #25b7b8 —
string.quoted.double.scala, string.quoted.single.scala, punctuation.definition.string.begin.scala, punctuation.definition.string.end.scala, string.quoted.double.interpolated.scala, string.quoted.single.interpolated.scala, string.quoted.triple.scala #96ad01 —
entity.name.class, entity.other.inherited-class.scala #ec9157 —
keyword.declaration.stable.scala, keyword.other.arrow.scala #f165bd —
keyword.other.import.scala #f165bd —
keyword.operator.navigation.groovy, meta.method.body.java, meta.definition.method.groovy, meta.definition.method.signature.java #be9898 —
punctuation.separator.groovy #dfc5c5 —
keyword.other.import.groovy, keyword.other.package.groovy, keyword.other.import.static.groovy #f165bd —
storage.type.def.groovy #f165bd —
variable.other.interpolated.groovy, meta.method.groovy #96ad01 —
storage.modifier.import.groovy, storage.modifier.package.groovy #25b7b8 —
storage.type.annotation.groovy #aea6e1 —
entity.name.package.go #25b7b8 —
keyword.import.go, keyword.package.go #aea6e1 —
entity.name.type.mod.rust #be9898 —
keyword.operator.path.rust, keyword.operator.member-access.rust #dfc5c5 —
storage.type.rust #f165bd —
support.constant.core.rust #25b7b8 —
meta.attribute.rust, variable.language.rust, storage.type.module.rust #aea6e1 —
meta.function-call.swift, support.function.any-method.swift #be9898 —
support.variable.swift #25b7b8 —
keyword.operator.class.php #be9898 —
storage.type.trait.php #f165bd —
constant.language.php, support.other.namespace.php #25b7b8 —
storage.type.modifier.access.control.public.cpp, storage.type.modifier.access.control.private.cpp #75a9d9 —
keyword.control.import.include.php, storage.type.php #aea6e1 —
meta.function-call.arguments.python #be9898 —
punctuation.definition.decorator.python, punctuation.separator.period.python #dfc5c5 —
constant.language.python #25b7b8 —
keyword.control.import.python, keyword.control.import.from.python #aea6e1 —
constant.language.lua #25b7b8 —
entity.name.class.lua #75a9d9 —
meta.function.method.with-arguments.ruby #be9898 —
punctuation.separator.method.ruby #dfc5c5 —
keyword.control.pseudo-method.ruby, storage.type.variable.ruby #f165bd —
keyword.other.special-method.ruby #96ad01 —
keyword.control.module.ruby, punctuation.definition.constant.ruby #aea6e1 —
string.regexp.character-class.ruby,string.regexp.interpolated.ruby,punctuation.definition.character-class.ruby,string.regexp.group.ruby, punctuation.section.regexp.ruby, punctuation.definition.group.ruby #ec9157 —
variable.other.constant.ruby #75a9d9 —
keyword.other.arrow.haskell, keyword.other.big-arrow.haskell, keyword.other.double-colon.haskell #f165bd —
storage.type.haskell #ec9157 —
constant.other.haskell, string.quoted.double.haskell, string.quoted.single.haskell, punctuation.definition.string.begin.haskell, punctuation.definition.string.end.haskell #96ad01 —
entity.name.function.haskell #75a9d9 —
entity.name.namespace, meta.preprocessor.haskell #25b7b8 —
keyword.control.import.julia, keyword.control.export.julia #f165bd —
keyword.storage.modifier.julia #f165bd —
constant.language.julia #25b7b8 —
support.function.macro.julia #aea6e1 —
keyword.other.period.elm #be9898 —
entity.name.function.r, variable.function.r #96ad01 —
constant.language.r #25b7b8 —
entity.namespace.r #aea6e1 —
punctuation.separator.module-function.erlang, punctuation.section.directive.begin.erlang #dfc5c5 —
keyword.control.directive.erlang, keyword.control.directive.define.erlang #f165bd —
entity.name.type.class.module.erlang #ec9157 —
string.quoted.double.erlang, string.quoted.single.erlang, punctuation.definition.string.begin.erlang, punctuation.definition.string.end.erlang #96ad01 —
keyword.control.directive.export.erlang, keyword.control.directive.module.erlang, keyword.control.directive.import.erlang, keyword.control.directive.behaviour.erlang #aea6e1 —
variable.other.readwrite.module.elixir, punctuation.definition.variable.elixir #25b7b8 —
constant.language.elixir #75a9d9 —
keyword.control.module.elixir #aea6e1 —
entity.name.type.value-signature.ocaml #be9898 —
keyword.other.ocaml #f165bd —
constant.language.variant.ocaml #25b7b8 —
storage.type.sub.perl, storage.type.declare.routine.perl #f165bd —
meta.function.lisp #be9898 —
storage.type.function-type.lisp #f165bd —
keyword.constant.lisp #96ad01 —
entity.name.function.lisp #25b7b8 —
constant.keyword.clojure, support.variable.clojure, meta.definition.variable.clojure #96ad01 —
entity.global.clojure #aea6e1 —
entity.name.function.clojure #75a9d9 —
meta.scope.if-block.shell, meta.scope.group.shell #be9898 —
support.function.builtin.shell, entity.name.function.shell #ec9157 —
string.quoted.double.shell, string.quoted.single.shell, punctuation.definition.string.begin.shell, punctuation.definition.string.end.shell, string.unquoted.heredoc.shell #96ad01 —
keyword.control.heredoc-token.shell, variable.other.normal.shell, punctuation.definition.variable.shell, variable.other.special.shell, variable.other.positional.shell, variable.other.bracket.shell #aea6e1 —
support.function.builtin.fish #f165bd —
support.function.unix.fish #f165bd —
variable.other.normal.fish, punctuation.definition.variable.fish, variable.other.fixed.fish, variable.other.special.fish #75a9d9 —
string.quoted.double.fish, punctuation.definition.string.end.fish, punctuation.definition.string.begin.fish, string.quoted.single.fish #96ad01 —
constant.character.escape.single.fish #aea6e1 —
punctuation.definition.variable.powershell #dfc5c5 —
entity.name.function.powershell, support.function.attribute.powershell, support.function.powershell #ec9157 —
string.quoted.single.powershell, string.quoted.double.powershell, punctuation.definition.string.begin.powershell, punctuation.definition.string.end.powershell, string.quoted.double.heredoc.powershell #96ad01 —
variable.other.member.powershell #25b7b8 —
string.unquoted.alias.graphql #be9898 —
keyword.type.graphql #f165bd —
entity.name.fragment.graphql #aea6e1 —
entity.name.function.target.makefile #f165bd —
variable.other.makefile #ec9157 —
meta.scope.prerequisites.makefile #96ad01 —
string.source.cmake #96ad01 —
entity.source.cmake #25b7b8 —
storage.source.cmake #aea6e1 —
punctuation.definition.map.viml #dfc5c5 —
storage.type.map.viml #f165bd —
constant.character.map.viml, constant.character.map.key.viml #96ad01 —
constant.character.map.special.viml #75a9d9 —
constant.language.tmux, constant.numeric.tmux #96ad01 —
entity.name.function.package-manager.dockerfile #f165bd —
keyword.operator.flag.dockerfile #ec9157 —
string.quoted.double.dockerfile, string.quoted.single.dockerfile #96ad01 —
constant.character.escape.dockerfile #25b7b8 —
entity.name.type.base-image.dockerfile, entity.name.image.dockerfile #aea6e1 —
punctuation.definition.separator.diff #dfc5c5 —
markup.deleted.diff, punctuation.definition.deleted.diff #f165bd —
meta.diff.range.context, punctuation.definition.range.diff #f165bd —
meta.diff.header.from-file #ec9157 —
markup.inserted.diff, punctuation.definition.inserted.diff #96ad01 —
markup.changed.diff, punctuation.definition.changed.diff #75a9d9 —
punctuation.definition.from-file.diff #aea6e1 —
entity.name.section.group-title.ini, punctuation.definition.entity.ini #f165bd —
punctuation.separator.key-value.ini #f165bd —
string.quoted.double.ini, string.quoted.single.ini, punctuation.definition.string.begin.ini, punctuation.definition.string.end.ini #96ad01 —
keyword.other.definition.ini #25b7b8 —
support.function.aggregate.sql #ec9157 —
string.quoted.single.sql, punctuation.definition.string.end.sql, punctuation.definition.string.begin.sql, string.quoted.double.sql #96ad01 —
support.type.graphql #ec9157 —
variable.parameter.graphql #75a9d9 —
constant.character.enum.graphql #25b7b8 —
punctuation.support.type.property-name.begin.json, punctuation.support.type.property-name.end.json, punctuation.separator.dictionary.key-value.json, punctuation.definition.string.begin.json, punctuation.definition.string.end.json, punctuation.separator.dictionary.pair.json, punctuation.separator.array.json #dfc5c5 —
support.type.property-name.json #f165bd —
string.quoted.double.json #96ad01 —
punctuation.separator.key-value.mapping.yaml #dfc5c5 —
string.unquoted.plain.out.yaml, string.quoted.single.yaml, string.quoted.double.yaml, punctuation.definition.string.begin.yaml, punctuation.definition.string.end.yaml, string.unquoted.plain.in.yaml, string.unquoted.block.yaml #96ad01 —
punctuation.definition.anchor.yaml, punctuation.definition.block.sequence.item.yaml #25b7b8 —
string.quoted.single.basic.line.toml, string.quoted.single.literal.line.toml, punctuation.definition.keyValuePair.toml #96ad01 —
constant.other.boolean.toml #75a9d9 —
entity.other.attribute-name.table.toml, punctuation.definition.table.toml, entity.other.attribute-name.table.array.toml, punctuation.definition.table.array.toml #aea6e1 —
comment, string.comment, punctuation.definition.comment #dfc5c5 —
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*
Button.tsx
fetchUser
31
~/my-project
$
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 } !` ;
}
Soft Material | Coding Theme