ThemeDatabase All Themes
Publisher: enes ozturkThemes in package: 21943
One theme database to rule them all. All 22,037 ThemeDatabase themes in one VSIX package.
One theme database to rule them all. All 22,037 ThemeDatabase themes in one VSIX package.
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 |
|---|---|---|
| comment, punctuation.definition.comment, comment.line, comment.block | #c2185b | italic |
| comment.block.documentation, comment.line.documentation | #81c784 | italic |
| keyword, keyword.control, keyword.operator.new, keyword.other.using, keyword.other.import | #f06292 | bold |
| keyword.control.flow, keyword.control.conditional, keyword.control.loop, keyword.control.exception, keyword.control.trycatch | #ff4081 | bold |
| storage.type, storage.modifier, storage.type.class, storage.type.function, storage.type.interface | #4fc3f7 | bold |
| keyword.operator, keyword.operator.arithmetic, keyword.operator.comparison, keyword.operator.logical, keyword.operator.assignment | #f8bbd9 | — |
| keyword.operator.word, keyword.operator.typeof, keyword.operator.instanceof | #ff4081 | — |
| variable, variable.other, variable.language.this, variable.language.super | #fce4ec | — |
| variable.other.property, variable.other.object.property, variable.other.member | #81c784 | — |
| variable.parameter, variable.parameter.function | #ffb74d | italic |
| entity.name.function, entity.name.method, meta.function-call entity.name.function, support.function | #f8bbd9 | — |
| meta.function entity.name.function, meta.method entity.name.function | #e91e63 | bold |
| support.function.builtin, support.function.magic | #26a69a | — |
| entity.name.class, entity.name.type.class, entity.other.inherited-class | #ffb74d | bold |
| entity.name.interface, entity.name.type.interface | #4fc3f7 | bold |
| entity.name.type, support.type, meta.type.annotation | #f8bbd9 | — |
| string, string.quoted, string.quoted.single, string.quoted.double | #81c784 | — |
| string.template, string.quoted.template | #a5d6a7 | — |
| string.interpolated, meta.template.expression | #4fc3f7 | — |
| string.regexp, string.regex | #ff9800 | — |
| constant.numeric, constant.numeric.integer, constant.numeric.float, constant.numeric.decimal, constant.numeric.hex, constant.numeric.binary, constant.numeric.octal | #ffb74d | — |
| constant.language.boolean, constant.language.true, constant.language.false | #ff4081 | bold |
| constant.language.null, constant.language.undefined, constant.language.none | #f44336 | bold |
| constant.other, variable.other.constant | #ffb74d | italic |
| keyword.control.import, keyword.control.export, keyword.control.from, keyword.control.as | #4fc3f7 | — |
| keyword.control.flow.async, keyword.control.flow.await | #ff4081 | italic |
| meta.object-binding-pattern-variable entity.name.binding, meta.array-binding-pattern-variable entity.name.binding | #81c784 | — |
| variable.language.special.self.python, variable.language.special.cls.python | #4fc3f7 | italic |
| support.function.magic.python | #ff9800 | — |
| entity.name.function.decorator.python, punctuation.definition.decorator.python | #ffb74d | — |
| punctuation.definition.annotation, storage.type.annotation | #ffb74d | — |
| punctuation.definition.typeparameters, entity.name.type.parameter | #4fc3f7 | — |
| keyword.control.directive, meta.preprocessor | #4fc3f7 | — |
| keyword.operator.pointer, keyword.operator.address | #ff4081 | — |
| entity.name.type.lifetime.rust, punctuation.definition.lifetime.rust | #ff9800 | — |
| entity.name.function.macro.rust, punctuation.definition.macro.rust | #4fc3f7 | — |
| entity.name.package.go | #81c784 | — |
| punctuation.definition.variable.php, variable.other.php | #fce4ec | — |
| entity.name.type.namespace.php | #81c784 | — |
| entity.name.tag.html, punctuation.definition.tag | #f06292 | — |
| entity.other.attribute-name.html | #ffb74d | — |
| string.quoted.double.html, string.quoted.single.html | #81c784 | — |
| support.type.property-name.css | #4fc3f7 | — |
| support.constant.property-value.css, constant.numeric.css | #81c784 | — |
| entity.name.tag.css, entity.other.attribute-name.class.css, entity.other.attribute-name.id.css | #ffb74d | — |
| keyword.other.unit.css | #ff9800 | — |
| source.json meta.structure.dictionary.json support.type.property-name.json | #f06292 | bold |
| source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json | #ba68c8 | — |
| 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 | #9575cd | — |
| punctuation.support.type.property-name.begin.json, punctuation.support.type.property-name.end.json, punctuation.separator.dictionary.key-value.json, punctuation.separator.array.json | #ce93d8 | — |
| string.quoted.double.json, string.quoted.single.json | #80cbc4 | — |
| constant.numeric.json | #4db6ac | — |
| constant.language.json | #f48fb1 | bold |
| constant.language.null.json | #ef5350 | bold |
| entity.name.tag.yaml | #f06292 | — |
| string.unquoted.plain.out.yaml | #81c784 | — |
| markup.heading, punctuation.definition.heading.markdown | #f06292 | bold |
| markup.bold | #ffb74d | bold |
| markup.italic | #e91e63 | italic |
| markup.inline.raw.markdown, markup.fenced_code.block.markdown | #26a69a | — |
| markup.underline.link.markdown | #4fc3f7 | — |
| markup.quote.markdown | #81c784 | italic |
| markup.table, punctuation.separator.table-cell.markdown | #90caf9 | — |
| keyword.other.sql | #f06292 | bold |
| support.function.sql | #f8bbd9 | — |
| punctuation, punctuation.separator, punctuation.terminator | #f8bbd9 | — |
| punctuation.section.brackets, punctuation.section.parens, punctuation.section.braces | #f06292 | — |
| meta.decorator, meta.decorator.identifier, meta.decorator punctuation.decorator | #ba68c8 | italic |
| source.graphql keyword.operation, source.graphql meta.type.interface | #26c6da | bold |
| source.graphql variable.graphql, source.graphql meta.selection-set | #80cbc4 | — |
| keyword.other.special-method.dockerfile, source.dockerfile keyword.operator.flag | #f48fb1 | bold |
| entity.name.type.anchor.yaml, variable.other.alias.yaml | #b39ddb | italic |
| variable.other.special.shell, variable.other.positional.shell, variable.other.normal.shell | #ce93d8 | — |
| meta.decorator.ts entity.name.function, meta.decorator.tsx entity.name.function | #dce775 | italic |
| comment.block.documentation storage.type.class.jsdoc, comment.block.documentation punctuation.definition.block.tag.jsdoc | #aed581 | bold |
| markup.changed, meta.diff.header.git | #fff176 | — |
| meta.decorator.python, meta.decorator.identifier.python | #ffb74d | italic |
| meta.attribute.rust, meta.attribute.identifier.rust | #ff9800 | italic |
| keyword.control.swift, storage.type.swift, keyword.declaration.swift | #f06292 | bold |
| entity.name.function.swift, entity.name.method.swift | #f8bbd9 | bold |
| entity.name.type.swift, entity.name.class.swift, entity.name.struct.swift, entity.name.enum.swift, entity.name.protocol.swift | #ffb74d | bold |
| variable.other.swift, variable.other.property.swift, variable.other.constant.swift | #fce4ec | — |
| string.quoted.double.swift, string.quoted.single.swift, string.interpolated.swift | #81c784 | — |
| keyword.control.kotlin, storage.type.kotlin, keyword.declaration.kotlin | #f06292 | bold |
| entity.name.function.kotlin, entity.name.method.kotlin | #f8bbd9 | bold |
| entity.name.class.kotlin, entity.name.object.kotlin, entity.name.interface.kotlin | #ffb74d | bold |
| variable.other.kotlin, variable.other.property.kotlin, variable.other.local.kotlin | #fce4ec | — |
| string.quoted.kotlin, string.template.kotlin | #81c784 | — |
| keyword.control.dart, storage.type.dart, keyword.declaration.dart | #f06292 | bold |
| entity.name.function.dart, entity.name.method.dart, entity.name.constructor.dart | #f8bbd9 | bold |
| entity.name.class.dart, entity.name.mixin.dart, entity.name.extension.dart | #ffb74d | bold |
| variable.other.dart, variable.other.property.dart, variable.parameter.dart | #fce4ec | — |
| string.quoted.dart, string.interpolated.dart | #81c784 | — |
| keyword.control.julia, storage.type.julia, keyword.operator.julia | #f06292 | bold |
| entity.name.function.julia, support.function.julia, support.function.macro.julia | #f8bbd9 | bold |
| entity.name.type.julia, entity.name.struct.julia, entity.name.module.julia | #ffb74d | bold |
| variable.other.julia, variable.other.constant.julia, variable.other.global.julia | #fce4ec | — |
| string.quoted.julia, string.interpolated.julia | #81c784 | — |
| keyword.control.r, storage.type.r, keyword.operator.r | #f06292 | bold |
| entity.name.function.r, support.function.r, support.function.package.r | #f8bbd9 | bold |
| variable.other.r, variable.other.assignment.r, variable.other.special.r | #fce4ec | — |
| constant.numeric.r, constant.numeric.complex.r | #ffb74d | — |
| string.quoted.r, string.quoted.double.r | #81c784 | — |
| keyword.control.wat, storage.type.wat, keyword.operator.wat | #f06292 | bold |
| entity.name.function.wat, support.function.wat, keyword.other.instruction.wat | #f8bbd9 | bold |
| entity.name.type.wat, storage.type.numeric.wat, storage.type.reference.wat | #ffb74d | bold |
| variable.other.wat, variable.other.local.wat, variable.other.global.wat | #fce4ec | — |
| constant.numeric.wat, constant.numeric.integer.wat, constant.numeric.float.wat | #ffb74d | — |
| keyword.control.assemblyscript, storage.type.assemblyscript, keyword.declaration.assemblyscript | #f06292 | bold |
| entity.name.function.assemblyscript, entity.name.method.assemblyscript | #f8bbd9 | bold |
| entity.name.type.assemblyscript, entity.name.class.assemblyscript, entity.name.interface.assemblyscript | #ffb74d | bold |
| variable.other.assemblyscript, variable.other.property.assemblyscript, variable.parameter.assemblyscript | #fce4ec | — |
| entity.name.tag.toml, support.type.property-name.toml | #f06292 | bold |
| string.quoted.toml, constant.numeric.toml, constant.language.boolean.toml | #81c784 | — |
| meta.array.toml, punctuation.separator.array.toml | #f8bbd9 | — |
| constant.other.datetime.toml, constant.other.date.toml, constant.other.time.toml | #ff9800 | — |
| entity.name.section.ini, punctuation.definition.section.ini | #f06292 | bold |
| variable.other.key.ini, support.type.property-name.ini | #ffb74d | — |
| string.quoted.ini, constant.numeric.ini, constant.language.boolean.ini | #81c784 | — |
| comment.line.ini, comment.line.number-sign.ini, comment.line.semicolon.ini | #c2185b | italic |
| entity.name.tag.properties, support.type.property-name.properties | #f06292 | bold |
| string.quoted.properties, constant.numeric.properties, constant.language.boolean.properties | #81c784 | — |
| comment.line.properties, comment.line.number-sign.properties | #c2185b | italic |
| variable.other.env, support.type.property-name.env | #f06292 | bold |
| string.quoted.env, constant.numeric.env, constant.language.boolean.env | #81c784 | — |
| comment.line.env, comment.line.number-sign.env | #c2185b | italic |
| support.function.general.latex, keyword.operator.braces.latex, punctuation.definition.function.latex | #f06292 | bold |
| entity.name.section.latex, markup.heading.latex | #ff4081 | bold |
| meta.math.latex, string.other.math.latex, variable.other.math.latex | #4fc3f7 | — |
| comment.line.percentage.latex, comment.block.latex | #c2185b | italic |
| markup.heading.asciidoc, entity.name.section.asciidoc | #f06292 | bold |
| markup.other.attribute.asciidoc, variable.other.attribute.asciidoc | #ffb74d | — |
| markup.list.asciidoc, punctuation.definition.list.asciidoc | #81c784 | — |
| markup.underline.link.asciidoc, string.other.link.asciidoc | #4fc3f7 | — |
| markup.heading.restructuredtext, entity.name.section.restructuredtext | #f06292 | bold |
| keyword.control.directive.restructuredtext, entity.name.function.directive.restructuredtext | #ff4081 | bold |
| markup.other.role.restructuredtext, entity.name.function.role.restructuredtext | #ba68c8 | — |
| markup.underline.link.restructuredtext, string.other.link.restructuredtext | #4fc3f7 | — |
| markup.table.gfm, punctuation.separator.table-cell.gfm | #90caf9 | — |
| markup.list.unchecked.gfm, markup.list.checked.gfm | #81c784 | — |
| markup.strikethrough.gfm | #f44336 | strikethrough |
| support.class.component.jsx, entity.name.tag.jsx, meta.jsx.children.jsx | #4fc3f7 | bold |
| support.function.react.hooks.jsx, variable.other.property.jsx | #ff4081 | bold |
| variable.other.property.jsx, variable.parameter.jsx | #ffb74d | italic |
| entity.other.attribute-name.jsx, entity.other.attribute-name.class.jsx | #81c784 | — |
| entity.name.tag.vue, meta.tag.vue, support.component.vue | #4fc3f7 | bold |
| keyword.control.directive.vue, entity.other.directive.name.vue | #ff4081 | bold |
| variable.other.property.vue, support.type.props.vue | #ffb74d | italic |
| source.vue.embedded.html, meta.script.vue | #fce4ec | — |
| entity.name.tag.angular, meta.tag.angular, support.component.angular | #4fc3f7 | bold |
| keyword.control.directive.angular, entity.other.directive.name.angular | #ff4081 | bold |
| entity.name.service.angular, support.class.service.angular | #ba68c8 | bold |
| entity.name.pipe.angular, support.function.pipe.angular | #26a69a | — |
| entity.name.tag.svelte, meta.tag.svelte, support.component.svelte | #4fc3f7 | bold |
| keyword.control.directive.svelte, entity.other.directive.name.svelte | #ff4081 | bold |
| variable.other.store.svelte, support.type.store.svelte | #ba68c8 | italic |
| entity.name.action.svelte, support.function.action.svelte | #26a69a | — |
| storage.type.annotation.spring, entity.name.annotation.spring | #ffb74d | italic |
| entity.name.class.controller.spring, support.class.controller.spring | #4fc3f7 | bold |
| entity.name.class.service.spring, support.class.service.spring | #ba68c8 | bold |
| entity.name.class.repository.spring, support.class.repository.spring | #81c784 | — |
| entity.name.class.model.django, support.class.model.django | #4fc3f7 | bold |
| entity.name.function.view.django, support.function.view.django | #f8bbd9 | bold |
| meta.tag.template.django, entity.name.tag.django, variable.other.django | #ba68c8 | bold |
| entity.name.class.form.django, support.class.form.django | #ffb74d | — |
| entity.name.function.route.flask, support.function.route.flask | #f8bbd9 | bold |
| entity.name.function.decorator.flask, punctuation.definition.decorator.flask | #ffb74d | italic |
| meta.template.jinja2, variable.other.jinja2 | #81c784 | — |
| entity.name.function.route.express, support.function.route.express | #f8bbd9 | bold |
| entity.name.function.middleware.express, support.function.middleware.express | #ba68c8 | bold |
| variable.other.request.express, variable.other.response.express | #4fc3f7 | — |
| storage.type.annotation.aspnet, entity.name.annotation.aspnet | #ffb74d | italic |
| entity.name.class.controller.aspnet, support.class.controller.aspnet | #4fc3f7 | bold |
| entity.name.class.model.aspnet, support.class.model.aspnet | #ba68c8 | — |
| support.class.component.react-native, entity.name.tag.react-native | #4fc3f7 | bold |
| meta.property.stylesheet.react-native, support.type.property-name.react-native | #81c784 | — |
| entity.name.function.navigation.react-native, support.function.navigation.react-native | #ba68c8 | — |
| entity.name.class.widget.flutter, support.class.widget.flutter | #4fc3f7 | bold |
| entity.name.function.build.flutter, support.function.build.flutter | #f8bbd9 | bold |
| variable.other.state.flutter, support.type.state.flutter | #ffb74d | italic |
| entity.name.function.test.jest, support.function.test.jest | #f8bbd9 | bold |
| support.function.matcher.jest, variable.other.matcher.jest | #81c784 | — |
| support.function.mock.jest, variable.other.mock.jest | #ba68c8 | — |
| entity.name.function.command.cypress, support.function.command.cypress | #f8bbd9 | bold |
| support.function.selector.cypress, variable.other.selector.cypress | #4fc3f7 | — |
| support.function.assertion.cypress, variable.other.assertion.cypress | #81c784 | — |
| entity.name.function.command.selenium, support.function.command.selenium | #f8bbd9 | bold |
| support.function.locator.selenium, variable.other.locator.selenium | #4fc3f7 | — |
| entity.name.function.test.pytest, support.function.test.pytest | #f8bbd9 | bold |
| entity.name.function.fixture.pytest, support.function.fixture.pytest | #ba68c8 | italic |
| entity.name.function.test.junit, support.function.test.junit | #f8bbd9 | bold |
| storage.type.annotation.junit, entity.name.annotation.junit | #ffb74d | italic |
| keyword.control.git, support.function.git | #f06292 | bold |
| entity.name.branch.git, variable.other.branch.git | #4fc3f7 | — |
| entity.name.commit.git, variable.other.commit.git | #81c784 | — |
| entity.name.kind.kubernetes, support.type.kubernetes | #ff6b9d | bold |
| entity.name.metadata.kubernetes, support.type.metadata.kubernetes | #ba68c8 | — |
| entity.name.spec.kubernetes, support.type.spec.kubernetes | #4fc3f7 | — |
| entity.name.service.docker-compose, support.type.service.docker-compose | #ff6b9d | bold |
| entity.name.network.docker-compose, support.type.network.docker-compose | #4fc3f7 | — |
| entity.name.volume.docker-compose, support.type.volume.docker-compose | #81c784 | — |
| entity.name.resource.cloudformation, support.type.cloudformation | #ff8a65 | bold |
| entity.name.property.cloudformation, support.type.property.cloudformation | #ffb74d | — |
| support.function.cloudformation, entity.name.function.cloudformation | #f8bbd9 | — |
| entity.name.resource.arm, support.type.arm | #ff8a65 | bold |
| entity.name.parameter.arm, support.type.parameter.arm | #4fc3f7 | — |
| entity.name.variable.arm, support.type.variable.arm | #ba68c8 | — |
| entity.name.resource.gcp, support.type.gcp | #ff8a65 | bold |
| entity.name.property.gcp, support.type.property.gcp | #ffb74d | — |
| entity.name.tag.maven, support.type.maven | #f06292 | bold |
| entity.name.dependency.maven, support.type.dependency.maven | #4fc3f7 | — |
| entity.name.plugin.maven, support.type.plugin.maven | #ba68c8 | — |
| entity.name.task.gradle, support.type.task.gradle | #f8bbd9 | bold |
| entity.name.dependency.gradle, support.type.dependency.gradle | #4fc3f7 | — |
| entity.name.plugin.gradle, support.type.plugin.gradle | #ba68c8 | — |
| entity.name.script.npm, support.type.script.npm | #f8bbd9 | bold |
| entity.name.dependency.npm, support.type.dependency.npm | #4fc3f7 | — |
| entity.name.dev-dependency.npm, support.type.dev-dependency.npm | #ba68c8 | — |
| entity.name.package.pip, support.type.package.pip | #4fc3f7 | — |
| entity.name.requirement.pip, support.type.requirement.pip | #81c784 | — |
| entity.name.package.cargo, support.type.package.cargo | #4fc3f7 | — |
| entity.name.dependency.cargo, support.type.dependency.cargo | #ba68c8 | — |
| entity.name.package.composer, support.type.package.composer | #4fc3f7 | — |
| entity.name.dependency.composer, support.type.dependency.composer | #ba68c8 | — |
| entity.name.namespace | #4fc3f7 | — |
| entity.name.class | #ffb74d | bold |
| entity.name.interface | #ba68c8 | bold |
| entity.name.enum | #4fc3f7 | — |
| entity.name.type.parameter | #81c784 | — |
| entity.name.function | #90caf9 | — |
| entity.name.method | #90caf9 | — |
| variable.other.property | #e8f4f8 | — |
| variable.other | #e8f4f8 | — |
| variable.parameter | #ffb74d | — |
| variable.other.enum.member | #81c784 | — |
| entity.name.event | #ff6b9d | — |
| keyword.operator | #f8bbd9 | — |
| storage.modifier | #ba68c8 | — |
| entity.name.macro | #ff4081 | — |
| keyword | #f06292 | — |
| comment | #c2185b | italic |
| string | #81c784 | — |
| constant.numeric | #ffb74d | — |
| string.regexp | #ff9800 | — |
| entity.name.decorator | #dce775 | — |
| invalid.illegal, invalid.deprecated | #f44336 | underline wavy |
| invalid.type | #ff5722 | underline wavy |
| markup.other.deprecated | #ff9800 | underline dotted |
| markup.other.warning | #ffc107 | underline dotted |
| markup.other.info | #2196f3 | underline |
| meta.completion | #4fc3f7 | bold |
| meta.parameter.hint | #ffb74d | italic |
| meta.type.information | #ba68c8 | — |
| meta.documentation | #81c784 | 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}!`;
}