Serial Experiments Lain inspired theme for VS Code.
Dark, light, and high-contrast variants.
Download lain-theme-(version).vsix and run:
code --install-extension lain-theme-(version).vsixRestart VS Code and select the theme via File > Preferences > Color Theme (Ctrl+K Ctrl+T).
Add to settings.json:
"workbench.colorTheme": "Lain (Dark)",
// ----- Custom Fonts (from assets/fonts) -----
// After installing the font files, use the exact font family name.
// Placeholders: "LainFont-Regular", "LainMono", "LainCode"
"editor.fontFamily": "JetBrainsMonoNL Nerd Font Propo",
"editor.fontLigatures": true,
"editor.fontSize": 14,
"editor.lineHeight": 1.6,
"editor.letterSpacing": 0.5,
// ----- Terminal font (optional) -----
"terminal.integrated.fontFamily": "JetBrainsMono Nerd Font Mono",
"terminal.integrated.fontSize": 13,
// ----- Editor enhancements -----
"editor.cursorStyle": "line",
"editor.cursorBlinking": "phase",
"editor.renderWhitespace": "boundary",
"editor.renderLineHighlight": "all",
"editor.smoothScrolling": true,
"editor.minimap.enabled": false,
"editor.scrollBeyondLastLine": false,
// ----- Workbench appearance -----
"workbench.iconTheme": "vscode-celestial-magic-girl-icon-theme", // or your preferred icon theme
"workbench.tree.indent": 16,
"workbench.startupEditor": "none",
// ----- Files & Explorer -----
"files.autoSave": "onFocusChange",
// ----- Breadcrumbs -----
"breadcrumbs.enabled": true,
"breadcrumbs.filePath": "on",
// ----- Extras -----
"editor.guides.bracketPairs": true,
"editor.guides.indentation": true,
"editor.matchBrackets": "always"
The extension has a manual update check. Run it to see if a newer version is out.
Open VS Code.
Open the Command Palette:
Windows/Linux: Ctrl + Shift + P
Mac: Cmd + Shift + P
Type Lain: Check for Updates and press Enter.
The extension will tell you if an update exists.
Don't run Lain: Check for Updates inside a terminal or command prompt. It's a VS Code command, not a system command.
This will not work:
C:\Users\username>Lain: Check for Updates
That just gives an error. Run it only from VS Code's Command Palette.
If a newer version is available:
Download the latest .vsix file from the project's releases page.
Then install it in VS Code:
Open Command Palette (Ctrl+Shift+P) choose Extensions: Install from VSIX, and pick the downloaded file.
Run this in your terminal:
code --install-extension extension-name.vsix
The new version will replace the old one automatically.
Prerequisites: Node.js (v14 or later), Git.
git clone https://github.com/Haymawon/lain_theme.git
cd lain_theme
npm install # installs @vscode/vsce
node build.js # generates theme JSON files in themes/
node validate.js # (optional) checks contrast ratios
npx vsce package # creates lain-theme vsixThen install the .vsix as shown above.
node validate.jsManual theme generation (without packaging)
node build.jsThemes are written to themes/lain-dark.json, themes/lain-light.json, themes/lain-high-contrast.json. Copy them manually if needed.
License GPL-3.0 License.


