Cursor Themes - Dark & Light Collection
A stunning collection of 19 hand-crafted themes (17 dark + 2 light). Comprehensive syntax highlighting for JavaScript, TypeScript, Python, React, Vue, Rust, Go, Solidity, and 50+ languages.
A stunning collection of 19 hand-crafted themes (17 dark + 2 light). Comprehensive syntax highlighting for JavaScript, TypeScript, Python, React, Vue, Rust, Go, Solidity, and 50+ languages.
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 | #6A9955 | italic |
| string, string.quoted, string.template | #CE9178 | — |
| punctuation.definition.string.begin, punctuation.definition.string.end | #CE9178 | — |
| constant.numeric | #B5CEA8 | — |
| constant.language | #569CD6 | — |
| variable.other.constant | #4FC1FF | — |
| variable, variable.other.readwrite | #9CDCFE | — |
| variable.parameter | #9CDCFE | italic |
| variable.language, variable.language.this, variable.language.self | #569CD6 | — |
| keyword, keyword.control, keyword.operator.new, keyword.other | #C586C0 | — |
| storage, storage.type, storage.modifier | #569CD6 | — |
| keyword.operator, keyword.operator.logical, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.relational, keyword.operator.comparison | #D4D4D4 | — |
| keyword.operator.ternary, keyword.operator.optional, keyword.operator.expression.instanceof, keyword.operator.expression.typeof, keyword.operator.expression.keyof, keyword.operator.expression.delete, keyword.operator.expression.void, keyword.operator.expression.in, keyword.operator.expression.of | #C586C0 | — |
| punctuation, punctuation.definition, punctuation.separator, punctuation.terminator, punctuation.section | #D4D4D4 | — |
| entity.name.function, meta.require, support.function, variable.function | #DCDCAA | — |
| meta.method-call, meta.method, entity.name.function.member | #DCDCAA | — |
| entity.name.class, entity.name.type, entity.name.type.class, support.class, support.type | #4EC9B0 | — |
| entity.name.type.namespace, entity.name.namespace | #DCDCAA | — |
| entity.other.inherited-class | #DCDCAA | — |
| variable.object.property, variable.other.property, support.variable.property | #9CDCFE | — |
| meta.object-literal.key | #9CDCFE | — |
| support.constant, support.variable | #569CD6 | — |
| entity.name.tag | #569CD6 | — |
| entity.name.tag.html | #569CD6 | — |
| entity.name.tag.template, entity.name.tag.script, entity.name.tag.style | #569CD6 | — |
| punctuation.definition.tag | #808080 | — |
| entity.other.attribute-name | #DCDCAA | — |
| entity.other.attribute-name.js, entity.other.attribute-name.ts, entity.other.attribute-name.jsx, entity.other.attribute-name.tsx | #9CDCFE | italic |
| meta.decorator, punctuation.decorator | #DCDCAA | — |
| markup.heading, entity.name.section | #569CD6 | bold |
| markup.heading punctuation.definition.heading, punctuation.definition.heading.markdown | #DCDCAA | — |
| markup.bold | #569CD6 | bold |
| markup.italic | #569CD6 | italic |
| markup.underline.link, markup.underline.link.markdown, markup.underline.link.image.markdown | #C586C0 | — |
| string.other.link.title.markdown, string.other.link.description.markdown | #DCDCAA | — |
| markup.inline.raw, markup.fenced_code, markup.inline.raw.markdown, markup.inline.raw.string.markdown | #CE9178 | — |
| markup.quote.markdown | #6A9955 | — |
| punctuation.definition.list.begin.markdown, punctuation.definition.list.markdown, beginning.punctuation.definition.list.markdown | #D4D4D4 | — |
| support.type.property-name.json, meta.structure.dictionary.key.json | #569CD6 | — |
| source.json meta.structure.dictionary.json > value.json > string.quoted.json, source.json meta.structure.array.json > value.json > string.quoted.json | #CE9178 | — |
| entity.other.attribute-name.class.css | #D7BA7D | — |
| entity.other.attribute-name.id.css | #4EC9B0 | — |
| support.type.property-name.css, meta.property-name.css | #4EC9B0 | — |
| support.constant.property-value.css, meta.property-value.css | #CE9178 | — |
| support.constant.color.w3c-standard-color-name.css, support.constant.color.w3c-standard-color-name.scss | #D7BA7D | — |
| keyword.other.unit | #B5CEA8 | — |
| string.regexp | #D16969 | — |
| keyword.operator.quantifier.regexp | #D7BA7D | — |
| constant.character.escape | #D4D4D4 | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded | #C586C0 | — |
| invalid, invalid.illegal | #F44747 | — |
| invalid.deprecated | #E5B95C | — |
| variable.parameter.function.language.python, variable.parameter.function.python | #D7BA7D | — |
| variable.parameter.function.language.special.self.python | #DCDCAA | — |
| support.type.python | #569CD6 | — |
| meta.function-call.generic.python | #DCDCAA | — |
| meta.function.decorator.python, punctuation.definition.decorator.python, entity.name.function.decorator.python | #DCDCAA | — |
| constant.character.format.placeholder.other.python | #D7BA7D | — |
| keyword.operator.logical.python | #C586C0 | — |
| keyword.control.import.python, keyword.control.flow.python | — | italic |
| string.quoted.binary.single.python | #DCDCAA | — |
| support.type.primitive.ts, support.type.builtin.ts, support.type.primitive.tsx, support.type.builtin.tsx | #569CD6 | — |
| entity.name.function.js, entity.name.function.ts, support.function.console.js | #B5CEA8 | — |
| variable.other.class.js, variable.other.class.ts | #DCDCAA | — |
| support.module.node, support.type.object.module, entity.name.type.module | #DCDCAA | — |
| keyword.operator.expression.import | #DCDCAA | — |
| variable.parameter.function.js | #D4D4D4 | — |
| keyword.control.import.js, keyword.control.import.ts, keyword.control.import.jsx, keyword.control.import.tsx, keyword.control.export.js, keyword.control.export.ts, keyword.control.export.jsx, keyword.control.export.tsx, keyword.control.from.js, keyword.control.from.ts, keyword.control.from.jsx, keyword.control.from.tsx, keyword.control.default.js, keyword.control.default.ts, keyword.control.default.jsx, keyword.control.default.tsx | #C586C0 | |
| storage.type.function.js, storage.type.function.ts, storage.type.function.jsx, storage.type.function.tsx, keyword.declaration.function.js, keyword.declaration.function.ts, keyword.declaration.function.jsx, keyword.declaration.function.tsx | #569CD6 | |
| support.function.std.rust | #DCDCAA | — |
| entity.name.lifetime.rust | #DCDCAA | — |
| storage.modifier.lifetime.rust | #D4D4D4 | — |
| support.constant.core.rust | #D7BA7D | — |
| keyword.operator.sigil.rust | #C586C0 | — |
| meta.method.java | #DCDCAA | — |
| storage.modifier.import.java, storage.type.java, storage.type.generic.java | #DCDCAA | — |
| storage.type.annotation.java, storage.type.object.array.java | #DCDCAA | — |
| keyword.operator.instanceof.java | #C586C0 | — |
| keyword.control.directive.include.cpp, keyword.control.directive | #DCDCAA | — |
| variable.language.this.cpp | #569CD6 | — |
| constant.language.false.cpp, constant.language.true.cpp | #569CD6 | — |
| keyword.operator.assignment.c, keyword.operator.comparison.c, keyword.operator.c, keyword.operator.increment.c, keyword.operator.decrement.c, keyword.operator.assignment.cpp, keyword.operator.comparison.cpp, keyword.operator.cpp, keyword.operator.increment.cpp, keyword.operator.decrement.cpp | #C586C0 | — |
| keyword.operator.sizeof.c, keyword.operator.sizeof.cpp | #C586C0 | — |
| meta.function-call.php, meta.function-call.object.php, meta.function-call.static.php | #DCDCAA | — |
| storage.type.php, meta.other.type.phpdoc.php, keyword.other.type.php | #DCDCAA | — |
| support.other.namespace.use.php, support.other.namespace.php, entity.other.alias.php | #DCDCAA | — |
| entity.name.package.go | #DCDCAA | — |
| keyword.operator.assignment.go | #DCDCAA | — |
| keyword.operator.arithmetic.go, keyword.operator.address.go | #C586C0 | — |
| markup.changed.diff | #DCDCAA | — |
| markup.inserted.diff | #CE9178 | — |
| markup.deleted.diff | #D4D4D4 | — |
| meta.diff.header.from-file, meta.diff.header.to-file | #DCDCAA | — |
| punctuation.definition.block.sequence.item.yaml | #D4D4D4 | — |
| token.info-token | #DCDCAA | — |
| token.warn-token | #D7BA7D | — |
| token.error-token | #F44747 | — |
| token.debug-token | #C586C0 | — |
| variable.language.super | — | italic |
| comment.line.double-slash, comment.block.documentation | — | italic |
| support.class.component.js, support.class.component.tsx, entity.name.tag.js, entity.name.tag.tsx | #4EC9B0 | — |
| meta.jsx.children, meta.jsx.children.tsx | #D4D4D4 | — |
| punctuation.section.embedded.begin.jsx, punctuation.section.embedded.end.jsx, punctuation.section.embedded.begin.tsx, punctuation.section.embedded.end.tsx | #C586C0 | — |
| entity.other.attribute-name.directive.vue, keyword.control.directive.vue | #C586C0 | italic |
| entity.name.tag.other.vue | #4EC9B0 | — |
| punctuation.definition.interpolation.begin.html.vue, punctuation.definition.interpolation.end.html.vue | #C586C0 | — |
| entity.name.function.pipe.ng | #DCDCAA | — |
| punctuation.definition.binding.bracket.square.ng | #C586C0 | — |
| entity.name.tag.svelte | #4EC9B0 | — |
| entity.other.attribute-name.directive.svelte | #C586C0 | — |
| entity.name.type.contract.solidity, entity.name.type.interface.solidity | #4EC9B0 | — |
| entity.name.function.solidity | #DCDCAA | — |
| entity.name.function.modifier.solidity, storage.modifier.solidity | #DCDCAA | — |
| support.type.primitive.solidity, storage.type.solidity, storage.type.mapping.solidity, storage.type.address.solidity, storage.type.uint.solidity, storage.type.int.solidity, storage.type.bytes.solidity, storage.type.string.solidity, storage.type.bool.solidity | #569CD6 | — |
| entity.name.type.event.solidity | #D7BA7D | — |
| storage.modifier.visibility.solidity | #C586C0 | — |
| keyword.control.solidity, keyword.other.solidity | #C586C0 | — |
| variable.other.state.solidity | #9CDCFE | — |
| keyword.control.assembly.solidity | #BF616A | — |
| entity.name.type.contract.vyper | #4EC9B0 | — |
| meta.decorator.vyper | #DCDCAA | — |
| entity.name.function.macro.rust, meta.macro.rust | #DCDCAA | — |
| meta.attribute.rust | #DCDCAA | — |
| entity.name.type.trait.rust | #4EC9B0 | — |
| keyword.other.impl.rust | #C586C0 | — |
| keyword.other.unsafe.rust | #BF616A | — |
| entity.name.type.type-parameter.rust | #569CD6 | — |
| entity.name.type.enum.rust | #4EC9B0 | — |
| entity.name.type.struct.rust | #4EC9B0 | — |
| entity.name.module.rust | #DCDCAA | — |
| meta.preprocessor.c, meta.preprocessor.cpp, keyword.control.directive.c, keyword.control.directive.cpp | #DCDCAA | — |
| entity.name.function.preprocessor.c, entity.name.function.preprocessor.cpp | #DCDCAA | — |
| storage.modifier.c, storage.modifier.cpp | #569CD6 | — |
| storage.modifier.pointer.c, storage.modifier.pointer.cpp, storage.modifier.reference.cpp | #C586C0 | — |
| entity.name.type.struct.c, entity.name.type.struct.cpp | #4EC9B0 | — |
| entity.name.type.enum.c, entity.name.type.enum.cpp | #4EC9B0 | — |
| keyword.mnemonic.assembly, entity.name.function.asm, support.function.mnemonic.x86 | #C586C0 | — |
| variable.parameter.register.asm, storage.register.asm, variable.language.register.assembly | #DCDCAA | — |
| entity.name.label.asm, entity.name.function.label.assembly | #DCDCAA | — |
| keyword.control.directive.asm, storage.directive.asm | #DCDCAA | — |
| keyword.operator.word.wasm, entity.name.function.wasm | #C586C0 | — |
| storage.type.wasm | #569CD6 | — |
| variable.scss, variable.sass | #9CDCFE | — |
| entity.name.function.scss, keyword.control.at-rule.mixin.scss | #DCDCAA | — |
| keyword.control.at-rule.include.scss | #C586C0 | — |
| keyword.control.at-rule.extend.scss | #C586C0 | — |
| entity.other.attribute-name.placeholder.scss | #DCDCAA | — |
| variable.less | #9CDCFE | — |
| entity.other.attribute-name.mixin.less | #DCDCAA | — |
| variable.stylus | #9CDCFE | — |
| entity.other.attribute-name.class.tailwindcss | #4FC1FF | — |
| support.type.graphql, entity.name.type.graphql | #4EC9B0 | — |
| variable.graphql, string.unquoted.alias.graphql | #9CDCFE | — |
| entity.name.function.directive.graphql | #DCDCAA | — |
| keyword.graphql | #C586C0 | — |
| constant.character.enum.graphql | #B5CEA8 | — |
| keyword.other.sql, keyword.other.DML.sql | #C586C0 | — |
| support.function.sql | #DCDCAA | — |
| storage.type.sql | #569CD6 | — |
| entity.name.function.sql | #4EC9B0 | — |
| entity.name.type.model.prisma | #4EC9B0 | — |
| variable.other.prisma | #9CDCFE | — |
| entity.name.function.attribute.prisma | #DCDCAA | — |
| variable.other.normal.shell, variable.other.positional.shell, variable.other.special.shell | #9CDCFE | — |
| support.function.builtin.shell | #DCDCAA | — |
| entity.name.command.shell | #569CD6 | — |
| string.other.option.shell, constant.other.option.shell | #D7BA7D | — |
| support.function.powershell | #DCDCAA | — |
| variable.other.member.powershell | #9CDCFE | — |
| keyword.other.special-method.dockerfile | #C586C0 | — |
| entity.name.image.dockerfile | #4EC9B0 | — |
| entity.name.tag.yaml | #569CD6 | — |
| entity.name.type.anchor.yaml, punctuation.definition.anchor.yaml | #DCDCAA | — |
| variable.other.alias.yaml | #DCDCAA | — |
| keyword.key.toml, support.type.property-name.toml | #569CD6 | — |
| entity.name.table.toml, support.type.property-name.table.toml | #4EC9B0 | — |
| entity.name.array.toml, support.type.property-name.array.toml | #DCDCAA | — |
| entity.name.section.group-title.ini | #4EC9B0 | — |
| keyword.other.definition.ini | #569CD6 | — |
| variable.other.env | #569CD6 | — |
| entity.name.tag.xml, entity.name.tag.localname.xml | #4EC9B0 | — |
| entity.name.tag.namespace.xml | #D7BA7D | — |
| entity.other.attribute-name.xml, entity.other.attribute-name.localname.xml | #DCDCAA | — |
| punctuation.definition.group.regexp | #D7BA7D | — |
| constant.other.character-class.regexp, constant.character.character-class.regexp | #CE9178 | — |
| keyword.control.anchor.regexp | #C586C0 | — |
| keyword.other.back-reference.regexp | #DCDCAA | — |
| storage.type.haskell, entity.name.type.haskell | #4EC9B0 | — |
| entity.name.function.haskell | #DCDCAA | — |
| variable.other.generic-type.haskell | #C586C0 | — |
| entity.name.type.module.elixir | #4EC9B0 | — |
| entity.name.function.elixir | #DCDCAA | — |
| constant.other.symbol.elixir, constant.language.symbol.elixir | #4FC1FF | — |
| constant.language.symbol.ruby | #4FC1FF | — |
| entity.name.type.module.ruby | #4EC9B0 | — |
| variable.other.block.ruby | #D7BA7D | — |
| entity.name.type.annotation.kotlin | #DCDCAA | — |
| entity.name.function.kotlin | #DCDCAA | — |
| meta.attribute.swift | #DCDCAA | — |
| support.type.swift | #DCDCAA | — |
| support.function.zig | #DCDCAA | — |
| storage.type.zig | #569CD6 | — |
| entity.name.type.module.move | #4EC9B0 | — |
| entity.name.type.struct.move | #4EC9B0 | — |
| keyword.other.move | #C586C0 | — |
| entity.name.function.cairo | #DCDCAA | — |
| entity.name.type.message.proto | #4EC9B0 | — |
| variable.other.proto | #9CDCFE | — |
| entity.name.type.package.proto | #DCDCAA | — |
| entity.name.type.terraform | #4EC9B0 | — |
| variable.other.terraform | #9CDCFE | — |
| entity.name.function.target.makefile | #DCDCAA | — |
| variable.other.makefile | #9CDCFE | — |
| meta.scope.prerequisites.makefile | #D4D4D4 | — |
| entity.name.function.cmake | #DCDCAA | — |
| variable.other.cmake | #9CDCFE | — |
| entity.name.section.git-config | #4EC9B0 | — |
| keyword.other.git-config | #569CD6 | — |
| log.error, markup.error | #BF616A | — |
| log.warning, markup.warning | #EBCB8B | — |
| log.info | #4FC1FF | — |
| log.date | #D7BA7D | — |
| constant.other | #B5CEA8 | — |
| constant.other.color | #B5CEA8 | — |
| punctuation.separator.comma | #D4D4D4 | — |
| punctuation.separator.colon | #D4D4D4 | — |
| punctuation.terminator.statement | #D4D4D4 | — |
| punctuation.brackets, punctuation.section.brackets, meta.brace.square, meta.brace.curly, meta.brace.round | #D4D4D4 | — |
| entity.name.type.interface | #4EC9B0 | — |
| entity.name.type.enum | #4EC9B0 | — |
| entity.name.type.alias | #4EC9B0 | — |
| variable.other.enummember | #B5CEA8 | — |
| entity.other | #D4D4D4 | — |
| meta.block | #D4D4D4 | — |
| source | #D4D4D4 | — |
| markup.bold | — | bold |
| markup.underline | — | underline |
| markup.strikethrough | — | strikethrough |
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 | #7A6D5E | italic |
| string, string.quoted, string.template | #98C379 | — |
| punctuation.definition.string.begin, punctuation.definition.string.end | #98C379 | — |
| constant.numeric | #D19A66 | — |
| constant.language | #D19A66 | — |
| variable.other.constant | #E5C07B | — |
| variable, variable.other.readwrite | #E0D5C8 | — |
| variable.parameter | #ABB2BF | italic |
| variable.language, variable.language.this, variable.language.self | #E06C75 | — |
| keyword, keyword.control, keyword.operator.new, keyword.other | #F0A050 | — |
| storage, storage.type, storage.modifier | #F0A050 | — |
| keyword.operator, keyword.operator.logical, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.relational, keyword.operator.comparison | #E0D5C8 | — |
| keyword.operator.ternary, keyword.operator.optional, keyword.operator.expression.instanceof, keyword.operator.expression.typeof, keyword.operator.expression.keyof, keyword.operator.expression.delete, keyword.operator.expression.void, keyword.operator.expression.in, keyword.operator.expression.of | #F0A050 | — |
| punctuation, punctuation.definition, punctuation.separator, punctuation.terminator, punctuation.section | #ABB2BF | — |
| entity.name.function, meta.require, support.function, variable.function | #61AFEF | — |
| meta.method-call, meta.method, entity.name.function.member | #61AFEF | — |
| entity.name.class, entity.name.type, entity.name.type.class, support.class, support.type | #E5C07B | — |
| entity.name.type.namespace, entity.name.namespace | #E5C07B | — |
| entity.other.inherited-class | #98C379 | — |
| variable.object.property, variable.other.property, support.variable.property | #E06C75 | — |
| meta.object-literal.key | #E06C75 | — |
| support.constant, support.variable | #56B6C2 | — |
| entity.name.tag | #E06C75 | — |
| entity.name.tag.html | #E06C75 | — |
| entity.other.attribute-name | #D19A66 | — |
| entity.other.attribute-name.js, entity.other.attribute-name.ts, entity.other.attribute-name.jsx, entity.other.attribute-name.tsx | #D19A66 | italic |
| meta.decorator, punctuation.decorator | #98C379 | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded | #F0A050 | — |
| support.type.property-name.json, meta.structure.dictionary.key.json | #E06C75 | — |
| support.type.property-name.css, meta.property-name.css | #61AFEF | — |
| invalid, invalid.illegal | #F44747 | — |
| source | #E0D5C8 | — |
| markup.bold | — | bold |
| markup.underline | — | underline |
| markup.strikethrough | — | strikethrough |
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 | #5A6A54 | italic |
| string, string.quoted, string.template | #A8C99E | — |
| punctuation.definition.string.begin, punctuation.definition.string.end | #A8C99E | — |
| constant.numeric | #DCDCAA | — |
| constant.language | #DCDCAA | — |
| variable.other.constant | #D4A959 | — |
| variable, variable.other.readwrite | #C8D5C2 | — |
| variable.parameter | #B0BDA8 | italic |
| variable.language, variable.language.this, variable.language.self | #E06C75 | — |
| keyword, keyword.control, keyword.operator.new, keyword.other | #C4A7E7 | — |
| storage, storage.type, storage.modifier | #C4A7E7 | — |
| keyword.operator, keyword.operator.logical, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.relational, keyword.operator.comparison | #B0BDA8 | — |
| keyword.operator.ternary, keyword.operator.optional, keyword.operator.expression.instanceof, keyword.operator.expression.typeof | #C4A7E7 | — |
| punctuation, punctuation.definition, punctuation.separator, punctuation.terminator, punctuation.section | #B0BDA8 | — |
| entity.name.function, meta.require, support.function, variable.function | #95C561 | — |
| meta.method-call, meta.method, entity.name.function.member | #95C561 | — |
| entity.name.class, entity.name.type, entity.name.type.class, support.class, support.type | #6A9FB5 | — |
| entity.name.type.namespace, entity.name.namespace | #D4A959 | — |
| variable.object.property, variable.other.property, support.variable.property | #78B0A0 | — |
| meta.object-literal.key | #78B0A0 | — |
| entity.name.tag | #6A9FB5 | — |
| entity.other.attribute-name | #D4A959 | — |
| meta.decorator, punctuation.decorator | #A8C99E | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded | #C4A7E7 | — |
| support.type.property-name.json, meta.structure.dictionary.key.json | #78B0A0 | — |
| invalid, invalid.illegal | #E06C75 | — |
| source | #C8D5C2 | — |
| markup.bold | — | bold |
| markup.underline | — | underline |
| markup.strikethrough | — | strikethrough |
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 | #546E7A | italic |
| string, string.quoted, string.template | #C3E88D | — |
| punctuation.definition.string.begin, punctuation.definition.string.end | #C3E88D | — |
| constant.numeric | #F78C6C | — |
| constant.language | #F78C6C | — |
| variable.other.constant | #82AAFF | — |
| variable, variable.other.readwrite | #BEC5D4 | — |
| variable.parameter | #CBD5E1 | italic |
| variable.language, variable.language.this, variable.language.self | #FF5370 | — |
| keyword, keyword.control, keyword.operator.new, keyword.other | #C792EA | — |
| storage, storage.type, storage.modifier | #C792EA | — |
| keyword.operator, keyword.operator.logical, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.relational, keyword.operator.comparison | #89DDFF | — |
| keyword.operator.ternary, keyword.operator.optional, keyword.operator.expression.instanceof, keyword.operator.expression.typeof, keyword.operator.expression.keyof, keyword.operator.expression.delete, keyword.operator.expression.void, keyword.operator.expression.in, keyword.operator.expression.of | #C792EA | — |
| punctuation, punctuation.definition, punctuation.separator, punctuation.terminator, punctuation.section | #89DDFF | — |
| entity.name.function, meta.require, support.function, variable.function | #82AAFF | — |
| meta.method-call, meta.method, entity.name.function.member | #82AAFF | — |
| entity.name.class, entity.name.type, entity.name.type.class, support.class, support.type | #FFCB6B | — |
| entity.name.type.namespace, entity.name.namespace | #FFCB6B | — |
| entity.other.inherited-class | #C3E88D | — |
| variable.object.property, variable.other.property, support.variable.property | #5EC4FF | — |
| meta.object-literal.key | #5EC4FF | — |
| support.constant, support.variable | #70D1C8 | — |
| entity.name.tag | #FF5370 | — |
| entity.name.tag.html | #FF5370 | — |
| entity.name.tag.template, entity.name.tag.script, entity.name.tag.style | #C792EA | — |
| punctuation.definition.tag | #65737E | — |
| entity.other.attribute-name | #FFCB6B | — |
| entity.other.attribute-name.js, entity.other.attribute-name.ts, entity.other.attribute-name.jsx, entity.other.attribute-name.tsx | #FFCB6B | italic |
| meta.decorator, punctuation.decorator | #C3E88D | — |
| markup.heading, entity.name.section | #82AAFF | bold |
| markup.heading punctuation.definition.heading, punctuation.definition.heading.markdown | #FFCB6B | — |
| markup.bold | #F78C6C | bold |
| markup.italic | #C792EA | italic |
| markup.underline.link, markup.underline.link.markdown, markup.underline.link.image.markdown | #5EC4FF | — |
| string.other.link.title.markdown, string.other.link.description.markdown | #82AAFF | — |
| markup.inline.raw, markup.fenced_code, markup.inline.raw.markdown, markup.inline.raw.string.markdown | #C3E88D | — |
| markup.quote.markdown | #546E7A | — |
| punctuation.definition.list.begin.markdown, punctuation.definition.list.markdown, beginning.punctuation.definition.list.markdown | #CBD5E1 | — |
| support.type.property-name.json, meta.structure.dictionary.key.json | #5EC4FF | — |
| source.json meta.structure.dictionary.json > value.json > string.quoted.json, source.json meta.structure.array.json > value.json > string.quoted.json | #C3E88D | — |
| entity.other.attribute-name.class.css | #FFCB6B | — |
| entity.other.attribute-name.id.css | #82AAFF | — |
| support.type.property-name.css, meta.property-name.css | #5EC4FF | — |
| support.constant.property-value.css, meta.property-value.css | #C3E88D | — |
| support.constant.color.w3c-standard-color-name.css, support.constant.color.w3c-standard-color-name.scss | #FFCB6B | — |
| keyword.other.unit | #F78C6C | — |
| string.regexp | #89DDFF | — |
| keyword.operator.quantifier.regexp | #FFCB6B | — |
| constant.character.escape | #89DDFF | — |
| punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end, punctuation.section.embedded | #C792EA | — |
| invalid, invalid.illegal | #FF5370 | — |
| invalid.deprecated | #FFD93D | — |
| variable.parameter.function.language.python, variable.parameter.function.python | #FFCB6B | — |
| variable.parameter.function.language.special.self.python | #FF5370 | — |
| support.type.python | #70D1C8 | — |
| meta.function-call.generic.python | #82AAFF | — |
| meta.function.decorator.python, punctuation.definition.decorator.python, entity.name.function.decorator.python | #C3E88D | — |
| support.type.primitive.ts, support.type.builtin.ts, support.type.primitive.tsx, support.type.builtin.tsx | #70D1C8 | — |
| entity.name.function.js, entity.name.function.ts, support.function.console.js | #82AAFF | — |
| entity.name.function.macro.rust, meta.macro.rust | #82AAFF | — |
| entity.name.type.trait.rust | #FFCB6B | — |
| entity.name.type.contract.solidity, entity.name.type.interface.solidity | #FFCB6B | — |
| support.type.primitive.solidity, storage.type.solidity | #70D1C8 | — |
| source | #CBD5E1 | — |
| markup.bold | — | bold |
| markup.underline | — | underline |
| markup.strikethrough | — | strikethrough |
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}!`;
}
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}!`;
}
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}!`;
}
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}!`;
}