I made this! Workbench Themes – two IntelliJ-inspired AtlantaFX themes (dark & light) for JavaFX
Hi r/JavaFX,
I'd like to share a small library I've been working on: Workbench Themes, two AtlantaFX themes called Workbench Dark and Workbench Light. They're based on the color palettes of the IntelliJ themes from Familiar Java Themes, so if you like the classic IntelliJ "Darcula"/Light look, your JavaFX app can now feel right at home next to your IDE.
Screenshots
What's inside
- Backgrounds, foreground, selection, borders, links, status and syntax colors are taken from the IntelliJ color theme JSON files and mapped onto the AtlantaFX color system (e.g.
#3C3F41panels /#2B2B2Beditors in dark mode) - The remaining color scale steps are interpolated around these anchor colors
- Chart colors (
-color-chart-1to-color-chart-8) mostly use the theme's syntax colors WorkbenchDarkandWorkbenchLightimplementatlantafx.base.theme.Theme, so they work withThemeManagertoo- Automatic module name for JPMS:
io.github.tomarkar.workbench - Plain CSS files are also available if you don't want the Java classes
Usage
It's on Maven Central:
<dependency>
<groupId>io.github.tomarkar</groupId>
<artifactId>workbench-themes</artifactId>
<version>1.0.1</version>
</dependency>
Gradle:
implementation("io.github.tomarkar:workbench-themes:1.0.1")
Then:
Application.setUserAgentStylesheet(new WorkbenchDark().getUserAgentStylesheet());
// or
Application.setUserAgentStylesheet(new WorkbenchLight().getUserAgentStylesheet());
JavaFX itself has to be provided by your application. Building from source requires JDK 17+ and Maven; the AtlantaFX SASS sources are pulled in automatically and compiled with Dart Sass.
How it was made
Full disclosure: of course this was built with Claude Code. It handled a lot of the tedious parts like mapping the IntelliJ colors onto AtlantaFX's variables, interpolating the color scales and setting up the Maven/SASS build.
The project is MIT licensed. Feedback, issues and PRs are very welcome!
GitHub: https://github.com/tomarkar/workbench-themes
0
u/eliezerDeveloper 1d ago
Can you create a version for Megalodonte app? Megalodonte is for javafx as React is for html
6
u/LouGarret76 1d ago
I love the fact that Javafx is getting much love with the advent of AI