Photonica
Publisher: Luke NiuThemes in package: 4
Photonica themes for VS code. Its soft colors will be helpful for you to get inspired.
Photonica themes for VS code. Its soft colors will be helpful for you to get inspired.
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 |
|---|---|---|
| #141414 | — | |
| comment | #787878 | |
| none | #141414 | — |
| punctuation.definition.comment | #646464 | |
| emphasis | — | italic |
| strong | — | bold |
| constant.numeric | #285078 | — |
| constant.numeric.json | #00783C | — |
| constant.numeric.julia | #2D5AB4 | — |
| constant | #504BA0 | — |
| constant.character, constant.other, constant.other.symbol | #504BA0 | — |
| constant.character.escape | #007882 | — |
| constant.language, constant.language.json | #007882 | — |
| ts.block.class.declaration.method.constant.numeric.decimal | #00783C | — |
| constant.numeric.c, constant.numeric.cpp | #007882 | — |
| constant.regexp | #008C64 | — |
| entity.name.class, entity.name.type.class, meta.class | #141414 | — |
| entity.name.function, meta.require | #0078C8 | — |
| entity.name.function.python | #0078C8 | — |
| entity.name.function.julia | #643CB4 | — |
| keyword.other.special-method | #0078C8 | — |
| meta.function-call | #505A64 | — |
| entity.name.tag | #963296 | — |
| entity.other.attribute-name | #963296 | — |
| entity.other.attribute-name.id | #008C64 | — |
| entity.other.inherited-class | #0078C8 | — |
| invalid.deprecated | #787878 | — |
| invalid.illegal | #B4283C | — |
| keyword | #F05A00 | — |
| keyword.operator | #0078B4 | — |
| keyword.operator.comparison, keyword.operator.logical | #0078B4 | — |
| keyword.other.new | #783CC8 | — |
| markup.bold | — | bold |
| markup.italic | — | italic |
| markup.changed | #963296 | — |
| markup.deleted | #787878 | — |
| markup.inserted | #288C50 | — |
| markup.quote | #643CC8 | — |
| markup.list | #3C3C3C | — |
| markup.heading punctuation.definition.heading, entity.name.section | #A03C8C | |
| string.other.link | #C8646E | — |
| meta.link, meta.paragraph.inline.link.underline.detected-link | #8C5AA0 | — |
| markup.raw.inline | #008C64 | — |
| meta.preprocessor | #0078C8 | — |
| meta.preprocessor.at-rule keyword.control.at-rule, meta.at-rule.import, keyword.control.at-rule | #506478 | — |
| punctuation | #3C5078 | — |
| punctuation.definition | #3C5078 | — |
| punctuation.definition.method-parameters | #3C5078 | — |
| punctuation.definition.function-parameters | #0078C8 | — |
| punctuation.definition.parameters | #282828 | — |
| punctuation.section.function | #282828 | — |
| punctuation.separator | #282828 | — |
| punctuation.section.function | #3C5078 | — |
| punctuation.support.type.property-name, support.type.property-name.json | #963296 | — |
| punctuation.support.type.property-name, support.constant.mathematical-symbols | #282828 | — |
| support.constant.mathematical-symbols | #282828 | — |
| punctuation.decorator.objectliteral.object.member.accessor | #282828 | — |
| punctuation.decorator.objectliteral.object.member.accessor | #282828 | — |
| block.brace.array.literal.square, block.brace.round, block.punctuation | #282828 | — |
| brace.array.literal.square, brace.type.square | #282828 | — |
| meta.brace, meta.brace.round, meta.brace.square | #282828 | — |
| punctuation.definition.tag | #282828 | — |
| punctuation.definition.comment, punctuation.end.definition.comment, punctuation.start.definition.comment | #505050 | — |
| punctuation.section | #282828 | — |
| punctuation.section.embedded, variable.interpolation | #282828 | — |
| punctuation.section.embedded.begin, punctuation.section.embedded.end | #282828 | — |
| punctuation.terminator | #0A826E | — |
| variable | #282828 | — |
| punctuation.definition.variable.php, variable.other.php | #0A826E | — |
| variable.other.c, variable.other.cpp | #282828 | — |
| variable.other | #0A826E | — |
| variable.other.property, variable.other.object.property | #0A826E | — |
| variable.language | #0078C8 | — |
| variable.parameter | #0A826E | — |
| variable.parameter.function, text.html.basic | #0A826E | — |
| punctuation.definition.variable | #0A826E | — |
| storage | #3C78C8 | — |
| storage.type | #6E50A0 | — |
| string | #3CA087 | — |
| string.regexp | #00783C | — |
| support.class | #0078C8 | — |
| support.class.console.js | #0078C8 | — |
| support.function.console.js | #0078C8 | — |
| support.constant | #0078C8 | — |
| support.function, support.function.any-method | #0078C8 | — |
| support.function.construct | #0078C8 | — |
| support.type | #7864A0 | — |
| support.type.exception | #0078C8 | — |
| token.debug-token | #7864A0 | — |
| token.error-token | #FF5064 | — |
| token.info-token | #A078E1 | — |
| token.warn-token | #3CA087 | — |
| constant.language.boolean.true.js, constant.language.boolean.false.js, constant.language.null.js | #7864A0 | — |
| meta.separator | #141414 | — |
| punctuation.separator.pointer-access.c | #0078C8 | — |
| source.c meta.preprocessor.include, source.c string.quoted.other.lt-gt.include | #3C5078 | — |
| source.cpp keyword.control.directive.conditional, source.cpp punctuation.definition.directive, source.c keyword.control.directive.conditional, source.c punctuation.definition.directive | #A078E1 | — |
| meta.selector, entity.other.attribute-name.class.css, entity.other.attribute-name.parent-selector-suffix.scss | #7864A0 | — |
| variable.css, variable.sass, variable.scss | #0078C8 | — |
| entity.scss.meta.property-list.punctuation.other.attribute-name.class.css.definition, entity.punctuation.other.attribute-name.class.css.definition, punctuation.definition.entity.css, meta.selector.css | #0078C8 | — |
| source.css constant.other.color.rgb-value, support.constant.named-color, meta.property-value constant, constant.other.color.rgb-value, constant.other.rgb-value.css, constant.other.color, constant.numeric.color.hex-value.scss, constant.numeric.color.hex-value.scss punctuation.definition.constant.scss | #00783C | — |
| keyword.other.important, token.literal.sass, meta.at-rule.keyword.other.unit.media, meta.scss.keyword.other.unit.property-list.property-value, property-list.scss.set.variable.keyword.unit, other.meta.scss.set.variable.keyword.unit.map, scss.meta.set.variable.keyword.other.unit, scss.meta.at-rule.keyword.property-list.other.unit.media | #0078C8 | |
| keyword.other.unit, keyword.other.unit.scss, keyword.other.unit.css, keyword.other.unit.scss | #00783C | |
| meta.property-group support.constant.property-value.css, meta.property-list.css meta.property-value.css, meta.property-value support.constant.property-value.css, meta.property-group support.constant.property-value.scss, meta.property-group support.constant.property-value.sass, meta.property-value support.constant.property-value.scss, meta.property-value support.constant.property-value.sass, .variable.parameter.misc.css, parameter.less.data-uri comment markup.raw, source.less meta.property-value.css, scss.meta.set.variable.constant.support.font-name, meta.property-value.scss | #50A0A0 | — |
| entity.property-list.other.attribute-name.pseudo-element.css, entity.property-list.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css | #7864A0 | — |
| meta.at-rule.constant.numeric.media, meta.property-list.property-value.constant.numeric, scss.meta.property-list.at-rule.media, property-list.scss.constant.numeric.variable.set, meta.scss.set.variable.constant.numeric.map, scss.meta.set.variable.constant.numeric, scss.meta.at-rule.property-list.constant.numeric.media, constant.numeric.css, constant.numeric.scss, constant.numeric.sass | #00783C | — |
| source.css meta.property-value | #0078C8 | — |
| source.css keyword.control.at-rule.media, source.css keyword.control.at-rule.media punctuation.definition.keyword | #783CC8 | — |
| source.css punctuation.definition.keyword | #82A0C8 | — |
| source.css support.type.property-name, support.type.property-name.css, support.type.property-name.scss, support.type.property-name.sass, meta.property-list.css meta.property-name.css, meta.property-list.scss meta.property-name.scss, entity.name.tag.custom.scss, meta.property-list.scss meta.property-name.sass, entity.name.tag.custom.sass | #786EB4 | — |
| entity.name.tag.scss, entity.name.tag.css | #963296 | — |
| entity.name.tag.reference.scss | #00783C | — |
| constant.character.escape.css, string.quoted.single.css | #50A0A0 | — |
| meta.constructor.argument.css, meta.constructor.argument.sass | #786EB4 | — |
| entity.other.attribute-name.attribute.scss | #C8646E | — |
| string.quoted.double.attribute-value.scss | #287850 | — |
| support.function.misc.scss, keyword.control.at-rule.function.scss, keyword.control.at-rule.function.scss punctuation.definition, entity.name.function.scss | #963296 | — |
| keyword.control.at-rule.import, keyword.control.at-rule.import punctuation.definition | #0078C8 | — |
| meta.at-rule.r.seturncss, meta.at-rule.return.scss punctuation.definition, meta.at-rule.else.scss, meta.at-rule.else.scss punctuation.definition,meta.at-rule.if.scss, meta.at-rule.if.scss punctuation.definition, | #F05000 | — |
| keyword.control.at-rule.media, keyword.control.at-rule.media punctuation.definition | #783CC8 | — |
| support.type.property-name.media | #0078C8 | — |
| scss.meta.at-rule.import.string.quoted.single | #3C7878 | — |
| keyword.control.at-rule.mixin.scss, keyword.control.at-rule.mixin.scss punctuation.definition | #783CC8 | — |
| keyword.control.at-rule.include, keyword.control.at-rule.include punctuation.definition | #3C5078 | — |
| keyword.control.at-rule.font-face, keyword.control.at-rule.font-face punctuation.definition | #00783C | — |
| keyword.control.at-rule.keyframes.scss, keyword.control.at-rule.keyframes.scss punctuation.definition | #A078E1 | — |
| meta.at-rule.keyframes.scss entity.other.attribute-name.scss | #3C5078 | — |
| keyword.control.content.scss, keyword.control.content.scss punctuation.definition | #00783C | — |
| source.diff meta.diff.range.context | #0A826E | — |
| source.diff meta.diff.header.from-file | #0A826E | — |
| source.diff punctuation.definition.from-file | #0A826E | — |
| source.diff punctuation.definition.range | #0A826E | — |
| source.diff punctuation.definition.separator | #82A0C8 | — |
| source.go constant.other.placeholder.go | #3C5078 | — |
| source.java comment.block.documentation.javadoc punctuation.definition.entity.html | #82A0C8 | — |
| source.java constant.other | #00783C | — |
| source.java keyword.other.documentation | #008C64 | — |
| source.java keyword.other.documentation.author.javadoc | #008C64 | — |
| source.java keyword.other.documentation.directive, source.java keyword.other.documentation.custom | #F05000 | — |
| source.java keyword.other.documentation.see.javadoc | #F05000 | — |
| source.java meta.method-call meta.method | #82A0C8 | — |
| source.java meta.tag.template.link.javadoc, source.java string.other.link.title.javadoc | #783CC8 | — |
| source.java meta.tag.template.value.javadoc | #00783C | — |
| source.java punctuation.definition.keyword.javadoc | #506478 | — |
| source.java punctuation.definition.tag.begin.javadoc, source.java punctuation.definition.tag.end.javadoc | #00783C | — |
| source.java storage.modifier.import | #0A826E | — |
| source.java storage.modifier.package | #0A826E | — |
| source.java storage.type | #0A826E | — |
| source.java storage.type.annotation | #C8646E | — |
| source.java storage.type.generic | #963296 | — |
| source.java storage.type.primitive | #963296 | — |
| source.js punctuation.decorator, source.js meta.decorator variable.other.readwrite, source.js meta.decorator entity.name.function | #C8646E | — |
| meta.js.function.punctuation.definition.block.comment.line.double-slash, js.function.punctuation.definition.block.object.objectliteral.member.comment.line.double-slash | #8C8C8C | |
| source.js meta.object-literal.key | #7864A0 | — |
| meta.object-literal.key, meta.object.member.object-literal.key, meta.object-literal.key.js entity.name.function.js | #7864A0 | — |
| source.js storage.type.class.jsdoc | #963296 | — |
| source.js string.template punctuation.definition.template-expression | #6482B4 | — |
| source.js string.template meta.template.expression support.variable.property, source.js string.template meta.template.expression variable.other.object | #282828 | — |
| source.js support.type.primitive | #82A0C8 | — |
| source.js meta.var.expr variable.other.object | #0A826E | — |
| source.js variable.other.readwrite.alias | #0A826E | — |
| comment.block.documentation.js, comment.block.documentation.js punctuation.definition.comment.js | #8C8C8C | — |
| keyword.operator.expression.typeof.js | #F05000 | — |
| variable.other.readwrite.js, variable.other.object.js | #008C64 | — |
| variable.parameter.js | #AA8CAF | — |
| function.storage.type.block.js | #F05000 | — |
| support.function.dom.js | #7864A0 | — |
| text.html.basic constant.character.entity.html | #505A64 | — |
| punctuation.definition.entity.html | #008C64 | — |
| comment.block.html | #8C8C8C | |
| text.html.basic | #0A826E | — |
| text.html.basic constant.other.inline-data | #7864A0 | italic |
| text.html.basic meta.tag.sgml.doctype | #6482B4 | — |
| text.html.basic punctuation.definition.entity | #82A0C8 | — |
| keyword.control.html.elements, entity.name.tag.inline.any.html, entity.name.tag.block.any.html | #963296 | — |
| invalid.illegal.bad-ampersand.html | #3CA087 | — |
| meta.tag.any.html entity.other.attribute-name.html, meta.tag.block.any.html entity.other.attribute-name.html, meta.tag.inline.any.html entity.other.attribute-name.html, meta.tag.other.html entity.other.attribute-name.html, source.js.embedded.html entity.other.attribute-name.html | #82A0C8 | — |
| string.quoted.double.html, meta.template string.quoted.double | #00783C | — |
| string.quoted.double.html invalid.illegal.bad-ampersand.html | #0078C8 | — |
| source.properties entity.name.section.group-title.ini | #0078C8 | — |
| source.properties punctuation.separator.key-value.ini | #3C5078 | — |
| text.html.markdown markup.fenced_code.block, text.html.markdown markup.fenced_code.block punctuation.definition | #7864A0 | — |
| markup.heading | #7864A0 | — |
| text.html.markdown markup.inline.raw, text.html.markdown markup.inline.raw punctuation.definition.raw | #008C64 | — |
| text.html.markdown markup.italic | — | italic |
| text.html.markdown beginning.punctuation.definition.list | #786EB4 | — |
| text.html.markdown beginning.punctuation.definition.quote | #7864A0 | — |
| text.html.markdown markup.quote | #7864A0 | — |
| text.html.markdown punctuation.definition.heading | #82A0C8 | — |
| text.html.markdown punctuation.definition.constant, text.html.markdown punctuation.definition.string | #82A0C8 | — |
| text.html.markdown constant.other.reference.link, text.html.markdown string.other.link.description, text.html.markdown string.other.link.title | #C8646E | — |
| source.php meta.function-call, source.php meta.function-call.object | #3C5078 | — |
| constant.numeric.php | #00783C | — |
| punctuation.section.embedded.begin.php, punctuation.section.embedded.end.php, punctuation.section.embedded.begin.metatag.php, punctuation.section.embedded.end.metatag.php | #282828 | — |
| string.quoted.single.js, string.quoted.double.json, meta.structure.dictionary.value.json, meta.string.quoted.embedded.line.php.source.single.string-contents | #3CA087 | — |
| punctuation.definition.variable.php, variable.other.php | #0A826E | — |
| keyword.control.php | #C8646E | — |
| punctuation.terminator.expression.php | #0A826E | — |
| meta.tag.any.html.string.quoted.double.embedded.line.php.source.constant.language.inline, meta.embedded.line.php.source.constant.language | #7864A0 | — |
| meta.block.embedded.php.source.comment.documentation.phpdoc | #8C8C8C | — |
| source.python entity.name.function.decorator, source.python meta.function.decorator support.type | #A0A0A0 | — |
| source.python meta.function-call, source.python meta.function-call.generic | #3C5078 | — |
| source.python support.type | #A078E1 | — |
| source.python variable.parameter.function.language | #0078C8 | — |
| source.python meta.function.parameters variable.parameter.function.language.special.self | #0078C8 | — |
| source.css.scss punctuation.definition.interpolation.begin.bracket.curly, source.css.scss punctuation.definition.interpolation.end.bracket.curly, punctuation.definition.interpolation.begin.bracket.curly.scss, punctuation.definition.interpolation.end.bracket.curly.scss | #282828 | — |
| source.css.scss variable.interpolation | #282828 | italic |
| constant.character.escape.scss, string.quoted.single.scss, scss.meta.set.variable.string.quoted.single | #3CA087 | — |
| source.sass entity.other.attribute-name.placeholder.sass, source.sass entity.other.attribute-name.placeholder.sass punctuation.definition.entity.sass, source.scss entity.other.attribute-name.placeholder.scss, source.scss entity.other.attribute-name.placeholder.scss punctuation.definition.entity.scss, entity.other.attribute-name.placeholder.scss | #82A0C8 | — |
| source.ts punctuation.decorator, source.ts meta.decorator variable.other.readwrite, source.ts meta.decorator entity.name.function | #3C5078 | — |
| entity.name.function.ts, punctuation.decorator.ts | #3C5078 | — |
| ts.block.class.method.declaration.comment.line.double-slash, ts.class.comment.line.double-slash, ts.punctuation.definition.decorator.objectliteral.object.member.array.literal.comment.line.double-slash | #8C8C8C | |
| keyword.control.export.ts, keyword.control.flow.ts | #F05A00 | — |
| punctuation.accessor.ts | #3C5078 | — |
| entity.name.type.ts | #3C5078 | — |
| storage.modifier.ts | #0A826E | — |
| source.ts meta.object-literal.key | #7864A0 | — |
| source.ts meta.object-literal.key entity.name.function | #7864A0 | — |
| source.ts support.class, source.ts entity.name.class | #0078C8 | — |
| source.ts support.type | #7864A0 | — |
| source.ts entity.name.type | #7864A0 | — |
| block.variable.other.object.class.declaration.property.method.ts, block.variable.other.object.class.declaration.method.ts, block.variable.other.object.array.literal.class.declaration.method.var.expr.ts, block.variable.class.declaration.method.parameter.arrow, ts.block.variable.other.class.declaration.property.method.ts | #3C5078 | — |
| block.variable.other.object.class.declaration.method.ts, block.variable.other.object.array.literal.class.declaration.method.var.expr.tsblock.variable.class.declaration.method.parameter.arrow.ts, block.variable.other.class.declaration.property.method.ts | #3C5078 | — |
| ts.keyword.control.block.class.method.declaration.flow | #506478 | — |
| source.ts support.constant.math, source.ts support.constant.dom, source.ts support.constant.json | #50A0A0 | — |
| source.ts support.variable | #282828 | — |
| meta.type.annotation.ts | #C8646E | — |
| ts.class.storage.modifier.declaration.method.parameters | #3C78C8 | — |
| ts.block.string.quoted.single, ts.string.quoted.single.class.field.declaration | #3CA087 | — |
| ts.block.objectliteral.object.member.class.declaration.method.language.constant.boolean | #7864A0 | — |
| ts.block.variable.class.declaration.method.parameter.arrow | #3C5078 | — |
| support.type.class.declaration.method.return.primitive.ts, type.annotation.support.class.declaration.method.parameters.primitive.ts | #82A0C8 | — |
| ts.entity.name.class.type.method.declaration.parameters.return, ts.punctuation.definition.begin.class.type.method.declaration.parameters.return.typeparameters, ts.punctuation.definition.end.class.type.method.declaration.parameters.return.typeparameters, ts.block.entity.name.class.type.method.declaration.parameters.new.expr, ts.block.punctuation.definition.begin.class.type.method.declaration.parameters.typeparameters.new.expr, ts.block.punctuation.definition.end.class.type.method.declaration.parameters.typeparameters.new.expr, ts.block.objectliteral.object.member.object-literal.key.class.declaration.method | #82A0C8 | — |
| variable.language.this.ts | #008C64 | — |
| text.xml entity.name.tag.namespace | #963296 | — |
| text.xml keyword.other.doctype | #F06400 | — |
| text.xml meta.tag.preprocessor entity.name.tag | #963296 | — |
| text.xml string.unquoted.cdata, text.xml string.unquoted.cdata punctuation.definition.string | #C8646E | italic |
| source.yaml entity.name.tag | #963296 | — |
TypeScript sample highlighted with this variant's colors and tokenColors.
Loading...
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}!`;
}