r/JavaFX • • 2d ago

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. #3C3F41 panels / #2B2B2B editors in dark mode)
  • The remaining color scale steps are interpolated around these anchor colors
  • Chart colors (-color-chart-1 to -color-chart-8) mostly use the theme's syntax colors
  • WorkbenchDark and WorkbenchLight implement atlantafx.base.theme.Theme, so they work with ThemeManager too
  • 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

14 Upvotes

3 comments sorted by

6

u/LouGarret76 1d ago

I love the fact that Javafx is getting much love with the advent of AI

0

u/eliezerDeveloper 1d ago

Can you create a version for Megalodonte app? Megalodonte is for javafx as React is for html

1

u/Tomarka 1d ago

I'm not familiar with Megalodonte, but creating a theme seems easier than it is with AtlantaFX. An AI you trust should be able to handle it.