JetBrains Dark (New) Theme
Publisher: EliasNDThemes in package: 3
A faithful port of the JetBrains Dark Theme
A faithful port of the JetBrains Dark Theme
Full workbench mockup using this variant's colors and tokenColors.
Loading...
Workbench UI color keys from the theme JSON colors map.
TextMate scopes and font styles (syntax highlighting rules).
| scope | foreground | fontStyle |
|---|---|---|
| entity.name.type.class | #16BAAC | — |
| constant.other.caps.python | #C77DBB | — |
| storage.type.string.python | #CF8E6D | — |
| meta.attribute.directive.vue entity.other.attribute-name.html.vue, meta.attribute.directive.vue punctuation.attribute-shorthand.event.html.vue, meta.attribute.directive.vue punctuation.attribute-shorthand.bind.html.vue, punctuation.attribute-shorthand.slot.html.vue | #CF8E6D | — |
| entity.name.type.class | #16BAAC | — |
| constant.other.caps.python | #C77DBB | — |
| storage.type.string.python | #CF8E6D | — |
| meta.attribute.directive.vue entity.other.attribute-name.html.vue, meta.attribute.directive.vue punctuation.attribute-shorthand.event.html.vue, meta.attribute.directive.vue punctuation.attribute-shorthand.bind.html.vue, punctuation.attribute-shorthand.slot.html.vue | #CF8E6D | — |
| entity.name.type.class | #16BAAC | — |
| constant.other.caps.python | #C77DBB | — |
| storage.type.string.python | #CF8E6D | — |
| meta.attribute.directive.vue entity.other.attribute-name.html.vue, meta.attribute.directive.vue punctuation.attribute-shorthand.event.html.vue, meta.attribute.directive.vue punctuation.attribute-shorthand.bind.html.vue, punctuation.attribute-shorthand.slot.html.vue | #CF8E6D | — |
| emphasis | — | italic |
| strong | — | bold |
| header | #000080 | — |
| invalid | #FA6675 | — |
| text | #BCBEC4 | — |
| source | #BCBEC4 | — |
| comment, punctuation.definition.comment | #7A7E85 | — |
| string.quoted.double, string.quoted.single, punctuation.definition.string.begin, punctuation.definition.string.end | #6AAB73 | — |
| variable.other.readwrite | #BCBEC4 | — |
| keyword | #CF8E6D | — |
| keyword.operator.flow | #CF8E6D | — |
| keyword.operator | #BCBEC4 | — |
| keyword.operator.logical | #BCBEC4 | — |
| storage.type.function | #CF8E6D | — |
| constant.character | #CF8E6D | — |
| entity.name.function.definition | #56A8F5 | — |
| meta.definition.function | #56A8F5 | — |
| entity.name.function | #56A8F5 | — |
| support.function | #56A8F5 | — |
| constant.language | #CF8E6D | — |
| constant.other.caps | #C77DBB | — |
| constant.numeric, storage.type.numeric.bigint, keyword.operator.plus.exponent, keyword.operator.minus.exponent | #2AACB8 | — |
| constant.character.escape | #CF8E6D | — |
| variable.object.property | #C77DBB | — |
| punctuation.decorator, punctuation.definition.decorator, entity.name.function.decorator | #B3AE60 | — |
| comment.block.documentation, punctuation.definition.comment.begin.documentation, punctuation.definition.comment.end.documentation, comment.block.documentation punctuation.definition.comment, comment.block.javadoc.java, comment.block.javadoc.java punctuation.definition.comment.java | #5F826B | italic |
| comment.block.documentation storage.type.class, comment.block.documentation punctuation.definition.block.tag, keyword.other.documentation.javadoc.java | #67A37C | — |
| comment.block.documentation variable.other, comment.block.documentation variable.parameter | #ABADB3 | — |
| variable.other.jsdoc, entity.name.type.instance.jsdoc | #ABADB3 | — |
| support.type.property-name.json, punctuation.support.type.property-name.begin.json, punctuation.support.type.property-name.end.json | #C77DBB | — |
| variable.other.anchor.yaml, variable.other.alias.yaml, punctuation.definition.anchor.yaml, punctuation.definition.alias.yaml | #E8BF6A | — |
| keyword.other.definition.ini, punctuation.separator.key-value.ini | #BCBEBC | — |
| source.ini | #6AAB73 | — |
| entity.name.section.group-title.ini, entity.name.section.group-title.ini punctuation.definition.entity.ini | #CF8E6D | — |
| entity.name.tag, punctuation.definition.tag.begin, punctuation.definition.tag.end, punctuation.definition.tag.xml, keyword.other.doctype.xml | #D5B778 | — |
| entity.other.attribute-name.html, entity.other.attribute-name.tsx | #BABABA | — |
| punctuation.separator.key-value.html, meta.tag.xml, meta.tag.preprocessor.xml | #6AAB73 | — |
| text.xml entity.other.attribute-name | #BCBEC4 | — |
| text.html constant.character.entity, text.xml constant.character.entity.xml, punctuation.definition.entity.html, punctuation.definition.constant.xml | #56A8F5 | — |
| meta.tag.custom.start.html entity.name.tag.html, meta.tag.custom.end.html entity.name.tag.html | #2FBAA3 | — |
| entity.other.attribute-name, support.type.map.key.scss | #D5B778 | — |
| source.css support.function, source.scss support.function, source.less support.function, entity.name.function.scss | #D5B778 | — |
| variable.argument.css | #D5B778 | — |
| keyword.other.unit.percentage | #BCBEC4 | — |
| support.type.property-name | #BABABA | — |
| constant.character.escape.scss, source.css keyword.other.unit, source.scss keyword.other.unit, source.less keyword.other.unit, keyword.operator.gradient, source.css support.constant, source.scss support.constant | #6AAB73 | — |
| constant.other.color.rgb-value, constant.other.color.rgb-value.hex, constant.other.color.rgb-value punctuation.definition.constant | #56A8F5 | — |
| punctuation.definition.keyword | #CF8E6D | — |
| variable.parameter.url | #5C92FF | — |
| variable.scss, support.other.variable.less, punctuation.definition.variable.less | #6D9CBE | — |
| variable.interpolation.scss | #BCBEC4 | — |
| keyword.control.at-rule.mixin, keyword.control.at-rule.mixin punctuation.definition.keyword | #D0D0FF | — |
| meta.decorator.js variable.other.readwrite.js, meta.decorator.ts variable.other.readwrite.ts | #B3AE60 | — |
| support.type.builtin.ts, support.type.builtin.js | #8888C6 | — |
| variable.other.constant entity.name.function.js | #56A8F5 | — |
| entity.name.function.ts, entity.name.function.js, entity.name.function.jsx, entity.name.function.tsx | #56A8F5 | — |
| meta.definition.method | #56A8F5 | — |
| storage.type.class, keyword.operator.expression.keyof, keyword.operator.expression.typeof, keyword.operator.expression.in, keyword.operator.expression.of, keyword.operator.expression.delete.js, keyword.operator.expression.delete.ts, keyword.operator.expression.instanceof, variable.language.this | #CF8E6D | — |
| storage.modifier | #CF8E6D | — |
| storage.type, keyword.operator.new | #CF8E6D | — |
| support.type.primitive | #CF8E6D | — |
| variable.other.object.property.js, variable.other.object.property.ts, variable.other.property.js, variable.other.property.ts | #C77DBB | — |
| variable.language.super.js, variable.language.super.ts | #CF8E6D | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, string.template variable, string.template meta.brace, string.template punctuation.accessor, string.template support.variable | #BCBEC4 | — |
| string.template.js, string.template.ts | #6AAB73 | — |
| string.regexp.ts punctuation.definition.string.begin.ts, string.regexp.js punctuation.definition.string.begin.js, string.regexp.js punctuation.definition.string.end.js, string.regexp.ts punctuation.definition.string.end.ts, string.regexp.js, string.regexp.ts | #42C3D4 | — |
| support.class.component.tsx | #16BAAC | — |
| meta.tag.attributes.tsx keyword.operator.assignment.tsx | #6AAB73 | — |
| entity.name.tag.style.html.vue, entity.name.tag.script.html.vue, entity.name.tag.template.html.vue, meta.tag.structure.slot.start.html entity.name.tag.html, meta.tag.structure.slot.end.html entity.name.tag.html | #2FBAA3 | — |
| text.html.derivative entity.name.tag.template.html.vue | #D5B778 | — |
| string.quoted.docstring.multi, string.quoted.docstring.raw.multi.python, string.quoted.docstring punctuation.definition.string.begin.python, string.quoted.docstring punctuation.definition.string.end.python | #5F826B | italic |
| string.regexp.quoted.single.python | #6AAB73 | — |
| support.type.python, support.function.builtin | #8888C6 | — |
| variable.other.enummember.python | #BCBEC4 | — |
| storage.type.number.python | #2AACB8 | — |
| storage.type.string.python | #6AAB73 | — |
| string.quoted.binary.single.python, string.quoted.binary.single.python storage.type.string, string.quoted.binary.single.python punctuation.definition.string.begin.python, string.quoted.binary.single.python punctuation.definition.string.end.python | #A5C261 | — |
| meta.function.decorator support.type.python | #B3AE60 | — |
| keyword.operator.logical.python | #CF8E6D | — |
| meta.function.python support.function.magic.python, support.function.magic.python | #B200B6 | — |
| support.variable.magic.python | #B200B6 | — |
| variable.language.special.self.python, variable.parameter.function.language.special.self.python, variable.parameter.function.language.special.cls.python | #94558D | — |
| meta.fstring.python constant.character.format.placeholder.other.python | #CF8E6D | — |
| variable.parameter.function-call.python | #AA4926 | — |
| source.c keyword.control.directive, source.cpp keyword.control.directive, punctuation.definition.directive.c, punctuation.definition.directive.cpp | #B3AE60 | — |
| string.quoted.other.lt-gt.include.c, string.quoted.other.lt-gt.include.cpp | #6AAB73 | — |
| keyword.other.unit.binary.c, keyword.other.unit.octal.c, keyword.other.unit.hexadecimal.c | #2AACB8 | — |
| entity.name.scope-resolution.cpp, entity.name.namespace.cpp | #B5B6E3 | — |
| entity.name.type.struct.cpp, entity.name.type.class.cpp, entity.name.type.enum.cpp | #B5B6E3 | — |
| entity.name.type.template.cpp | #B9BCD1 | — |
| variable.other.property.cpp | #9373A5 | — |
| keyword.operator.bitwise.shift.cpp | #5F8CBA | — |
| variable.other.enummember.cpp | #C77DBB | italic |
| storage.modifier.reference.cpp | #BCBEC4 | — |
| entity.name.function.preprocessor.cpp | #908B25 | — |
| keyword.other.unit.suffix.floating-point.cpp, keyword.other.unit.binary.cpp, keyword.other.unit.octal.cpp, keyword.other.unit.hexadecimal.cpp | #2AACB8 | — |
| entity.name.type.package.go | #AFBF7E | — |
| entity.name.type.go | #6FAFBD | — |
| storage.type.numeric.go | #CC7832 | — |
| entity.name.function.support.builtin.go | #CC7832 | — |
| variable.other.constant.go | #C77DBB | italic |
| comment.line.roxygen.r, comment.line.roxygen.r punctuation.definition.comment | #5F826B | italic |
| comment.line.roxygen.r keyword.other.r | #67A37C | — |
| entity.name.type.lifetime.rust, punctuation.definition.lifetime.rust, storage.modifier.lifetime.rust | #20999D | — |
| variable.language.self | #CF8E6D | — |
| keyword.operator.question.rust | #CF8E6D | — |
| entity.name.function.macro.rust, entity.name.function.macro.rules.rust, keyword.operator.macro.dollar.rust, variable.other.metavariable.specifier.rust, variable.other.metavariable.name | #FFC66D | — |
| entity.name.type.metavariable.rust, variable.other.metavariable.name.rust | #56A8F5 | — |
| meta.attribute.rust, punctuation.definition.attribute.rust, punctuation.brackets.attribute.rust, meta.attribute.rust punctuation.brackets.round.rust | #B3AE60 | — |
| entity.name.command.shell, support.function.builtin.shell | #C57633 | — |
| entity.name.function.shell | #56A8F5 | — |
| meta.shebang.shell, punctuation.definition.comment.shebang.shell, punctuation.definition.string.heredoc.delimiter.shell | #BCBEC4 | bold |
| meta.statement.command.shell constant.other.option, string.unquoted.argument.shell, string.unquoted.heredoc.no-indent.EOF | #BCBEC4 | — |
| punctuation.definition.subshell.single.shell | #CF8E6D | — |
| meta.argument.shell keyword.operator.redirect.shell, punctuation.definition.evaluation.backticks.shell, punctuation.definition.variable.shell | #CF8E6D | — |
| keyword.operator.logical.batchfile | #CF8E6D | — |
| support.variable.automatic.powershell | #BCBEC4 | — |
| source.powershellvariable.other.member | #56A8F5 | — |
| meta.group.simple.subexpression.powershellpunctuation.section.group | #BCBEC4 | — |
| source.powershellmeta.embedded | #BCBEC4 | — |
| punctuation.section.embedded, meta.group.complex.subexpression.powershell>punctuation.section.group | #CF8E6D | — |
| keyword.other.phpdoc.php | #67A37C | — |
| meta.other.type.phpdoc.php keyword.other.type.php | #ABADB3 | — |
| meta.other.type.phpdoc.php support.class.php | #16BAAC | — |
| entity.name.function.php, support.function.constructor.php | #57AAF7 | — |
| meta.method-call.static.php entity.name.function.php | #57AAF7 | italic |
| entity.name.variable.parameter.php | #467CDA | — |
| meta.attribute.php | #B3AE60 | — |
| variable.other.php, punctuation.definition.variable.php, variable.language.this.php | #9876AA | — |
| constant.enum.php, constant.other.php, storage.type.php, constant.other.class.php | #9876AA | italic |
| variable.other.property.php | #C77DBB | — |
| support.function.construct.output.php | #CF8E6D | — |
| punctuation.section.embedded.end.php source.php | #CF8E6D | — |
| keyword.other.special-method.ruby | #FC9800 | — |
| variable.ruby, variable.other.readwrite.ruby | #D4B01D | italic |
| variable.other.readwrite.global.ruby, variable.other.readwrite.global.pre-defined.ruby | #D0D0FF | — |
| entity.name.function.ruby | #FFC66D | — |
| entity.name.type.module.ruby | #FFC66D | italic |
| variable.other.constant.ruby | #FFC66D | italic |
| source.ruby punctuation.section.embedded | #BCBEC4 | — |
| support.function.kernel.ruby | #BCBEC4 | — |
| variable.other.readwrite.instance.ruby, variable.other.readwrite.class.ruby | #C77DBB | — |
| variable.parameter.function.ruby, variable.other.block.ruby | #D4B01D | — |
| constant.language.symbol.ruby, constant.language.symbol.hashkey.ruby | #89A6AF | — |
| constant.numeric.ruby | #74A4C8 | — |
| comment.line.number-sign.ruby, punctuation.definition.comment.ruby | #808080 | — |
| comment.line.keyword.yard.ruby, comment.line.keyword.punctuation.yard.ruby | #9a9a9a | italic |
| comment.line.parameter.yard.ruby, comment.line.type.yard.ruby | #9a9a9a | — |
| punctuation.separator.java | #BCBEC4 | — |
| variable.language.wildcard.java | #BCBEC4 | — |
| punctuation.definition.annotation.java | #B3AE60 | — |
| storage.type.function.arrow.java | #BCBEC4 | — |
| comment.block.javadoc.java variable.parameter.java | #ABADB3 | — |
| support.function.section | #94558D | — |
| variable.parameter.function.latex | #B3AE60 | — |
| text.tex support.class.math, text.tex support.class.math punctuation.definition.string.end, text.tex support.class.math punctuation.definition.string.begin | #16BAAC | — |
| meta.separator.markdown | #CF8E6D | — |
| entity.name.section.markdown, punctuation.definition.heading.markdown | #C77DBB | italic |
| punctuation.definition.bold.markdown, punctuation.definition.italic.markdown | #CF8E6D | — |
| markup.bold.markdown | — | bold |
| markup.italic.markdown | — | italic |
| markup.bold.markdown markup.italic.markdown | — | italic bold |
| markup.strikethrough.markdown | — | strikethrough |
| punctuation.definition.list.begin.markdown | #CF8E6D | — |
| punctuation.definition.quote.begin.markdown, markup.quote.markdown | #6AAB73 | — |
| punctuation.definition.table.markdown, punctuation.separator.table.markdown | #CF8E6D | — |
| string.other.link.description.markdown, punctuation.definition.link.description.begin.markdown, punctuation.definition.link.description.end.markdown | #56A8F5 | — |
| string.other.link.title.markdown, punctuation.definition.link.title.begin.markdown, punctuation.definition.link.title.end.markdown | #56A8F5 | — |
| markup.underline.link.markdown, punctuation.definition.link.markdown, meta.image.inline.markdown markup.underline.link.image.markdown | #57AAF7 | — |
| meta.link.reference.def.markdown punctuation.definition.constant.markdown, constant.other.reference.link.markdown, meta.link.reference.markdown punctuation.definition.constant.begin.markdown, meta.link.reference.markdown punctuation.definition.constant.end.markdown | #CF8E6D | — |
| markup.inline.raw.string.markdown punctuation.definition.raw.markdown, markup.fenced_code.block.markdown punctuation.definition.markdown | #CF8E6D | — |
| fenced_code.block.language.markdown | #C77DBB | 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}!`;
}