HLJS-like Dark
Publisher: Skara22Themes in package: 1
Minimal dark theme inspired by highlight.js — crafted for developers who love clean syntax, balanced contrast, and perfect readability across C++, HTML, CSS, JS, PHP, and more.
Minimal dark theme inspired by highlight.js — crafted for developers who love clean syntax, balanced contrast, and perfect readability across C++, HTML, CSS, JS, PHP, and more.
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.line.double-slash.cpp, punctuation.definition.comment.cpp | #9b9b9b | — |
| meta.encoding.cpp, string.quoted.double.cpp, string.quoted.double.raw.cpp, string.quoted.other.lt-gt.include.cpp, string.quoted.single.cpp | #00a67d | — |
| constant.language.false.cpp, constant.language.true.cpp, constant.numeric.binary.cpp, constant.numeric.decimal.cpp, constant.numeric.hexadecimal.cpp, constant.numeric.octal.cpp, entity.name.function.member.cpp, keyword.other.unit.binary.cpp, keyword.other.unit.hexadecimal.cpp, keyword.other.unit.octal.cpp, entity.name.function.definition.cpp | #df3079 | — |
| entity.name.type.parameter.cpp, entity.name.type.struct.cpp, keyword.operator.and.cpp, meta.arguments.operator.sizeof, storage.type.primitive.cpp | #e9950c | — |
| storage.type.class.cpp, storage.type.modifier.access.control.public.cpp, storage.type.struct.cpp, storage.type.union.cpp, storage.modifier.consteval.cpp, keyword.other.constinit.cpp, storage.modifier.constexpr.cpp, keyword.control.co_await.cpp, keyword.control.co_yield.cpp, keyword.control.co_return.cpp, storage.type.namespace.alias.cpp, storage.type.namespace.definition.cpp, storage.type.namespace.directive.cpp, keyword.other.typedef.cpp | #2e95d3 | — |
| entity.name.function.call.cpp, entity.name.function.preprocessor.cpp, entity.name.scope-resolution.cpp, entity.name.type.cpp, entity.other.attribute.deprecated.cpp, entity.other.attribute.maybe_unused.cpp, entity.other.attribute.noreturn.cpp, entity.other.attribute.nodiscard.cpp, keyword.operator.and_eq.cpp, keyword.operator.arithmetic.cpp, keyword.operator.assignment.cpp, keyword.operator.bitor.cpp, keyword.operator.bitwise.shift.cpp, keyword.operator.cast.dynamic_cast.cpp, keyword.operator.comparison.cpp, keyword.operator.compl.cpp, keyword.operator.decrement.cpp, keyword.operator.functionlike.cpp, keyword.operator.increment.cpp, keyword.operator.noexcept.cpp, keyword.operator.not.cpp, keyword.operator.wordlike.cpp, meta.arguments.operator.alignof, meta.function.definition.cpp, punctuation.separator.dot-access.cpp, punctuation.separator.scope-resolution.cpp, storage.modifier.reference.cpp, storage.modifier.virtual.cpp, storage.modifier.specifier.functional.pre-parameters.inline.cpp, storage.type.modifier.access.control.protected.cpp, support.other.attribute.cpp, variable.lower-case.cpp, variable.other.object.access.d.cpp, variable.snake-case.cpp | #FDFDFDFF | — |
| keyword.control.directive.conditional.defined.cpp, keyword.control.directive.conditional.else.cpp, keyword.control.directive.conditional.if.cpp, keyword.control.directive.conditional.ifndef.cpp, keyword.control.directive.define.cpp, keyword.control.directive.else.cpp, keyword.control.directive.elif.cpp, keyword.control.directive.endif.cpp, keyword.control.directive.include.cpp, keyword.control.directive.pragma.cpp, keyword.control.directive.undef.cpp, keyword.control.if.cpp, keyword.control.return.cpp, keyword.other.default.constructor.cpp, keyword.other.static-assert.cpp, meta.preprocessor.macro.cpp, punctuation.definition.directive.cpp | #2e95d3 | — |
| keyword.control.break.cpp, keyword.control.case.cpp, keyword.control.continue.cpp, keyword.control.default.cpp, keyword.control.do.cpp, keyword.control.for.cpp, keyword.control.goto.cpp, keyword.control.switch.cpp, keyword.control.throw.cpp, keyword.control.while.cpp, keyword.operator.sizeof.cpp, keyword.other.concept.cpp, keyword.other.default.destructor.cpp, keyword.other.export.cpp, keyword.other.module.cpp, keyword.other.operator.overload.cpp, keyword.other.using.directive.cpp, parameters.virtual.cpp, storage.modifier.lambda.constexpr.cpp, storage.modifier.specifier.const.cpp, storage.modifier.specifier.functional.post-parameters.const.cpp, storage.modifier.specifier.functional.post-parameters.noexcept.cpp, storage.modifier.specifier.functional.post-parameters.override.cpp, storage.modifier.specifier.functional.pre-parameters.constexpr.cpp, storage.modifier.specifier.functional.pre-parameters.explicit.cpp, storage.modifier.specifier.functional.pre-parameters.friend.cpp, storage.modifier.specifier.functional.pre-parameters.mutable.cpp, storage.modifier.specifier.functional.pre-parameters.virtual.cpp, storage.modifier.specifier.static.cpp, storage.modifier.specifier.thread_local.cpp, storage.modifier.specifier.volatile.cpp, storage.type.template.argument.typename.cpp, storage.type.template.cpp, variable.other.unknown.import.cpp | #2e95d3 | — |
| entity.name.label.call.cpp, entity.name.label.cpp, variable.other.unknown.label1.cpp | #f22c3d | — |
| punctuation.definition.comment.html | #9b9b9b | — |
| entity.other.attribute-name.html | #df3079 | — |
| text.html.derivative | #FFFFFFFF | — |
| invalid.deprecated.entity.other.attribute-name.html | #e9950c | — |
| punctuation.definition.string.begin.html, string.quoted.double.html | #00a67d | — |
| meta.tag.metadata.script.start.html, meta.tag.metadata.script.end.html, entity.name.tag.html | #2e95d3 | — |
| meta.tag.metadata.style.start.html, meta.tag.metadata.style.end.html | #C586C0FF | — |
| comment.block.css | #9b9b9b | — |
| entity.name.tag.css, keyword.operator.combinator.css, constant.numeric.css, punctuation.separator.list.comma.css | #FDFDFDFF | — |
| meta.selector.css, variable.css | #df3079 | — |
| meta.property-name.css, string.quoted.double.css, support.type.property-name.media.css | #00a67d | — |
| entity.other.attribute-name.id.css | #f22c3d | — |
| punctuation.definition.keyword.css, keyword.control.at-rule.media.css | #2e95d3 | — |
| meta.function.color.css | #e9950c | — |
| comment.line.double-slash.js, comment.block.js | #9b9b9b | — |
| storage.type.js, storage.type.function.js, storage.type.property.js, storage.modifier.async.js | #e9950c | — |
| constant.numeric.decimal.js, variable.other.property.js | #df3079 | — |
| string.quoted.single.js, string.quoted.double.js | #00a67d | — |
| constant.language.boolean.true.js, constant.language.boolean.false.js, constant.language.undefined.js, constant.language.null.js, storage.type.class.js, storage.modifier.js, variable.language.this.js, new.expr.js, keyword.control.loop.js, keyword.control.switch.js, keyword.control.trycatch.js | #2e95d3 | — |
| source.js, meta.object-literal.key.js, string.template.js, meta.block.js, variable.object.property.js, keyword.control.flow.js | #FDFDFDFF | — |
| source.php, text.html.php | #FDFDFDFF | — |
| comment.line.double-slash.php | #9b9b9b | — |
| keyword.control.declare.php, keyword.other.namespace.php, keyword.other.use.php, storage.type.function.php, storage.type.const.php, storage.type.class.php, storage.modifier.php, storage.type.enum.php, storage.type.interface.php, constant.language.php, keyword.control.return.php, keyword.control.if.php, keyword.control.else.php, keyword.control.for.php, keyword.control.foreach.php, keyword.control.do.php, keyword.control.while.php, keyword.control.exception.catch.php, keyword.control.exception.php, support.function.construct.output.php | #2e95d3 | — |
| entity.name.type.namespace.php, punctuation.definition.string.begin.php, string.quoted.single.php, string.quoted.double.php, string.unquoted.heredoc.php, punctuation.definition.string.php, string.unquoted.nowdoc.php | #00a67d | — |
| support.class.builtin.php, support.class.php, entity.name.type.class.php, entity.name.function.php, support.function.var.php, support.function.info.php | #e9950c | — |
| constant.other.class.php, entity.name.type.enum.php, keyword.other.type.php, entity.name.type.interface.php, constant.numeric.decimal.php | #df3079 | — |
| source.json, source.json.comments, source.jsonc | #FDFDFDFF | — |
| punctuation.definition.comment.json, punctuation.definition.comment.json.comments, punctuation.definition.comment.jsonc | #9b9b9b | — |
| string.json, string.json.comments, string.comment.jsonc | #e9950c | — |
| string.quoted.double.json, string.quoted.double.json.comments, string.quoted.double.comment.jsonc | #00a67d | — |
| constant.numeric.json, constant.numeric.json.comments, constant.numeric.comment.jsonc | #df3079 | — |
| constant.language.json, constant.language.json.comments, constant.language.comment.jsonc | #2e95d3 | — |
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}!`;
}