Thrust, a theme for Rust.
A VSCode theme with minimal distractions and tasteful orange accents (other colors are available).
Thrust's colors and font styles are designed to be minimal and consistent. Many themes use large and varied color palettes, leading to information overload. Thrust uses a minimal one, making the code the focus and not the theme itself.
Despite this, by carefully choosing the colors and font styles, it intuitively conveys a large amount of information.
It is recommended to turn off bracket colorization when using Thrust to minimize color distractions (you can always toggle
them back on when you need them, using an extension such as
Why "a theme for Rust"?
Despite the name, the theme should work well in any language, I personally use it for C#, TypeScript, Python, and, of course, Rust.
I was writing Rust at the time, and read this blog post by Raul Jordan. In that blog post's code samples, I was drawn to the orange accents used for the keywords and operators, and the otherwise minimal use of color. The orange accents felt particularly well suited to the Rust language.
I was also fed up by with the multitude of arbitrary colors used by other themes which distracted from the code itself, and wanted to carefully craft my own theme with more intuitive colors and font styles.
Currently this repository generates the following theme variants:
Thrust Orange Stealth Example
The starting point for this repo was the Pale Fire repo by Alex Kladov. I then customized it to create the workflow I wanted, and started playing with the colors.
Like Pale Fire, this repo uses the Mottle crate by Luna Razzaghipour to build the theme files.
Theme Accent Colors
In addition to Thrust Orange, I created Red, Yellow and Green versions of the theme. This was mainly to ensure the workflow I had created was sufficiently flexible at creating variations on the primary theme, but if you like the others or want more options, let me know.
Customizing the Theme
This repository has a Dev Container configuration, so building your own
... to install the node dependencies (
... to generate the
You can then load the
As you customize the theme you can regenerate your
Where to start editing code?
If you want to customize the theme at a high level, start with
If you want to get into the weeds, look at
If you want to see where the base colors are created, look at
The repository is set up so that running ...
... will create a new minor version of the theme, run the tests, and push it.
The GitHub actions are then configured to publish the new version to the VSCode marketplace.
The Thrust logo was generated using Midjourney.
GPL3, like the Pale Fire repo it is based on.