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 #070120 activityBar.border #032e0b activityBar.foreground #eeffff activityBarBadge.background #312fc9 activityBarBadge.foreground #ffffff badge.background #c9602f tokenColors TextMate scopes and font styles (syntax highlighting rules).
scope foreground fontStyle comment, punctuation.definition.comment #546E7A italic variable, string constant.other.placeholder #fff1ee — constant.other.color #ffffff — invalid, invalid.illegal #FF5370 — keyword, storage.type, storage.modifier
Shiki preview TypeScript sample highlighted with this variant's colors and tokenColors.
BlackPearl Theme — delicate theme
badge.foreground
#ffffff
breadcrumb.activeSelectionForeground #eeffff
breadcrumb.focusForeground #d5c5bf
breadcrumb.foreground #6c739a
breadcrumbPicker.background #292D3E
button.background #7e57c2cc
button.foreground #ffffffcc
button.hoverBackground #7e57c2
contrastBorder #282B3C
debugExceptionWidget.background #292D3E
debugExceptionWidget.border #7e57c2
debugToolBar.background #3e292b
diffEditor.insertedTextBackground #99b76d23
diffEditor.removedTextBackground #ef535033
dropdown.background #292D3E
dropdown.border #7e57c2
dropdown.foreground #ffffffcc
editor.background #080c2e
editor.findMatchBackground #7e57c25a
editor.findMatchHighlightBackground #2E3248
editor.foreground #BFC7D5
editor.hoverHighlightBackground #576bc25a
editor.inactiveSelectionBackground #7e57c25a
editor.lineHighlightBackground #0003
editor.rangeHighlightBackground #7e57c25a
editor.selectionBackground #7580B850
editor.selectionHighlightBackground #383D51
editor.wordHighlightBackground #32374D
editor.wordHighlightStrongBackground #2E3250
editorCodeLens.foreground #FFCA28
editorCursor.foreground #7e57c2
editorError.foreground #EF5350
editorGroup.background #32374C
editorGroup.border #2E3245
editorGroup.dropBackground #7e57c273
editorGroupHeader.noTabsBackground #32374C
editorGroupHeader.tabsBackground #31364a
editorGroupHeader.tabsBorder #262A39
editorGutter.addedBackground #9CCC65
editorGutter.deletedBackground #EF5350
editorGutter.modifiedBackground #e2b93d
editorHoverWidget.background #292D3E
editorHoverWidget.border #7e57c2
editorIndentGuide.background #4E557980
editorLineNumber.activeForeground #eeffff
editorLineNumber.foreground #7dc783
editorMarkerNavigation.background #31364a
editorMarkerNavigationError.background #EF5350
editorMarkerNavigationWarning.background #FFCA28
editorOverviewRuler.commonContentForeground #7e57c2
editorOverviewRuler.currentContentForeground #7e57c2
editorOverviewRuler.incomingContentForeground #7e57c2
editorSuggestWidget.background #2C3043
editorSuggestWidget.border #2B2F40
editorSuggestWidget.foreground #bfc7d5
editorSuggestWidget.highlightForeground #ffffff
editorSuggestWidget.selectedBackground #7e57c2
editorWarning.foreground #FFCA28
editorWidget.background #31364a
errorForeground #EF5350
extensionButton.prominentBackground #7e57c2cc
extensionButton.prominentForeground #ffffffcc
extensionButton.prominentHoverBackground #7e57c2
focusBorder #282B3C
foreground #ffffff
gitDecoration.conflictingResourceForeground #FFEB95CC
gitDecoration.deletedResourceForeground #e91c1890
gitDecoration.ignoredResourceForeground #69709890
gitDecoration.modifiedResourceForeground #043cf3e6
gitDecoration.untrackedResourceForeground #002280
input.background #414863
input.border #7e57c2
input.foreground #ffffffcc
input.placeholderForeground #ffffffcc
inputOption.activeBorder #ffffffcc
inputValidation.errorBackground #ef5350f2
inputValidation.errorBorder #EF5350
inputValidation.infoBackground #64b5f6f2
inputValidation.infoBorder #64B5F6
inputValidation.warningBackground #ffca28f2
inputValidation.warningBorder #FFCA28
list.activeSelectionBackground #7e57c2
list.activeSelectionForeground #ffffff
list.dropBackground #2E3245
list.focusBackground #0000002e
list.focusForeground #ffffff
list.highlightForeground #ffffff
list.hoverBackground #0000001a
list.hoverForeground #ffffff
list.inactiveSelectionBackground #929ac90d
list.inactiveSelectionForeground #929ac9
merge.currentHeaderBackground #7e57c25a
merge.incomingHeaderBackground #7e57c25a
notificationLink.foreground #80CBC4
notifications.background #292D3E
notifications.foreground #ffffffcc
panel.background #080c2e
panel.border #282B3C
panelTitle.activeBorder #d8e616
panelTitle.activeForeground #eeffff
panelTitle.inactiveForeground #bfc7d580
peekView.border #7e57c2
peekViewEditor.background #080c2e
peekViewEditor.matchHighlightBackground #7e57c25a
peekViewResult.background #2E3245
peekViewResult.fileForeground #eeffff
peekViewResult.lineForeground #eeffff
peekViewResult.matchHighlightBackground #7e57c25a
peekViewResult.selectionBackground #2E3250
peekViewResult.selectionForeground #eeffff
peekViewTitle.background #292D3E
peekViewTitleDescription.foreground #697098
peekViewTitleLabel.foreground #eeffff
pickerGroup.border #2E3245
pickerGroup.foreground #4ef75c
progress.background #7e57c2
scrollbar.shadow #292D3E00
scrollbarSlider.activeBackground #694CA4cc
scrollbarSlider.background #694CA466
scrollbarSlider.hoverBackground #694CA4cc
selection.background #3C435E
sideBar.background #070225
sideBar.border #282B3C
sideBar.foreground #6ad17b
sideBarSectionHeader.background #292D3E
sideBarSectionHeader.foreground #eeffff
sideBarTitle.foreground #eeffff
statusBar.background #774a0f
statusBar.border #262A39
statusBar.debuggingBackground #202431
statusBar.debuggingBorder #1F2330
statusBar.foreground #ffffff
statusBar.noFolderBackground #292D3E
statusBar.noFolderBorder #25293A
statusBarItem.activeBackground #202431
statusBarItem.hoverBackground #202431
statusBarItem.prominentBackground #202431
statusBarItem.prominentHoverBackground #202431
tab.activeBackground #d3e90e
tab.activeBorder #392b26
tab.activeForeground #000000
tab.border #272B3B
tab.inactiveBackground #022502
tab.inactiveForeground #929ac9
tab.unfocusedActiveBorder #262A39
terminal.ansiBlack #676E95
terminal.ansiBlue #82AAFF
terminal.ansiBrightBlack #676E95
terminal.ansiBrightBlue #82AAFF
terminal.ansiBrightCyan #89DDFF
terminal.ansiBrightGreen #C3E88D
terminal.ansiBrightMagenta #C792EA
terminal.ansiBrightRed #ff5572
terminal.ansiBrightWhite #ffffff
terminal.ansiBrightYellow #FFCB6B
terminal.ansiCyan #89DDFF
terminal.ansiGreen #09be09
terminal.ansiMagenta #C792EA
terminal.ansiRed #ff5572
terminal.ansiWhite #ffffff
terminal.ansiYellow #FFCB6B
titleBar.activeBackground #292d3e
titleBar.activeForeground #eeefff
titleBar.border #30364c
titleBar.inactiveBackground #30364c
walkThrough.embeddedEditorBackground #232635
widget.shadow #232635 keyword.control, constant.other.color, punctuation, meta.tag, punctuation.definition.tag, punctuation.separator.inheritance.php, punctuation.definition.tag.html, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, punctuation.section.embedded, keyword.other.template, keyword.other.substitution #89DDFF —
entity.name.tag, meta.tag.sgml, markup.deleted.git_gutter #57c271 —
entity.name.function, meta.function-call, variable.function, support.function, keyword.other.special-method #909458 —
keyword.other.special-method.dockerfile #d35e5e —
source.dockerfile #cecb21 —
support.function.builtin.python, meta.function-call.python #d33f3f —
string.quoted.single.python #a4b39f —
meta.block variable.other #869b8b —
support.other.variable, string.other.link #f07178 —
constant.numeric, constant.language, support.constant, constant.character, constant.escape, variable.parameter, keyword.other.unit, keyword.other #9dddb2 —
string, constant.other.symbol, constant.other.key, entity.other.inherited-class, markup.heading, markup.inserted.git_gutter, meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js #8daae8 —
entity.name, support.type, support.class, support.orther.namespace.use.php, meta.use.php, support.other.namespace.php, markup.changed.git_gutter, support.type.sys-types #FFCB6B —
source.css support.type.property-name, source.sass support.type.property-name, source.scss support.type.property-name, source.less support.type.property-name, source.stylus support.type.property-name, source.postcss support.type.property-name #B2CCD6 —
entity.name.module.js, variable.import.parameter.js, variable.other.class.js #FF5370 —
variable.language #88eea6 italic
entity.name.method.js #82AAFF italic
meta.class-method.js entity.name.function.js, variable.function.constructor #82AAFF —
entity.other.attribute-name #409cb3 —
text.html.basic entity.other.attribute-name.html, text.html.basic entity.other.attribute-name #FFCB6B italic
entity.other.attribute-name.class #FFCB6B —
source.sass keyword.control #82AAFF —
constant.character.escape #89DDFF —
*url*, *link*, *uri* — underline
tag.decorator.js entity.name.tag.js, tag.decorator.js punctuation.definition.tag.js #82AAFF italic
source.js constant.other.object.key.js string.unquoted.label.js #FF5370 italic
source.json meta.structure.dictionary.json support.type.property-name.json #C792EA —
source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json #FFCB6B —
source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json #F78C6C —
source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json #FF5370 —
source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json #C17E70 —
source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json #82AAFF —
source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json #f07178 —
source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json #C792EA —
source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json #C3E88D —
text.html.markdown, punctuation.definition.list_item.markdown #EEFFFF —
text.html.markdown markup.inline.raw.markdown #C792EA —
text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown #65737E —
markdown.heading, markup.heading | markup.heading entity.name, markup.heading.markdown punctuation.definition.heading.markdown #C3E88D —
markup.italic #f07178 italic
markup.bold, markup.bold string #f07178 bold
markup.bold markup.italic, markup.italic markup.bold, markup.quote markup.bold, markup.bold markup.italic string, markup.italic markup.bold string, markup.quote markup.bold string #f07178 bold
markup.underline #F78C6C underline
markup.quote punctuation.definition.blockquote.markdown #65737E —
string.other.link.title.markdown #82AAFF —
string.other.link.description.title.markdown #C792EA —
constant.other.reference.link.markdown #FFCB6B —
markup.raw.block.fenced.markdown #00000050 —
punctuation.definition.fenced.markdown #00000050 —
markup.raw.block.fenced.markdown, variable.language.fenced.markdown, punctuation.section.class.end #EEFFFF —
variable.language.fenced.markdown #65737E —
meta.separator #65737E bold
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*
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 } ! ` ;
}
BlackPearl Theme | Coding Theme