Schalk's Profile
A personal VS Code profile extension combining a bespoke colour theme, curated typography defaults, and a hand-picked set of extensions for frontend and web standards development.
Prerequisites
This extension sets Monaspace Neon Frozen as the editor font. You must install the font on your machine before the typography defaults will take effect.
Download it from the Monaspace GitHub releases page. Install the fonts prefixed with MonaspaceNeonFrozen for your operating system.
Once installed, restart VS Code to ensure the font is picked up correctly.
What is included
Neon Wave theme
A dark theme built on a ten-colour palette running from hot pink (#F72585) through violet and deep indigo to electric cyan (#4CC9F0). The palette is mapped deliberately:
- Keywords — hot pink (
#F72585)
- Types and classes — magenta (
#B5179E)
- Functions and methods — sky blue (
#4895EF)
- Strings — cyan (
#4CC9F0)
- Variables and properties — indigo (
#4361EE)
- Constants and numbers — violet (
#7209B7)
- Comments — muted indigo (
#56509A), italicised
- Editor background — deep navy (
#0D0B1E)
Semantic highlighting is enabled, so token colours adapt to the language server's understanding of the code rather than relying solely on grammar-based TextMate scopes.
Typography
| Setting |
Value |
| Font family |
Monaspace Neon Frozen |
| Editor font size |
18px |
| Terminal font size |
16px |
| Line height |
1.7 |
| Ligatures |
Enabled (all features via Frozen variant) |
Extension pack
Editor defaults
Beyond typography, the following editor preferences are set:
- Format on save enabled for all languages
- Prettier assigned as default formatter for CSS, SCSS, Less, JS, TS, HTML, JSON, and Markdown
- Red Hat YAML assigned as default formatter for YAML files
- Minimap disabled
- Sticky scroll enabled
- Bracket pair colourisation enabled with active pair guides
- Inlay hints set to off unless pressed
- Linked editing enabled (rename paired HTML tags simultaneously)
- Whitespace rendering set to
boundary (shows spaces at line boundaries only)
- Rulers at 80 and 120 characters
- Smooth scrolling and smooth cursor animation enabled
Overriding defaults
All settings applied by this extension are defaults. They occupy the lowest priority level in VS Code's settings hierarchy, meaning your user settings and workspace settings will always take precedence. Override anything freely in your settings.json.
Building and installing locally
You will need the @vscode/vsce CLI tool:
npm install -g @vscode/vsce
From the root of this repository:
vsce package
This produces a .vsix file. Install it with:
code --install-extension schalkneethling.schalk-profile-1.0.0.vsix
Or via the VS Code command palette: Extensions: Install from VSIX…
Licence
MIT