Noctis is a collection of light & dark themes with a well balanced blend of warm and cold medium contrast colors.
The theme is designed to:
- be easy on the eyes thus reducing the eye strain
- give semantic meaning to theme's colors
Noctis comes in 11 versions, 8 are dark and 3 are light.
- Noctis, Noctis Sereno & Noctis Obscuro background is a very saturated very dark cold bluish cyan
- Noctis Azureus' background is a very saturated very dark cold azure
- Noctis Bordo's background is a very unsaturated very dark warm rose
- Noctis Uva's background is a unsaturated dark cold blue. For those with more spartan taste
- Noctis Minimus' background offers a version of the Azureus palette with much lower saturation. (Thank you Draevin for your contribution)
- Noctis Viola's background is a saturated very dark cold violet
- Noctis Lux' background is a very saturated very light warm orange
- Noctis Hibernus' background is a very unsaturated very light cold bluish cyan
- Noctis Lilac's background is a very unsaturated very light cold blue
- Apex (requires Salesforce Extension Pack extension)
- C/C++
- C#
- Clojure
- CoffeeScript
- Crystal (requires Crystal Language extension)
- CSS
- Sass/SCSS
- Cucumber (Gerkin) (requires Cucumber (Gherkin) Full Support extension)
- Dart (requires Dart extension)
- Elm (requires elm extension)
- Elixir (requires ElixirLS: Elixir support and debugger extension)
- Erlang (requires erlang extension)
- F#
- Go
- GraphQL (requires GraphQL extension)
- Groovy
- Haskell (requires Haskell Syntax Highlighting extension)
- HLSL
- HTML
- EJS
- Handlebars
- Pug/Jade
- Java
- JavaScript
- JSON
- React/JSX
- Typescript/TSX
- Julia (requires Julia extension)
- Kotlin (requires Kotlin extension)
- Lua (requires Lua extension)
- Markup
- AsciiDoc (requires AsciiDoc extension)
- LaTeX (requires LaTeX Workshop extension)
- Markdown
- MJML (requires MJML extension)
- Nim (requires Nim extension)
- Objective-C
- Ocaml (requires reason-vscode extension)
- PHP
- Laravel Blade
- Twig (requires Twig Language 2 extension)
- PlantUML (requires PlantUML extension)
- PowerShell
- Python
- R
- ReasonML (requires reason-vscode extension)
- Ruby
- Rust
- Scala (requires Scala Syntax extension)
- SQL
- Shell Script
- Swift
- Terraform (requires Terraform extension)
- Vala (requires Vala Code extension)
- Visual Basic
- Other
- Apache Conf (requires Apache Conf extension)
- TOML (requires Better TOML extension)
I plan on adding support for new languages in the upcoming releases. Please feel free to open an issue if you'd like a new language supported or if you think something is off.
The color names were matched using the excellent online tools Name that Color and Color Name & Hue
Noctis can be installed by clicking on Ctrl + Shift + X on Windows or ⇧ + ⌘ + X on Mac and then searching for "Noctis".
Beginning with v7.21.0 the theme building process has been simplified. I started off with the idea used in Lucy theme and came up with this theme generator powered by Node.js. This will allow me or any contributor to easily add/suggest new theme variants or changes to the existing ones. In ./src/
folder you will find:
syntax.mjs
→ syntax tokens based on the language grammar installedcolors.mjs
→ the colors used for syntax highlighting./src/workbench/
→ all eight theme versions containing Workbench/UI colors
After you make a change in any of the above files you need to use npm run build
command. The build output folder is ./themes/
Happy hacking!
Matteo Campinoti | Draevin | Will Hoskings | Dang Trung Kien | CertainLach |
This theme was inspired by the themes VS Dark, Solarized, Vue, Cobalt2, One Dark, Dracula, Pure Syntax and many others.