Aperture Theme
Publisher: Ryan OlsonThemes in package: 25
A collection of popular VS Code color schemes re-engineered into a gradient of highlight levels. Choose your Aperture from f/22 (minimal) to f/2.8 (vibrant) for the perfect visual focus.
A collection of popular VS Code color schemes re-engineered into a gradient of highlight levels. Choose your Aperture from f/22 (minimal) to f/2.8 (vibrant) for the perfect visual focus.
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 | #A6ACB9 | — |
| string, support.type.property-name.json | #99C794 | — |
| meta.template.expression | #d8dee9 | — |
| punctuation.definition - punctuation.definition.numeric.base | #5FB4B4 | — |
| constant.numeric | #F9AE58 | — |
| storage.type.numeric | #C695C6 | italic |
| constant.language | #EC5F66 | italic |
| constant.character, constant.other | #C695C6 | — |
| variable.member | #EC5F66 | — |
| punctuation.separator, punctuation.terminator | #A6ACB9 | — |
| punctuation.section | #FFFFFF | — |
| punctuation.accessor | #A6ACB9 | — |
| punctuation.definition.annotation | #5FB4B4 | — |
| support.constant | #C695C6 | italic |
| invalid | #EC5F66 | bold |
| invalid.deprecated | #F9AE58 | bold |
| source.yaml string.unquoted | #D8DEE9 | — |
| markup.heading | — | bold |
| markup.heading punctuation.definition.heading | #F97B58 | — |
| markup.heading.1 punctuation.definition.heading | #EC5F66 | — |
| string.other.link, markup.underline.link | #6699CC | — |
| markup.bold | — | bold |
| markup.italic | — | italic |
| markup.underline | — | underline |
| markup.italic markup.bold | markup.bold markup.italic | — | italic bold |
| markup.underline markup.bold | markup.bold markup.underline | — | bold underline |
| markup.underline markup.italic | markup.italic markup.underline | — | italic underline |
| markup.bold markup.italic markup.underline | markup.bold markup.underline markup.italic | markup.italic markup.bold markup.underline | markup.italic markup.underline markup.bold | markup.underline markup.bold markup.italic | markup.underline markup.italic markup.bold | — | bold italic underline |
| punctuation.definition.thematic-break | #F9AE58 | — |
| markup.list.numbered.bullet | #99C794 | — |
| markup.quote punctuation.definition.blockquote, markup.list punctuation.definition.list_item | #F9AE58 | — |
| markup.raw | — | — |
| markup.raw.inline | — | — |
| (text punctuation.definition.italic | text punctuation.definition.bold) | #C695C6 | — |
| meta.diff, meta.diff.header | #C695C6 | — |
| markup.deleted | #EC5F66 | — |
| markup.inserted | #99C794 | — |
| markup.changed | #F9AE58 | — |
| constant.numeric.line-number.match | #EC5F66 | — |
| message.error | #EC5F66 | — |
| token.info-token | #6796E6 | — |
| token.warn-token | #CD9731 | — |
| token.error-token | #F44747 | — |
| token.debug-token | #B267E6 | — |
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}!`;
}