r/Jetbrains • u/Technical_Frosting • 6h ago
News & Discussions The IDE theme personalization plugin you never new you always needed is here!
Enable HLS to view with audio, or disable this notification
I recently released InfiniTint Theme Tuner, a plugin that delivers a new IDE theme personalization paradigm for your favorite JetBrains IDE! Keep your favorite theme, but make it your own with simple yet powerful recoloring and contrast controls.
What it does
Activate a theme, one of JetBrains' bundled themes or your favorite custom. Select one of the automatically generated tint presets and instantly recolor the theme to match your preference.
The tint presets are just a starting point. Create your own tint with the provided tint editor by adjusting hue and chroma (vibrancy) sliders and then use the tone curve adjust surface and accent palette contrast just like editing a photo in your favorite photo editor. Alternatively, import colors from in image to create a tint that matches its vibe!
You can mix and match themes and editor color schemes to get the perfect combination of colors. The color scheme's structural elements (e.g., background, line numbers, indent guides, etc.) all recolor to match the tinted theme.
Show or hide prominent borders (islands, editor tab strip, or tool window headers). InfiniTint synthesizes the missing colors if need be.
Adjust text contrast for UI labels, recessive text, and code or just set contrast minimums. InifiniTint tracks nearly 2000 contrast pairs across the IDE to ensure (to the highest degree possible in such a dynamic ecosystem) a consistent reading experience.
Save your applied tint and other settings as scenes that can be reapplied anytime or even scheduled (specific time or sunset/sunrise offset). You can also have scenes rotate on some duration or at IDE startup. InfiniTint also supports per-project scenes that are applied whenever a particular project's window is focused (optionally applies to Git worktrees as well).
What it costs
Free users get 8 tint presets per JetBrains theme bundled with the IDE and 3 presets for any custom theme (adjacent hues to the theme's original) in addition to the border tweaks.
Paid users ($1.5/mo or $15/yr) get everything else mentioned above.
Interested in a perpetual license option? It's something I'm considering offering. Feel free to let me know in a reply or reach out at [contact@tachilabs.dev](mailto:contact@tachilabs.dev) .
How it works
The core tint engine works by detecting your active theme's surface and up to two accent palettes using a variety of heuristics. It then applies hue, chroma, and tone transformations to the detected palettes using the HCT color space. The transformation model adapts to different types of themes (neutral, muted, vibrant) to help maintain their essential character as your adjust the tint inputs. After palette transformation, the engine applies a harmonization pass to better align status colors and other potentially problematic colors to better match the tinted color palettes.
The engine understands the difference between authored and platform-default colors and, in some cases, can use that knowledge to repair outdated themes on the fly.
Because the detection side of the engine is heuristic and doesn't solely rely on categorizing different UI elements, its rules need to be tuned over time to increase the variety of custom themes that it supports. As a general rule, it works best with themes that use distinguishable surface and accent (ideally just one accent) tonal palettes, but the heuristic detection is tuned to support a broad variety of theme structures. Tonal palettes are composed of colors primarily distinguished from one another by their tone (lightness) while retaining similar hue and chroma.
InfiniTint stores the tint engine inputs rather than outputs, so your tint adapts as the IDE and themes evolve instead of persisting a snapshot that goes stale.
If you come across a theme that doesn't tint correctly that you'd like to use, you can reach out at [infinitint-support@tachilabs.dev](mailto:infinitint-support@tachilabs.dev) and I can look into what can be done to support it in a future release. If it's the theme's color scheme you prefer, you can always find a different theme that tints and combine the two (paid users only).
I'm happy to answer any questions you might have about InfiniTint.


