Infinity 64 Theme by Shingo Murata
Publisher: Markus RaffertyThemes in package: 2
Infinity 64 blackboard & whiteboard themes featuring monochrome syntax highlighting
Infinity 64 blackboard & whiteboard themes featuring monochrome syntax highlighting
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 |
|---|---|---|
| markup.deleted.diff | #C04 | — |
| markup.inserted.diff | #4C4 | — |
| meta.diff.header.from-file | #4CC | — |
| meta.diff.header.to-file | #44C | — |
| meta.diff.range | #48C | — |
| constant.language, source.editorconfig constant.language | #FFFFBB | — |
| constant.language.boolean, punctuation.section.embedded.begin.php, punctuation.section.embedded.end.php | #FF77FF | — |
| constant.integer, constant.numeric, keyword.other.unit.hexadecimal, meta.tag.preprocessor.xml, meta.tag.preprocessor.xml string.quoted.double.xml, meta.tag.metadata.doctype.html entity.name.tag.html, meta.tag.metadata.doctype.html entity.other.attribute-name.html, meta.tag.metadata.doctype.html punctuation.definition.tag.begin.html, meta.tag.metadata.doctype.html punctuation.definition.tag.end.html | #BBBBFF | — |
| constant.character.escape, constant.language.null, constant.language.undefined, constant.other.color, support.constant.color, markup.table.markdown, fenced_code.block.language.markdown, punctuation.definition.markdown | #BBBBBB | — |
| constant.float, meta.shebang.shell | #77FFBB | — |
| text.html, source.tsx meta.tag.tsx, source.tsx meta.jsx.children, text.xml, meta.embedded.block.html, meta.embedded.block.xml | #6BA6A6 | — |
| punctuation.definition.tag.apacheconf, entity.name.tag.html, entity.other.attribute-name.html, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, punctuation.separator.key-value.html, entity.name.tag.tsx, punctuation.definition.tag.begin.tsx, punctuation.definition.tag.end.tsx, meta.tag.tsx keyword.operator.assignment, meta.tag.xml, punctuation.separator.key-value.xml | #668646 | — |
| string.value.apacheconf, meta.tag.structure entity.name.tag.html, entity.other.attribute-name.tsx, meta.tag entity.name.tag.localname.xml | #91C25F | — |
| meta.tag.custom entity.name.tag.html, text.html constant.character.entity, meta.tag.metadata.title.start entity.name.tag.html, meta.tag.metadata.title.end entity.name.tag.html, text.xml constant.character.entity, entity.name.tag.namespace.xml, keyword.other.unit.octal.c | #BBFF77 | — |
| entity.tag.apacheconf, meta.attribute.id entity.other.attribute-name.html, meta.attribute.name entity.other.attribute-name.html, entity.other.attribute-name.localname.xml, support.class.component.tsx | #A6E16B | — |
| string.quoted.double.html, markup.inline.raw.string.markdown, meta.tag.tsx string.quoted.double.tsx, string.quoted.double.xml | #7BA453 | — |
| string.quoted.single.html, string.quoted.single.xml | #91C25F | — |
| invalid.deprecated.entity.other.attribute-name.html, comment.block.html, punctuation.definition.comment.html, comment.block.xml, punctuation.definition.comment.xml | #51683A | — |
| meta.attribute.unrecognized.hx-get punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-post punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-put punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-delete punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-patch punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-trigger punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-swap punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-target punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-headers punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-ext punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-preserve punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-sync punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-indicator punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-disable punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-boost punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-confirm punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-encoding punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-params punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-validate punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-select punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-on punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-push-url punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-replace-url punctuation.separator.key-value.html, meta.attribute.unrecognized.hx-history-elt punctuation.separator.key-value.html | #664666 | — |
| meta.attribute.unrecognized.hx-get entity.other.attribute-name.html, meta.attribute.unrecognized.hx-post entity.other.attribute-name.html, meta.attribute.unrecognized.hx-put entity.other.attribute-name.html, meta.attribute.unrecognized.hx-delete entity.other.attribute-name.html, meta.attribute.unrecognized.hx-patch entity.other.attribute-name.html, meta.attribute.unrecognized.hx-trigger entity.other.attribute-name.html, meta.attribute.unrecognized.hx-swap entity.other.attribute-name.html, meta.attribute.unrecognized.hx-target entity.other.attribute-name.html, meta.attribute.unrecognized.hx-headers entity.other.attribute-name.html, meta.attribute.unrecognized.hx-ext entity.other.attribute-name.html, meta.attribute.unrecognized.hx-preserve entity.other.attribute-name.html, meta.attribute.unrecognized.hx-sync entity.other.attribute-name.html, meta.attribute.unrecognized.hx-indicator entity.other.attribute-name.html, meta.attribute.unrecognized.hx-disable entity.other.attribute-name.html, meta.attribute.unrecognized.hx-boost entity.other.attribute-name.html, meta.attribute.unrecognized.hx-confirm entity.other.attribute-name.html, meta.attribute.unrecognized.hx-encoding entity.other.attribute-name.html, meta.attribute.unrecognized.hx-params entity.other.attribute-name.html, meta.attribute.unrecognized.hx-validate entity.other.attribute-name.html, meta.attribute.unrecognized.hx-select entity.other.attribute-name.html, meta.attribute.unrecognized.hx-on entity.other.attribute-name.html, meta.attribute.unrecognized.hx-push-url entity.other.attribute-name.html, meta.attribute.unrecognized.hx-replace-url entity.other.attribute-name.html, meta.attribute.unrecognized.hx-history-elt entity.other.attribute-name.html | #BB77BB | — |
| meta.attribute.unrecognized.hx-get string.quoted.double.html, meta.attribute.unrecognized.hx-post string.quoted.double.html, meta.attribute.unrecognized.hx-put string.quoted.double.html, meta.attribute.unrecognized.hx-delete string.quoted.double.html, meta.attribute.unrecognized.hx-patch string.quoted.double.html, meta.attribute.unrecognized.hx-trigger string.quoted.double.html, meta.attribute.unrecognized.hx-swap string.quoted.double.html, meta.attribute.unrecognized.hx-target string.quoted.double.html, meta.attribute.unrecognized.hx-headers string.quoted.double.html, meta.attribute.unrecognized.hx-ext string.quoted.double.html, meta.attribute.unrecognized.hx-preserve string.quoted.double.html, meta.attribute.unrecognized.hx-sync string.quoted.double.html, meta.attribute.unrecognized.hx-indicator string.quoted.double.html, meta.attribute.unrecognized.hx-disable string.quoted.double.html, meta.attribute.unrecognized.hx-boost string.quoted.double.html, meta.attribute.unrecognized.hx-confirm string.quoted.double.html, meta.attribute.unrecognized.hx-encoding string.quoted.double.html, meta.attribute.unrecognized.hx-params string.quoted.double.html, meta.attribute.unrecognized.hx-validate string.quoted.double.html, meta.attribute.unrecognized.hx-select string.quoted.double.html, meta.attribute.unrecognized.hx-on string.quoted.double.html, meta.attribute.unrecognized.hx-push-url string.quoted.double.html, meta.attribute.unrecognized.hx-replace-url string.quoted.double.html, meta.attribute.unrecognized.hx-history-elt string.quoted.double.html | #915F91 | — |
| source.c, source.cpp, source.php, source.python, source.rust, keyword.other.phpdoc.php, meta.other.type.phpdoc.php, string.quoted.single.php, punctuation.separator.delimiter.php, punctuation.terminator.expression.php, meta.embedded.block.c, meta.embedded.block.cpp, meta.embedded.block.php, meta.embedded.block.python, meta.embedded.block.rust, meta.attribute.unrecognized.:value.html punctuation.separator.key-value.html | #864646 | — |
| source.c keyword.control, source.c storage.type.modifier, source.c storage.modifier.specifier, keyword.operator.comparison.c, storage.modifier.reference.c, source.c keyword.operator.assignment, source.c keyword.operator.increment, source.c keyword.operator.decrement, punctuation.separator.pointer-access.c, entity.name.scope-resolution.function.call.c, punctuation.definition.begin.bracket.square.c, punctuation.definition.end.bracket.square.c, source.cpp keyword.control, source.cpp storage.type.modifier, source.cpp storage.modifier.specifier, keyword.operator.comparison.cpp, storage.modifier.reference.cpps, source.cpp keyword.operator.assignment, source.cpp keyword.operator.increment, source.cpp keyword.operator.decrement, punctuation.separator.pointer-access.cpp, entity.name.scope-resolution.function.call.cpp, punctuation.definition.begin.bracket.square.cpp, punctuation.definition.end.bracket.square.cpp, keyword.operator.increment-decrement.php, keyword.operator.comparison.php, variable.other.class.php, variable.language.this.php, punctuation.definition.variable.php, punctuation.section.array.begin.php, punctuation.section.array.end.php, support.type.python, support.variable.magic.python, punctuation.definition.list.begin.python, punctuation.definition.list.end.python, variable.language.self.rust, punctuation.brackets.square.rust, meta.attribute.unrecognized.:value.html string.quoted.double.html | #C25F5F | — |
| keyword.control.directive.include.c, keyword.control.return.c, source.c keyword.operator.bitwise, keyword.operator.c, keyword.operator.logical.c, keyword.operator.arithmetic.c, keyword.control.directive.include.cpp, keyword.control.return.cpp, source.cpp keyword.operator.bitwise, keyword.operator.cpp, keyword.operator.logical.cpp, keyword.operator.arithmetic.cpp, storage.modifier.final.php, storage.modifier.reference.php, entity.name.type.namespace.php, entity.name.class.php, entity.name.type.class.php, entity.other.inherited-class.php, keyword.control.return.php, keyword.control.declare.php, keyword.control.exception.php, keyword.operator.logical.php, keyword.operator.arithmetic.php, keyword.operator.assignment.php, support.function.construct.begin.blade, support.function.construct.end.blade, begin.bracket.round.blade.php, end.bracket.round.blade.php, source.python keyword.operator, keyword.control.flow.python, keyword.control.import.python, storage.type.function.python, keyword.blade, keyword.other.rust, keyword.operator.borrow.and.rust, meta.attribute.unrecognized.:value.html entity.other.attribute-name.html | #FF7777 | — |
| meta.preprocessor.include.c, entity.name.scope-resolution.c, entity.name.type.c, entity.name.type.class.templated.c, storage.modifier.specifier.functional.post-parameters.noexcept.c, storage.type.class.c, entity.name.function.constructor.c, keyword.operator.noexcept.c, punctuation.separator.scope-resolution.c, meta.preprocessor.include.cpp, entity.name.scope-resolution.cpp, entity.name.type.cpp, entity.name.type.class.templated.cpp, storage.modifier.specifier.functional.post-parameters.noexcept.cpp, storage.type.class.cpp, entity.name.function.constructor.cpp, keyword.operator.noexcept.cpp, punctuation.separator.scope-resolution.cpp, meta.namespace.php, keyword.other.use.php, storage.type.class.php, storage.modifier.implements.php, support.class.php, support.class.builtin.php, entity.name.function.python, constant.character.format.placeholder.other.python, source.python support.other.parenthesis.regexp, storage.type.rust, keyword.other.fn.rust | #E16B6B | — |
| entity.name.function.call.c, storage.modifier.specifier.const.c, storage.type.c, storage.type.template.c, source.c storage.type.template.argument, storage.type.primitive.c, entity.name.type.parameter.c, entity.name.function.call.initializer.c, source.c variable.other.object, punctuation.section.arguments.begin.bracket.round.c, entity.name.function.call.cpp, storage.modifier.specifier.const.cpp, storage.type.cpp, storage.type.template.cpp, source.cpp storage.type.template.argument, storage.type.primitive.cpp, entity.name.type.parameter.cpp, entity.name.function.call.initializer.cpp, source.cpp variable.other.object, punctuation.section.arguments.begin.bracket.round.cpp, variable.other.php, entity.name.function.php, meta.function-call.php, keyword.other.new.php, keyword.operator.class.php, keyword.operator.key.php, keyword.operator.ternary.php, storage.type.function.php, string.quoted.double.php, source.python variable.parameter, source.python string.quoted.docstring, variable.legacy.builtin.python, storage.modifier.declaration.python, storage.type.string.python, support.function.builtin.python, meta.function-call.generic.python, source.python constant.character.set.regexp, source.python constant.character.escape.regexp, variable.other.rust, entity.name.function.macro.rust, entity.name.type.rust, entity.name.type.numeric.rust | #A45353 | — |
| comment.block.c, comment.block.c punctuation.definition.comment, comment.block.documentation.c, comment.block.documentation.c punctuation.definition.comment, comment.line.double-slash.c, comment.line.double-slash.c punctuation.definition.comment, comment.line.double-slash.documentation.c, comment.line.double-slash.documentation.c punctuation.definition.comment, comment.block.cpp, comment.block.cpp punctuation.definition.comment, comment.block.documentation.cpp, comment.block.documentation.cpp punctuation.definition.comment, comment.line.double-slash.cpp, comment.line.double-slash.cpp punctuation.definition.comment, comment.line.double-slash.documentation.cpp, comment.line.double-slash.documentation.cpp punctuation.definition.comment, comment.block.documentation.phpdoc.php, comment.block.documentation.phpdoc.php punctuation.definition.comment, comment.block.php, comment.block.php punctuation.definition.comment, comment.line.double-slash.php, comment.line.double-slash.php punctuation.definition.comment, comment.line.number-sign.php, comment.line.number-sign.php punctuation.definition.comment, comment.line.number-sign.python, comment.line.number-sign.python punctuation.definition.comment | #683A3A | — |
| source.apacheconf, source.js, source.nginx, source.ts, source.tsx, source.js comment.block storage.type, source.js entity.name.type.instance.jsdoc, meta.attribute.unrecognized.wire:model punctuation.separator.key-value.html, meta.attribute.unrecognized.wire:click punctuation.separator.key-value.html, meta.attribute.unrecognized.wire:submit punctuation.separator.key-value.html, meta.attribute.unrecognized.wire:loading.attr punctuation.separator.key-value.html, meta.attribute.unrecognized.x-data punctuation.separator.key-value.html, meta.embedded.block.js, meta.embedded.block.javascript, meta.embedded.block.ts, meta.embedded.block.typescript, meta.embedded.block.tsx, punctuation.accessor.tsx, support.variable.property.tsx, variable.other.property.tsx, variable.other.object.property.tsx, meta.object.member.tsx, meta.var.expr.tsx, meta.var.expr meta.brace.round.tsx, meta.var.expr meta.parameters.tsx | #466686 | — |
| keyword.core.apacheconf, source.js keyword.operator, source.js keyword.control.import, source.js keyword.control.from, source.js keyword.control.export, source.js storage.type, storage.type.numeric.bigint.js, entity.name.type.class.js, entity.other.inherited-class.js, storage.type.directive.context.nginx, source.ts keyword.operator, source.ts keyword.control.import, source.ts keyword.control.from, source.ts keyword.control.export, source.ts storage.type, storage.type.numeric.bigint.ts, entity.name.type.class.ts, entity.other.inherited-class.ts, source.tsx keyword.operator, source.tsx keyword.control.import, source.tsx keyword.control.from, source.tsx keyword.control.export, source.tsx storage.type, storage.type.numeric.bigint.tsx, entity.name.type.class.tsx, entity.other.inherited-class.tsx, punctuation.section.embedded.begin.tsx, punctuation.section.embedded.end.tsx, meta.attribute.unrecognized.wire:model entity.other.attribute-name.html, meta.attribute.unrecognized.wire:click entity.other.attribute-name.html, meta.attribute.unrecognized.wire:submit entity.other.attribute-name.html, meta.attribute.unrecognized.wire:loading.attr entity.other.attribute-name.html, meta.attribute.unrecognized.x-data entity.other.attribute-name.html, meta.attribute.event-handler.error.html | #77BBFF | — |
| keyword.rewrite.apacheconf, entity.helper.apacheconf, punctuation.terminator.nginx, keyword.operator.nginx | #6BA6E1 | — |
| string.regexp.apacheconf, meta.function-call.js, variable.other.readwrite.js, variable.other.object.js, variable.parameter.js, punctuation.definition.block.js, meta.brace.square.js, variable.language.this.js, storage.modifier.js, entity.name.context.location.nginx, keyword.directive.nginx, string.regexp.nginx, meta.function-call.ts, variable.other.readwrite.ts, variable.other.object.ts, variable.parameter.ts, punctuation.definition.block.ts, meta.brace.square.ts, variable.language.this.ts, storage.modifier.ts, meta.function-call.tsx, variable.other.readwrite.tsx, variable.other.object.tsx, variable.parameter.tsx, punctuation.definition.block.tsx, meta.brace.square.tsx, variable.language.this.tsx, storage.modifier.tsx, meta.attribute.unrecognized.wire:model string.quoted.double.html, meta.attribute.unrecognized.wire:click string.quoted.double.html, meta.attribute.unrecognized.wire:submit string.quoted.double.html, meta.attribute.unrecognized.wire:loading.attr string.quoted.double.html, meta.attribute.unrecognized.x-data string.quoted.double.html | #5F91C2 | — |
| string.replacement.apacheconf, variable.misc.apacheconf, punctuation.variable.apacheconf, string.quoted.single.js, string.quoted.double.js, source.js keyword.control, entity.name.function.js, punctuation.variable.nginx, string.quoted.single.ts, string.quoted.double.ts, source.ts keyword.control, entity.name.function.ts, string.quoted.single.tsx, string.quoted.double.tsx, source.tsx keyword.control, entity.name.function.tsx, string.template.tsx | #537BA4 | — |
| source.apacheconf comment.line, source.apacheconf comment.line punctuation.definition.comment, comment.line.double-slash.js, comment.line.double-slash.js punctuation.definition.comment, comment.block.documentation.js, comment.block.documentation.js punctuation.definition.comment, comment.block.js, comment.block.js punctuation.definition.comment, source.nginx comment.line, source.nginx comment.line punctuation.definition.comment, comment.line.double-slash.ts, comment.line.double-slash.ts punctuation.definition.comment, comment.block.documentation.ts, comment.block.documentation.ts punctuation.definition.comment, comment.block.ts, comment.block.ts punctuation.definition.comment, comment.line.double-slash.tsx, comment.line.double-slash.tsx punctuation.definition.comment, comment.block.documentation.tsx, comment.block.documentation.tsx punctuation.definition.comment, comment.block.tsx, comment.block.tsx punctuation.definition.comment | #3A5168 | — |
| source.css, meta.attribute.class punctuation.separator.key-value.html, meta.embedded.block.css | #868646 | — |
| keyword.control.at-rule.import.css, keyword.control.at-rule.media.css, keyword.control.at-rule.keyframes.css, keyword.other.important.css, punctuation.definition.property-value.css, punctuation.definition.property-name.css, entity.name.tag.wildcard.css, keyword.control.at-rule.css, variable.parameter.url.css, source.css keyword.other.unit, meta.attribute.class entity.other.attribute-name.html | #FFFF77 | — |
| entity.name.tag.css, entity.other.keyframe-offset.css, source.css support.constant, source.css support.function, meta.attribute.class string.quoted.double.html | #C2C25F | — |
| source.css variable, meta.at-rule.media.header.css, string.quoted.single.css, string.quoted.double.css, entity.other.attribute-name.class.css, entity.other.attribute-name.id.css, entity.other.attribute-name.pseudo-class.css | #A4A453 | — |
| comment.block.css, comment.line.css | #68683A | — |
| source.json, source.yaml, meta.embedded.block.json, meta.embedded.block.yaml | #864666 | — |
| entity.name.tag.yaml | #C25F91 | — |
| string.quoted.double.json, string.unquoted.block.yaml, punctuation.definition.alias.yaml, punctuation.definition.anchor.yaml, punctuation.definition.block.sequence.item.yaml, punctuation.separator.map.value.yaml | #FF77BB | — |
| support.type.property-name.json, string.unquoted.plain.out.yaml, variable.other.alias.yaml, variable.other.anchor.yaml | #A4537B | — |
| punctuation.definition.comment.json, source.json comment.line.double-slash.js, comment.line.number-sign.yaml | #683A51 | — |
| source.editorconfig, source.env, source.ignore, source.ini, source.toml, meta.embedded.block.editorconfig, meta.embedded.block.env, meta.embedded.block.ignore, meta.embedded.block.ini, meta.embedded.block.toml | #915FC2 | — |
| keyword.other.definition.root.editorconfig | #BB77FF | — |
| source.editorconfig keyword.other, string.quoted.double.env, keyword.other.definition.ini, support.type.property-name.toml | #664686 | — |
| source.editorconfig meta.section.header, string.unquoted.env, string.quoted.double.ini, support.type.property-name.table.toml | #915FC2 | — |
| variable.other.env | #A66BE1 | — |
| comment.line.number-sign.editorconfig, comment.line.number-sign.editorconfig punctuation.definition.comment, comment.line.number-sign.env, comment.line.number-sign.env punctuation.definition.comment, comment.line.number-sign.ini, comment.line.number-sign.ini punctuation.definition.comment | #513A68 | — |
| source.shell, meta.embedded.block.shell | #866646 | — |
| keyword.operator.pipe.shell, keyword.operator.redirect.shell, keyword.operator.glob.shell, source.shell constant | #FFBB77 | — |
| variable.other.normal.shell, punctuation.definition.variable.shell, support.function.builtin.shell | #C2915F | — |
| source.shell keyword.control, variable.other.assignment.shell, string.unquoted.argument | #A47B53 | — |
| entity.name.command.shell | #E1A66B | — |
| comment.line.number-sign.shell | #68513A | — |
| text.html.markdown, meta.embedded.block.markdown | — | — |
| markup.bold.markdown, markup.list.markdown, meta.separator.markdown, punctuation.definition.list.begin.markdown, meta.attribute.alt entity.other.attribute-name.html, meta.attribute.title entity.other.attribute-name.html | #77BBBB | — |
| markup.heading.markdown, markup.italic.markdown, markup.horizontal.rule.markdown | #6BA6A6 | — |
| string.other.link.title.markdown, markup.inline.raw.markdown, markup.raw.block.markdown, meta.attribute.alt string.quoted.double.html, meta.attribute.title string.quoted.double.html | #5F9191 | — |
| markup.underline.link.markdown, markup.quote.markdown | #537B7B | — |
| meta.paragraph.markdown, punctuation.definition.link.title.begin.markdown, punctuation.definition.link.title.end.markdown, punctuation.definition.metadata.markdown, meta.attribute.alt punctuation.separator.key-value.html, meta.attribute.title punctuation.separator.key-value.html | #466666 | — |
| markup.strikethrough.markdown, markup.footnote.markdown | #3A5151 | — |
| text.html.django, meta.embedded.block.django | — | — |
| entity.other.django.delimiter.tag, entity.other.django.delimiter.variable | #866686 | — |
| keyword.control.django, meta.scope.django.tag, keyword.operator.assignment.django, keyword.operator.arithmetic.django | #FFBBFF | — |
| variable.language.django, punctuation.other.django | #C291C2 | — |
| variable.other.django.block, variable.other.django.attribute, string.quoted.double.django | #A47BA4 | — |
| variable.other.django | #C291C2 | — |
| text.csv rainbow1 | #BBFF77 | — |
| text.csv keyword.rainbow2 | #BB77BB | — |
| text.csv keyword.rainbow3 | #FF7777 | — |
| text.csv keyword.rainbow4 | #77BBBB | — |
| text.csv keyword.rainbow5 | #FFFF77 | — |
| text.csv keyword.rainbow6 | #FF77BB | — |
| text.csv keyword.rainbow7 | #BB77FF | — |
| text.csv keyword.rainbow8 | #FFBB77 | — |
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}!`;
}