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 #FF79C6 activityBar.background #242530 activityBar.border #20212b activityBar.foreground #F8F8F2 activityBar.inactiveForeground #6272A4 activityBarBadge.background #FF79C6 tokenColors TextMate scopes and font styles (syntax highlighting rules).
scope foreground fontStyle emphasis — italic strong — bold header #BD93F9 — source #F8F8F2 — meta.diff, meta.diff.header #6272A4 —
Shiki preview TypeScript sample highlighted with this variant's colors and tokenColors.
Dracula Midnight — Dracula Midnight
activityBarBadge.foreground
#F8F8F2
badge.background #44475A
badge.foreground #F8F8F2
banner.background #20212b
banner.foreground #F8F8F2
banner.iconForeground #FF5555
breadcrumb.activeSelectionForeground #242530
breadcrumb.background #242530
breadcrumb.focusForeground #242530
breadcrumb.foreground #6272A4
breadcrumbPicker.background #20212b
button.background #44475A
button.foreground #F8F8F2
button.secondaryBackground #FF5555
button.secondaryForeground #F8F8F2
button.secondaryHoverBackground #FF6E6E
charts.blue #8BE9FD
charts.foreground #F8F8F2
charts.green #50FA7B
charts.lines #F8F8F2
charts.orange #FFB86C
charts.purple #BD93F9
charts.red #FF5555
charts.yellow #F1FA8C
checkbox.background #333545
checkbox.border #20212b
checkbox.foreground #F8F8F2
debugToolBar.background #242530
descriptionForeground #F8F8F2
diffEditor.diagonalFill #494c62
diffEditor.insertedTextBackground #50fa7b20
diffEditor.removedTextBackground #ff55554d
dropdown.background #282A36
dropdown.border #20212b
dropdown.foreground #F8F8F2
dropdown.listBackground #282A36
editor.background #242530
editor.findMatchBackground #ff79c680
editor.findMatchHighlightBackground #bd93f91a
editor.findRangeHighlightBackground #44475A75
editor.foldBackground #242530
editor.foreground #F8F8F2
editor.hoverHighlightBackground #8be9fd33
editor.lineHighlightBorder #44475A
editor.rangeHighlightBackground #bd93f926
editor.selectionBackground #44475A
editor.selectionHighlightBackground #494c62
editor.snippetFinalTabstopHighlightBackground #282A36
editor.snippetFinalTabstopHighlightBorder #50FA7B
editor.snippetTabstopHighlightBackground #282A36
editor.snippetTabstopHighlightBorder #6272A4
editor.wordHighlightBackground #8be9fd33
editor.wordHighlightStrongBackground #50fa7b33
editorBracketHighlight.foreground1 #F8F8F2
editorBracketHighlight.foreground2 #FF79C6
editorBracketHighlight.foreground3 #8BE9FD
editorBracketHighlight.foreground4 #50FA7B
editorBracketHighlight.foreground5 #BD93F9
editorBracketHighlight.foreground6 #FFB86C
editorBracketHighlight.unexpectedBracket.foreground #FF5555
editorBracketMatch.background #44475A
editorBracketMatch.border #00000000
editorCodeLens.foreground #6272A4
editorCursor.foreground #8BE9FD
editorError.foreground #FF5555
editorGroup.border #20212b
editorGroup.dropBackground #333545
editorGroupHeader.tabsBackground #242530
editorGroupHeader.tabsBorder #20212b
editorGutter.addedBackground #50FA7B
editorGutter.deletedBackground #FF5555
editorGutter.modifiedBackground #8BE9FD
editorHoverWidget.background #282A36
editorHoverWidget.border #6272A4
editorIndentGuide.activeBackground #ffffff26
editorIndentGuide.background #FFFFFF1A
editorLightBulb.foreground #F1FA8C
editorLightBulbAutoFix.foreground #8BE9FD
editorLineNumber.activeForeground #FFFFFF
editorLineNumber.foreground #6272A4
editorLink.activeForeground #8BE9FD
editorMarkerNavigation.background #242530
editorOverviewRuler.addedForeground #50fa7bcc
editorOverviewRuler.border #00000000
editorOverviewRuler.currentContentForeground #50FA7B
editorOverviewRuler.deletedForeground #ff5555cc
editorOverviewRuler.errorForeground #ff5555cc
editorOverviewRuler.incomingContentForeground #BD93F9
editorOverviewRuler.infoForeground #8be9fdcc
editorOverviewRuler.modifiedForeground #8be9fdcc
editorOverviewRuler.selectionHighlightForeground #FFB86C
editorOverviewRuler.warningForeground #ffb86ccc
editorOverviewRuler.wordHighlightForeground #8BE9FD
editorOverviewRuler.wordHighlightStrongForeground #50FA7B
editorRuler.foreground #FFFFFF1A
editorSuggestWidget.background #242530
editorSuggestWidget.border #20212b
editorSuggestWidget.foreground #F8F8F2
editorSuggestWidget.selectedBackground #44475A
editorWarning.foreground #8BE9FD
editorWhitespace.foreground #FFFFFF1A
editorWidget.background #282A36
editorWidget.border #BD93F9
errorForeground #FF5555
extensionButton.prominentBackground #bd93f9cc
extensionButton.prominentForeground #F8F8F2
extensionButton.prominentHoverBackground #BD93F9
focusBorder #bd93f999
foreground #6272A4
gitDecoration.addedResourceForeground #F1FA8C
gitDecoration.conflictingResourceForeground #FFB86C
gitDecoration.deletedResourceForeground #FF5555
gitDecoration.ignoredResourceForeground #bd93f966
gitDecoration.modifiedResourceForeground #8BE9FD
gitDecoration.submoduleResourceForeground #FF79C6
gitDecoration.untrackedResourceForeground #50FA7B
icon.foreground #F8F8F2
input.background #333545
input.border #20212b
input.foreground #F8F8F2
input.placeholderForeground #f8f8f280
inputOption.activeBorder #BD93F9
inputValidation.errorBorder #FF5555
inputValidation.infoBorder #FF79C6
inputValidation.warningBorder #FFB86C
list.activeSelectionBackground #333545
list.activeSelectionForeground #8BE9FD
list.dropBackground #44475A
list.errorForeground #FF5555
list.focusBackground #333545
list.focusForeground #6272A4
list.highlightForeground #8BE9FD
list.hoverBackground #333545
list.hoverForeground #6272A4
list.inactiveSelectionBackground #333545
list.inactiveSelectionForeground #8BE9FD
list.warningForeground #FFB86C
listFilterWidget.background #333545
listFilterWidget.noMatchesOutline #FF5555
listFilterWidget.outline #494c62
merge.currentHeaderBackground #50fa7be6
merge.incomingHeaderBackground #bd93f9e6
notificationCenter.border #20212b
notificationCenterHeader.background #282A36
notificationCenterHeader.foreground #F8F8F2
notificationLink.foreground #8BE9FD
notifications.background #333545
notifications.border #242530
notifications.foreground #F8F8F2
notificationsErrorIcon.foreground #FF5555
notificationsInfoIcon.foreground #8BE9FD
notificationsWarningIcon.foreground #FFB86C
notificationToast.border #20212b
panel.background #242530
panel.border #20212b
panelTitle.activeBorder #BD93F9
panelTitle.activeForeground #F8F8F2
panelTitle.inactiveForeground #6272A4
peekView.border #20212b
peekViewEditor.background #242530
peekViewEditor.matchHighlightBackground #ff79c666
peekViewResult.background #242530
peekViewResult.fileForeground #F8F8F2
peekViewResult.lineForeground #F8F8F2
peekViewResult.matchHighlightBackground #ff79c666
peekViewResult.selectionBackground #44475A
peekViewResult.selectionForeground #F8F8F2
peekViewTitle.background #242530
peekViewTitleDescription.foreground #6272A4
peekViewTitleLabel.foreground #F8F8F2
pickerGroup.border #BD93F9
pickerGroup.foreground #8BE9FD
progressBar.background #FF79C6
sash.hoverBorder #FF79C6
scrollbar.shadow #00000000
scrollbarSlider.activeBackground #bd93f980
scrollbarSlider.background #bd93f94d
scrollbarSlider.hoverBackground #bd93f966
selection.background #bd93f980
settings.checkboxBackground #242530
settings.checkboxBorder #20212b
settings.checkboxForeground #F8F8F2
settings.dropdownBackground #242530
settings.dropdownBorder #20212b
settings.dropdownForeground #F8F8F2
settings.headerForeground #F8F8F2
settings.modifiedItemIndicator #FFB86C
settings.numberInputBackground #242530
settings.numberInputBorder #20212b
settings.numberInputForeground #F8F8F2
settings.textInputBackground #242530
settings.textInputBorder #20212b
settings.textInputForeground #F8F8F2
sideBar.background #242530
sideBar.border #20212b
sideBar.foreground #F8F8F2
sideBarSectionHeader.background #242530
sideBarSectionHeader.border #20212b
sideBarSectionHeader.foreground #F8F8F2
sideBarTitle.foreground #F8F8F2
statusBar.background #242530
statusBar.border #20212b
statusBar.debuggingBackground #FF5555
statusBar.debuggingForeground #20212b
statusBar.foreground #6272A4
statusBar.noFolderBackground #282A36
statusBar.noFolderForeground #bd93f999
statusBarItem.activeBackground #333545
statusBarItem.hoverBackground #282A36
statusBarItem.prominentBackground #FF5555
statusBarItem.prominentForeground #F8F8F2
statusBarItem.prominentHoverBackground #FF6E6E
statusBarItem.remoteBackground #6272A4
statusBarItem.remoteForeground #20212b
tab.activeBackground #242530
tab.activeBorder #282A36
tab.activeBorderTop #FF79C6
tab.activeForeground #F8F8F2
tab.activeModifiedBorder #F1FA8C
tab.border #20212b
tab.inactiveBackground #242530
tab.inactiveForeground #6272A4
tab.unfocusedActiveBorder #282A36
terminal.ansiBlack #21222C
terminal.ansiBlue #BD93F9
terminal.ansiBrightBlack #6272A4
terminal.ansiBrightBlue #D6ACFF
terminal.ansiBrightCyan #A4FFFF
terminal.ansiBrightGreen #69FF94
terminal.ansiBrightMagenta #FF92DF
terminal.ansiBrightRed #FF6E6E
terminal.ansiBrightWhite #FFFFFF
terminal.ansiBrightYellow #FFFFA5
terminal.ansiCyan #8BE9FD
terminal.ansiGreen #50FA7B
terminal.ansiMagenta #FF79C6
terminal.ansiRed #FF5555
terminal.ansiWhite #F8F8F2
terminal.ansiYellow #F1FA8C
terminal.background #242530
terminal.foreground #F8F8F2
titleBar.activeBackground #242530
titleBar.activeForeground #F8F8F2
titleBar.border #20212b
titleBar.inactiveBackground #242530
titleBar.inactiveForeground #6272A4
toolbar.hoverBackground #333545
tree.indentGuidesStroke #494c62
tree.tableColumnsBorder #20212b
walkThrough.embeddedEditorBackground #242530
widget.shadow #00000030 invalid #FF5555 underline italic
invalid.deprecated #F8F8F2 underline italic
entity.name.filename #F1FA8C —
markup.underline — underline
markup.heading #BD93F9 bold
markup.italic #F1FA8C italic
beginning.punctuation.definition.list.markdown, beginning.punctuation.definition.quote.markdown, punctuation.definition.link.restructuredtext #8BE9FD —
markup.inline.raw, markup.raw.restructuredtext #50FA7B —
markup.underline.link, markup.underline.link.image #8BE9FD —
meta.link.reference.def.restructuredtext, punctuation.definition.directive.restructuredtext, string.other.link.description, string.other.link.title #FF79C6 —
entity.name.directive.restructuredtext, markup.quote #F1FA8C italic
meta.separator.markdown #6272A4 —
fenced_code.block.language, markup.raw.inner.restructuredtext, markup.fenced_code.block.markdown punctuation.definition.markdown #50FA7B —
punctuation.definition.constant.restructuredtext #BD93F9 —
markup.heading.markdown punctuation.definition.string.begin, markup.heading.markdown punctuation.definition.string.end #BD93F9 —
meta.paragraph.markdown punctuation.definition.string.begin, meta.paragraph.markdown punctuation.definition.string.end #F8F8F2 —
markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.begin, markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.end #F1FA8C —
entity.name.type.class, entity.name.class #8BE9FD normal
keyword.expressions-and-types.swift, keyword.other.this, variable.language, variable.language punctuation.definition.variable.php, variable.other.readwrite.instance.ruby, variable.parameter.function.language.special #BD93F9 italic
entity.other.inherited-class #8BE9FD italic
comment, punctuation.definition.comment, unused.comment, wildcard.comment #6272A4 —
comment keyword.codetag.notation, comment.block.documentation keyword, comment.block.documentation storage.type.class #FF79C6 —
comment.block.documentation entity.name.type #8BE9FD italic
comment.block.documentation entity.name.type punctuation.definition.bracket #8BE9FD —
comment.block.documentation variable #FFB86C italic
constant, variable.other.constant #BD93F9 —
constant.character.escape, constant.character.string.escape, constant.regexp #FF79C6 —
entity.other.attribute-name.parent-selector #FF79C6 —
entity.other.attribute-name #50FA7B italic
entity.name.function, meta.function-call.object, meta.function-call.php, meta.function-call.static, meta.method-call.java meta.method, meta.method.groovy, support.function.any-method.lua, keyword.operator.function.infix #50FA7B —
entity.name.variable.parameter, meta.at-rule.function variable, meta.at-rule.mixin variable, meta.function.arguments variable.other.php, meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql, variable.parameter #FFB86C italic
meta.decorator variable.other.readwrite, meta.decorator variable.other.property #50FA7B italic
meta.decorator variable.other.object #50FA7B —
keyword, punctuation.definition.keyword #FF79C6 —
keyword.control.new, keyword.operator.new — bold
support.function.magic, support.variable, variable.other.predefined #BD93F9 regular
support.function, support.type.property-name — regular
constant.other.symbol.hashkey punctuation.definition.constant.ruby, entity.other.attribute-name.placeholder punctuation, entity.other.attribute-name.pseudo-class punctuation, entity.other.attribute-name.pseudo-element punctuation, meta.group.double.toml, meta.group.toml, meta.object-binding-pattern-variable punctuation.destructuring, punctuation.colon.graphql, punctuation.definition.block.scalar.folded.yaml, punctuation.definition.block.scalar.literal.yaml, punctuation.definition.block.sequence.item.yaml, punctuation.definition.entity.other.inherited-class, punctuation.function.swift, punctuation.separator.dictionary.key-value, punctuation.separator.hash, punctuation.separator.inheritance, punctuation.separator.key-value, punctuation.separator.key-value.mapping.yaml, punctuation.separator.namespace, punctuation.separator.pointer-access, punctuation.separator.slice, string.unquoted.heredoc punctuation.definition.string, support.other.chomping-indicator.yaml, punctuation.separator.annotation #FF79C6 —
keyword.operator.other.powershell, keyword.other.statement-separator.powershell, meta.brace.round, meta.function-call punctuation, punctuation.definition.arguments.begin, punctuation.definition.arguments.end, punctuation.definition.entity.begin, punctuation.definition.entity.end, punctuation.definition.tag.cs, punctuation.definition.type.begin, punctuation.definition.type.end, punctuation.section.scope.begin, punctuation.section.scope.end, storage.type.generic.java, string.template meta.brace, string.template punctuation.accessor #F8F8F2 —
meta.string-contents.quoted.double punctuation.definition.variable, punctuation.definition.interpolation.begin, punctuation.definition.interpolation.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded.begin, punctuation.section.embedded.coffee, punctuation.section.embedded.end, punctuation.section.embedded.end source.php, punctuation.section.embedded.end source.ruby, punctuation.definition.variable.makefile #FF79C6 —
entity.name.function.target.makefile, entity.name.section.toml, entity.name.tag.yaml, variable.other.key.toml #8BE9FD —
constant.other.date, constant.other.timestamp #FFB86C —
variable.other.alias.yaml #50FA7B italic underline
storage, meta.implementation storage.type.objc, meta.interface-or-protocol storage.type.objc, source.groovy storage.type.def #FF79C6 regular
entity.name.type, keyword.primitive-datatypes.swift, keyword.type.cs, meta.protocol-list.objc, meta.return-type.objc, source.go storage.type, source.groovy storage.type, source.java storage.type, source.powershell entity.other.attribute-name, storage.class.std.rust, storage.type.attribute.swift, storage.type.c, storage.type.core.rust, storage.type.cs, storage.type.groovy, storage.type.objc, storage.type.php, storage.type.haskell, storage.type.ocaml #8BE9FD italic
entity.name.type.type-parameter, meta.indexer.mappedtype.declaration entity.name.type, meta.type.parameters entity.name.type #FFB86C —
string.regexp, constant.other.character-class.set.regexp, constant.character.escape.backslash.regexp #F1FA8C —
punctuation.definition.group.capture.regexp #FF79C6 —
string.regexp punctuation.definition.string.begin, string.regexp punctuation.definition.string.end #FF5555 —
punctuation.definition.character-class.regexp #8BE9FD —
punctuation.definition.group.regexp #FFB86C —
punctuation.definition.group.assertion.regexp, keyword.operator.negation.regexp #FF5555 —
meta.assertion.look-ahead.regexp #50FA7B —
punctuation.definition.string.begin, punctuation.definition.string.end #E9F284 —
punctuation.support.type.property-name.begin, punctuation.support.type.property-name.end #8BE9FE —
string.quoted.docstring.multi, string.quoted.docstring.multi.python punctuation.definition.string.begin, string.quoted.docstring.multi.python punctuation.definition.string.end, string.quoted.docstring.multi.python constant.character.escape #6272A4 —
variable, constant.other.key.perl, support.variable.property, variable.other.constant.js, variable.other.constant.ts, variable.other.constant.tsx #F8F8F2 —
meta.import variable.other.readwrite, meta.object-binding-pattern-variable variable.object.property, meta.variable.assignment.destructured.object.coffee variable #FFB86C italic
meta.import variable.other.readwrite.alias, meta.export variable.other.readwrite.alias, meta.variable.assignment.destructured.object.coffee variable variable #F8F8F2 normal
meta.selectionset.graphql variable #F1FA8C —
meta.selectionset.graphql meta.arguments variable #F8F8F2 —
entity.name.fragment.graphql, variable.fragment.graphql #8BE9FD —
constant.other.symbol.hashkey.ruby, keyword.operator.dereference.java, keyword.operator.navigation.groovy, meta.scope.for-loop.shell punctuation.definition.string.begin, meta.scope.for-loop.shell punctuation.definition.string.end, meta.scope.for-loop.shell string, storage.modifier.import, punctuation.section.embedded.begin.tsx, punctuation.section.embedded.end.tsx, punctuation.section.embedded.begin.jsx, punctuation.section.embedded.end.jsx, punctuation.separator.list.comma.css, constant.language.empty-list.haskell #F8F8F2 —
source.shell variable.other #BD93F9 —
support.constant #BD93F9 normal
meta.scope.prerequisites.makefile #F1FA8C —
meta.attribute-selector.scss #F1FA8C —
punctuation.definition.attribute-selector.end.bracket.square.scss, punctuation.definition.attribute-selector.begin.bracket.square.scss #F8F8F2 —
meta.preprocessor.haskell #6272A4 —
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...
~/my-project
main*
Button.tsx
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 } !` ;
}
Dracula Midnight | Coding Theme