Skip to main content
Home Theme VS Code Ultraviolet VSCode Theme inspired by the Slack Ultraviolet Theme.
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.activeBackground #ffffff00 activityBar.background #000815 activityBar.border #00000000 activityBar.foreground #ffffff activityBar.inactiveForeground #ffffff66 activityBarBadge.background #6715eb 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 #9cdcfe — variable.other.generic-type.haskell #fc60a1 — storage.type.haskell #fb5474 — support.variable.magic.python
Shiki preview TypeScript sample highlighted with this variant's colors and tokenColors.
Ultraviolet — Ultraviolet
activityBarBadge.foreground #ffffff
badge.background #4d4d4d
badge.foreground #ffffff
breadcrumb.activeSelectionForeground #e0e0e0
breadcrumb.background #030c1b
breadcrumb.focusForeground #e0e0e0
breadcrumb.foreground #cccccccc
button.background #0e639c
button.foreground #ffffff
button.hoverBackground #1177bb
button.secondaryBackground #3a3d41
button.secondaryForeground #ffffff
button.secondaryHoverBackground #45494e
checkbox.background #3c3c3c
checkbox.border #00000000
checkbox.foreground #cccccc
debugExceptionWidget.background #00060f
debugExceptionWidget.border #47474700
debugToolBar.background #00060f
debugToolBar.border #47474700
diffEditor.border #303132
diffEditor.insertedTextBackground #9bb95533
diffEditor.removedTextBackground #ff000033
dropdown.background #3c3c3c
dropdown.border #00000000
dropdown.foreground #cccccc
editor.background #030c1b
editor.findMatchBackground #515c6a
editor.findMatchBorder #74879f
editor.findMatchHighlightBackground #ea5c0055
editor.findMatchHighlightBorder #ffffff00
editor.findRangeHighlightBackground #3a3d4166
editor.findRangeHighlightBorder #ffffff00
editor.foldBackground #264f784d
editor.foreground #fbe179
editor.hoverHighlightBackground #264f7840
editor.inactiveSelectionBackground #3a3d41
editor.lineHighlightBackground #ffffff0A
editor.lineHighlightBorder #282828
editor.rangeHighlightBackground #ffffff0b
editor.rangeHighlightBorder #ffffff00
editor.selectionBackground #264f78
editor.selectionHighlightBackground #add6ff26
editor.selectionHighlightBorder #495F77
editor.wordHighlightBackground #575757b8
editor.wordHighlightStrongBackground #004972b8
editorBracketMatch.background #0064001a
editorBracketMatch.border #888888
editorCodeLens.foreground #999999
editorCursor.background #000000
editorCursor.foreground #aeafad
editorError.background #B73A3400
editorError.border #ffffff00
editorError.foreground #f48771
editorGroup.border #44444400
editorGroup.emptyBackground #030c1b
editorGroupHeader.tabsBackground #000815
editorGutter.addedBackground #587c0c
editorGutter.background #030c1b
editorGutter.commentRangeForeground #a179fb
editorGutter.deletedBackground #94151b
editorGutter.foldingControlForeground #a179fb
editorGutter.modifiedBackground #0c7d9d
editorHoverWidget.background #00060f
editorHoverWidget.border #45454500
editorHoverWidget.foreground #cccccc
editorIndentGuide.activeBackground #707070
editorIndentGuide.background #404040
editorInfo.background #4490BF00
editorInfo.border #4490BF00
editorInfo.foreground #75beff
editorLineNumber.activeForeground #a179fb
editorLineNumber.foreground #d4c1ff62
editorLink.activeForeground #4e94ce
editorMarkerNavigation.background #00060f
editorMarkerNavigationError.background #f48771
editorMarkerNavigationInfo.background #75beff
editorMarkerNavigationWarning.background #cca700
editorOverviewRuler.background #25252500
editorOverviewRuler.border #7f7f7f4d
editorRuler.foreground #5a5a5a
editorSuggestWidget.background #00060f
editorSuggestWidget.border #45454500
editorSuggestWidget.foreground #d4d4d4
editorSuggestWidget.highlightForeground #0097fb
editorSuggestWidget.selectedBackground #062f4a
editorWarning.background #A9904000
editorWarning.border #ffffff00
editorWarning.foreground #cca700
editorWhitespace.foreground #e3e4e229
editorWidget.background #00060f
editorWidget.foreground #cccccc
editorWidget.resizeBorder #5f5f5f00
focusBorder #aa85e634
foreground #cccccc
gitDecoration.addedResourceForeground #81b88b
gitDecoration.conflictingResourceForeground #6c6cc4
gitDecoration.deletedResourceForeground #c74e39
gitDecoration.ignoredResourceForeground #8c8c8c
gitDecoration.modifiedResourceForeground #e2c08d
gitDecoration.stageDeletedResourceForeground #c74e39
gitDecoration.stageModifiedResourceForeground #e2c08d
gitDecoration.submoduleResourceForeground #8db9e2
gitDecoration.untrackedResourceForeground #73c991
icon.foreground #cccccc
input.background #3c3c3c
input.border #00000000
input.foreground #cccccc
input.placeholderForeground #a6a6a6
inputOption.activeBackground #6715eb
inputOption.activeBorder #007acc00
inputOption.activeForeground #ffffff
list.activeSelectionBackground #094771
list.activeSelectionForeground #ffffff
list.dropBackground #00050d
list.focusBackground #062f4a
list.focusForeground #cccccc
list.highlightForeground #0097fb
list.hoverBackground #09477160
list.hoverForeground #cccccc
list.inactiveSelectionBackground #6715eb
list.inactiveSelectionForeground #cccccc
listFilterWidget.background #653723
listFilterWidget.noMatchesOutline #be1100
listFilterWidget.outline #00000000
menu.background #00060f
menu.border #00000000
menu.foreground #cccccc
menu.selectionBackground #094771
menu.selectionBorder #00000000
menu.selectionForeground #ffffff
menu.separatorBackground #bbbbbb24
menubar.selectionBackground #ffffff1a
menubar.selectionForeground #cccccc
merge.commonContentBackground #282828
merge.commonHeaderBackground #383838
merge.currentContentBackground #27403B
merge.currentHeaderBackground #367366
merge.incomingContentBackground #28384B
merge.incomingHeaderBackground #395F8F
minimap.background #030c1b
minimap.errorHighlight #f48771
minimap.findMatchHighlight #515c6a
minimap.selectionHighlight #264f78
minimap.warningHighlight #cca700
minimapGutter.addedBackground #587c0c
minimapGutter.deletedBackground #94151b
minimapGutter.modifiedBackground #0c7d9d
notificationCenter.border #474747
notificationCenterHeader.background #303031
notificationCenterHeader.foreground #cccccc
notifications.background #252526
notifications.border #303031
notifications.foreground #cccccc
notificationsErrorIcon.foreground #f48771
notificationsInfoIcon.foreground #75beff
notificationsWarningIcon.foreground #cca700
notificationToast.border #474747
panel.background #000815
panel.border #80808059
panelSection.border #80808059
panelTitle.activeBorder #e7e7e7
panelTitle.activeForeground #e7e7e7
panelTitle.inactiveForeground #e7e7e799
peekView.border #007acc
peekViewEditor.background #001f33
peekViewEditor.matchHighlightBackground #ff8f0099
peekViewEditor.matchHighlightBorder #ee931e
peekViewEditorGutter.background #001f33
peekViewResult.background #252526
peekViewResult.fileForeground #ffffff
peekViewResult.lineForeground #bbbbbb
peekViewResult.matchHighlightBackground #ea5c004d
peekViewResult.selectionBackground #3399ff33
peekViewResult.selectionForeground #ffffff
peekViewTitle.background #1e1e1e
peekViewTitleDescription.foreground #ccccccb3
peekViewTitleLabel.foreground #ffffff
pickerGroup.border #3f3f4600
pickerGroup.foreground #3794ff
progressBar.background #6715eb
scrollbar.shadow #000000
scrollbarSlider.activeBackground #bfbfbf66
scrollbarSlider.background #00060f
scrollbarSlider.hoverBackground #00050d
selection.background #256aa7
settings.focusedRowBackground #ffffff07
settings.headerForeground #cccccc
sideBar.background #000815
sideBar.border #ff000000
sideBar.dropBackground #00050d
sideBar.foreground #cccccc
sideBarSectionHeader.background #00000000
sideBarSectionHeader.border #cccccc00
sideBarSectionHeader.foreground #cccccc
sideBarTitle.foreground #bbbbbb
statusBar.background #6715eb
statusBar.debuggingBackground #cc6633
statusBar.debuggingForeground #ffffff
statusBar.foreground #ffffff
statusBar.noFolderBackground #68217a
statusBar.noFolderForeground #ffffff
statusBarItem.activeBackground #FFFFFF25
statusBarItem.hoverBackground #ffffff1f
statusBarItem.remoteBackground #000308
statusBarItem.remoteForeground #ffffff
tab.activeBackground #00112a
tab.activeBorder #00000000
tab.activeBorderTop #00000000
tab.activeForeground #ffffff
tab.border #00000000
tab.inactiveBackground #000815
tab.inactiveForeground #ffffff80
terminal.ansiBlack #000000
terminal.ansiBlue #2472c8
terminal.ansiBrightBlack #666666
terminal.ansiBrightBlue #3b8eea
terminal.ansiBrightCyan #29b8db
terminal.ansiBrightGreen #23d18b
terminal.ansiBrightMagenta #d670d6
terminal.ansiBrightRed #f14c4c
terminal.ansiBrightWhite #e5e5e5
terminal.ansiBrightYellow #f5f543
terminal.ansiCyan #11a8cd
terminal.ansiGreen #0dbc79
terminal.ansiMagenta #bc3fbc
terminal.ansiRed #cd3131
terminal.ansiWhite #e5e5e5
terminal.ansiYellow #e5e510
terminal.border #80808059
terminal.foreground #cccccc
terminal.selectionBackground #ffffff40
terminalCursor.background #0087FF
terminalCursor.foreground #ffffff
textLink.foreground #3794ff
titleBar.activeBackground #000815
titleBar.activeForeground #cccccc
titleBar.border #00000000
titleBar.inactiveBackground #3c3c3c99
titleBar.inactiveForeground #cccccc99
tree.indentGuidesStroke #58585800
walkThrough.embeddedEditorBackground #00000050
widget.shadow #0000005c #9cdcfe
punctuation.separator.period.python,punctuation.separator.element.python,punctuation.parenthesis.begin.python,punctuation.parenthesis.end.python #fbe179 —
variable.parameter.function.language.special.self.python #66ffb4 —
storage.modifier.lifetime.rust #fbe179 —
support.function.std.rust #4d91fb —
entity.name.lifetime.rust #66ffb4 —
variable.language.rust #9cdcfe —
support.constant.edge #fc60a1 —
constant.other.character-class.regexp #9cdcfe —
keyword.operator.quantifier.regexp #fb5474 —
punctuation.definition.string.begin,punctuation.definition.string.end #d0cbeb —
variable.parameter.function #fbe179 —
comment markup.link #7f848e —
markup.changed.diff #66ffb4 —
meta.diff.header.from-file,meta.diff.header.to-file,punctuation.definition.from-file.diff,punctuation.definition.to-file.diff #4d91fb —
markup.inserted.diff #d0cbeb —
markup.deleted.diff #9cdcfe —
meta.function.c,meta.function.cpp #9cdcfe —
punctuation.section.block.begin.bracket.curly.cpp,punctuation.section.block.end.bracket.curly.cpp,punctuation.terminator.statement.c,punctuation.section.block.begin.bracket.curly.c,punctuation.section.block.end.bracket.curly.c,punctuation.section.parens.begin.bracket.round.c,punctuation.section.parens.end.bracket.round.c,punctuation.section.parameters.begin.bracket.round.c,punctuation.section.parameters.end.bracket.round.c #fbe179 —
punctuation.separator.key-value #fbe179 —
keyword.operator.expression.import #4d91fb —
support.constant.math #66ffb4 —
support.constant.property.math #fb5474 —
variable.other.constant #66ffb4 —
storage.type.annotation.java, storage.type.object.array.java #66ffb4 —
punctuation.section.block.begin.java,punctuation.section.block.end.java,punctuation.definition.method-parameters.begin.java,punctuation.definition.method-parameters.end.java,meta.method.identifier.java,punctuation.section.method.begin.java,punctuation.section.method.end.java,punctuation.terminator.java,punctuation.section.class.begin.java,punctuation.section.class.end.java,punctuation.section.inner-class.begin.java,punctuation.section.inner-class.end.java,meta.method-call.java,punctuation.section.class.begin.bracket.curly.java,punctuation.section.class.end.bracket.curly.java,punctuation.section.method.begin.bracket.curly.java,punctuation.section.method.end.bracket.curly.java,punctuation.separator.period.java,punctuation.bracket.angle.java,punctuation.definition.annotation.java,meta.method.body.java #fbe179 —
storage.modifier.import.java,storage.type.java,storage.type.generic.java #66ffb4 —
keyword.operator.instanceof.java #fc60a1 —
meta.definition.variable.name.java #9cdcfe —
keyword.operator.logical #c0c0c0 —
keyword.operator.bitwise #c0c0c0 —
keyword.operator.channel #c0c0c0 —
support.constant.property-value.scss,support.constant.property-value.css #fb5474 —
keyword.operator.css,keyword.operator.scss,keyword.operator.less #c0c0c0 —
support.constant.color.w3c-standard-color-name.css,support.constant.color.w3c-standard-color-name.scss #fb5474 —
punctuation.separator.list.comma.css #fbe179 —
support.constant.color.w3c-standard-color-name.css #fb5474 —
support.type.vendored.property-name.css #c0c0c0 —
support.module.node,support.type.object.module,support.module.node #66ffb4 —
entity.name.type.module #66ffb4 —
variable.other.readwrite,meta.object-literal.key,support.variable.property,support.variable.object.process,support.variable.object.node #9cdcfe —
support.constant.json #fb5474 —
keyword.operator.expression.instanceof, keyword.operator.new, keyword.operator.ternary, keyword.operator.optional, keyword.operator.expression.keyof #fc60a1 —
support.type.object.console #9cdcfe —
support.variable.property.process #fb5474 —
entity.name.function,support.function.console #4d91fb —
keyword.operator.misc.rust #fbe179 —
keyword.operator.sigil.rust #fc60a1 —
keyword.operator.delete #fc60a1 —
support.type.object.dom #c0c0c0 —
support.variable.dom,support.variable.property.dom #9cdcfe —
keyword.operator.arithmetic,keyword.operator.comparison,keyword.operator.decrement,keyword.operator.increment,keyword.operator.relational #c0c0c0 —
keyword.operator.assignment.c,keyword.operator.comparison.c,keyword.operator.c,keyword.operator.increment.c,keyword.operator.decrement.c,keyword.operator.bitwise.shift.c,keyword.operator.assignment.cpp,keyword.operator.comparison.cpp,keyword.operator.cpp,keyword.operator.increment.cpp,keyword.operator.decrement.cpp,keyword.operator.bitwise.shift.cpp #fc60a1 —
punctuation.separator.delimiter #fbe179 —
punctuation.separator.c,punctuation.separator.cpp #fc60a1 —
support.type.posix-reserved.c,support.type.posix-reserved.cpp #c0c0c0 —
keyword.operator.sizeof.c,keyword.operator.sizeof.cpp #fc60a1 —
variable.parameter.function.language.python #fb5474 —
support.type.python #c0c0c0 —
keyword.operator.logical.python #fc60a1 —
variable.parameter.function.python #fb5474 —
punctuation.definition.arguments.begin.python,punctuation.definition.arguments.end.python,punctuation.separator.arguments.python,punctuation.definition.list.begin.python,punctuation.definition.list.end.python #fbe179 —
meta.function-call.generic.python #4d91fb —
constant.character.format.placeholder.other.python #fb5474 —
keyword.operator.assignment.compound #fc60a1 —
keyword.operator.assignment.compound.js,keyword.operator.assignment.compound.ts #c0c0c0 —
entity.name.namespace #66ffb4 —
variable.language #66ffb4 —
token.variable.parameter.java #fbe179 —
import.storage.java #66ffb4 —
token.package.keyword #fc60a1 —
entity.name.function, meta.require, support.function.any-method, variable.function #4d91fb —
entity.name.type.namespace #66ffb4 —
support.class, entity.name.type.class #66ffb4 —
entity.name.class.identifier.namespace.type #66ffb4 —
entity.name.class, variable.other.class.js, variable.other.class.ts #66ffb4 —
variable.other.class.php #9cdcfe —
control.elements, keyword.operator.less #fb5474 —
keyword.other.special-method #4d91fb —
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 #fc60a1 —
token.storage.type.java #66ffb4 —
support.type.property-name #fbe179 —
support.constant.property-value #fbe179 —
support.constant.font-name #fb5474 —
entity.other.inherited-class #66ffb4 —
constant.other.symbol #c0c0c0 —
punctuation.definition.constant #fb5474 —
entity.other.attribute-name #fb5474 —
entity.other.attribute-name.id #4d91fb normal
entity.other.attribute-name.class.css #fb5474 normal
markup.heading punctuation.definition.heading, entity.name.section #4d91fb —
keyword.other.unit #9cdcfe —
markup.bold,todo.bold #fb5474 —
punctuation.definition.bold #66ffb4 —
markup.italic, punctuation.definition.italic,todo.emphasis #fc60a1 —
entity.name.section.markdown #9cdcfe —
punctuation.definition.heading.markdown #9cdcfe —
punctuation.definition.list.begin.markdown #9cdcfe —
markup.heading.setext #fbe179 —
punctuation.definition.bold.markdown #fb5474 —
markup.inline.raw.markdown #d0cbeb —
markup.inline.raw.string.markdown #d0cbeb —
punctuation.definition.list.markdown #9cdcfe —
punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.definition.metadata.markdown #9cdcfe —
beginning.punctuation.definition.list.markdown #9cdcfe —
punctuation.definition.metadata.markdown #9cdcfe —
markup.underline.link.markdown,markup.underline.link.image.markdown #fc60a1 —
string.other.link.title.markdown,string.other.link.description.markdown #4d91fb —
constant.character.escape #c0c0c0 —
punctuation.section.embedded, variable.interpolation #9cdcfe —
punctuation.section.embedded.begin,punctuation.section.embedded.end #fc60a1 —
invalid.illegal.bad-ampersand.html #fbe179 —
invalid.deprecated #ffffff —
invalid.unimplemented #ffffff —
source.json meta.structure.dictionary.json > string.quoted.json #9cdcfe —
source.json meta.structure.dictionary.json > string.quoted.json > punctuation.string #9cdcfe —
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 #d0cbeb —
source.json meta.structure.dictionary.json > constant.language.json,source.json meta.structure.array.json > constant.language.json #c0c0c0 —
support.type.property-name.json #9cdcfe —
support.type.property-name.json punctuation #9cdcfe —
text.html.laravel-blade source.php.embedded.line.html entity.name.tag.laravel-blade #fc60a1 —
text.html.laravel-blade source.php.embedded.line.html support.constant.laravel-blade #fc60a1 —
support.other.namespace.use.php,support.other.namespace.use-as.php,support.other.namespace.php,entity.other.alias.php,meta.interface.php #66ffb4 —
keyword.operator.error-control.php #fc60a1 —
keyword.operator.type.php #fc60a1 —
punctuation.section.array.begin.php #fbe179 —
punctuation.section.array.end.php #fbe179 —
invalid.illegal.non-null-typehinted.php #f44747 —
storage.type.php,meta.other.type.phpdoc.php,keyword.other.type.php,keyword.other.array.phpdoc.php #66ffb4 —
meta.function-call.php,meta.function-call.object.php,meta.function-call.static.php #4d91fb —
punctuation.definition.parameters.begin.bracket.round.php,punctuation.definition.parameters.end.bracket.round.php,punctuation.separator.delimiter.php,punctuation.section.scope.begin.php,punctuation.section.scope.end.php,punctuation.terminator.expression.php,punctuation.definition.arguments.begin.bracket.round.php,punctuation.definition.arguments.end.bracket.round.php,punctuation.definition.storage-type.begin.bracket.round.php,punctuation.definition.storage-type.end.bracket.round.php,punctuation.definition.array.begin.bracket.round.php,punctuation.definition.array.end.bracket.round.php,punctuation.definition.begin.bracket.round.php,punctuation.definition.end.bracket.round.php,punctuation.definition.begin.bracket.curly.php,punctuation.definition.end.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php,punctuation.definition.section.switch-block.start.bracket.curly.php,punctuation.definition.section.switch-block.begin.bracket.curly.php,punctuation.definition.section.switch-block.end.bracket.curly.php #fbe179 —
support.constant.core.rust #fb5474 —
support.constant.ext.php,support.constant.std.php,support.constant.core.php,support.constant.parser-token.php #fb5474 —
entity.name.goto-label.php,support.other.php #4d91fb —
keyword.operator.logical.php,keyword.operator.bitwise.php,keyword.operator.arithmetic.php #c0c0c0 —
keyword.operator.regexp.php #fc60a1 —
keyword.operator.comparison.php #c0c0c0 —
keyword.operator.heredoc.php,keyword.operator.nowdoc.php #fc60a1 —
meta.function.decorator.python #4d91fb —
support.token.decorator.python,meta.function.decorator.identifier.python #c0c0c0 —
function.parameter #fbe179 —
function.parameter.ruby, function.parameter.cs #fbe179 —
constant.language.symbol.ruby #c0c0c0 —
inline-color-decoration rgb-value #fb5474 —
support.type.primitive.ts,support.type.builtin.ts,support.type.primitive.tsx,support.type.builtin.tsx #66ffb4 —
block.scope.end,block.scope.begin #fbe179 —
entity.name.variable.local.cs #9cdcfe —
token.error-token #f44747 —
token.debug-token #fc60a1 —
punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded #fc60a1 —
meta.template.expression #fbe179 —
keyword.operator.module #fc60a1 —
support.type.type.flowtype #4d91fb —
support.type.primitive #66ffb4 —
meta.property.object #9cdcfe —
variable.parameter.function.js #9cdcfe —
keyword.other.template.begin #d0cbeb —
keyword.other.template.end #d0cbeb —
keyword.other.substitution.begin #d0cbeb —
keyword.other.substitution.end #d0cbeb —
keyword.operator.assignment #c0c0c0 —
keyword.operator.assignment.go #66ffb4 —
keyword.operator.arithmetic.go, keyword.operator.address.go #fc60a1 —
entity.name.package.go #66ffb4 —
support.type.prelude.elm #c0c0c0 —
support.constant.elm #fb5474 —
punctuation.quasi.element #fc60a1 —
constant.character.entity #9cdcfe —
entity.other.attribute-name.pseudo-element, entity.other.attribute-name.pseudo-class #c0c0c0 —
entity.global.clojure #66ffb4 —
meta.symbol.clojure #9cdcfe —
constant.keyword.clojure #c0c0c0 —
meta.arguments.coffee, variable.parameter.function.coffee #9cdcfe —
meta.scope.prerequisites.makefile #9cdcfe —
storage.modifier.import.groovy #66ffb4 —
meta.method.groovy #4d91fb —
meta.definition.variable.name.groovy #9cdcfe —
meta.definition.class.inherited.classes.groovy #d0cbeb —
support.variable.semantic.hlsl #66ffb4 —
support.type.texture.hlsl, support.type.sampler.hlsl, support.type.object.hlsl, support.type.object.rw.hlsl, support.type.fx.hlsl, support.type.object.hlsl #fc60a1 —
text.variable, text.bracketed #9cdcfe —
support.type.swift, support.type.vb.asp #66ffb4 —
entity.name.function.xi #66ffb4 —
entity.name.class.xi #c0c0c0 —
constant.character.character-class.regexp.xi #9cdcfe —
constant.regexp.xi #fc60a1 —
keyword.control.xi #c0c0c0 —
beginning.punctuation.definition.quote.markdown.xi #d0cbeb —
beginning.punctuation.definition.list.markdown.xi #7f848e —
constant.character.xi #4d91fb —
constant.other.color.rgb-value.xi #ffffff —
punctuation.definition.tag.xi #7f848e —
entity.name.label.cs, entity.name.scope-resolution.function.call, entity.name.scope-resolution.function.definition #66ffb4 —
entity.name.label.cs, markup.heading.setext.1.markdown, markup.heading.setext.2.markdown #9cdcfe —
meta.brace.square #fbe179 —
comment, punctuation.definition.comment #7f848e italic
markup.quote.markdown #7f848e —
punctuation.definition.block.sequence.item.yaml #fbe179 —
constant.language.symbol.elixir #c0c0c0 —
entity.other.attribute-name.js,entity.other.attribute-name.ts,entity.other.attribute-name.jsx,entity.other.attribute-name.tsx,variable.parameter,variable.language.super — italic
comment.line.double-slash,comment.block.documentation — italic
keyword.control.import.python,keyword.control.flow.python — 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
fetchUser 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*
Ultraviolet | Coding Theme Button.tsx
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 } !` ;
}