NOTE: Check out this newer blog entry for more details on Nimbus and for easier-to-see screenshots.

At least a year ago, perhaps longer, some of my friends at Sun showed me the designs for a custom look Sun had designed for the Java Desktop System called Nimbus. At the time I was advocating that Sun create a “frickin’ cool amazing cross-platform look-and-feel” and I was impressed at how well Nimbus could fit that bill — or at least how much better it was than Metal / Ocean.

Back then, Sun had no plans to create a Swing look-and-feel around Nimbus. I’m pleased to say that work is now under way to do just that. The Swing Team and I have partnered to create an open-source project around an effort to take the detailed specifications of Nimbus (along with an existing implemention of Nimbus as a GTK theme as a guide) and implement it as a Swing look-and-feel (actually, a Synth skin).

Experienced Swing UI wizards like Jasper Potts (of Xerto fame) and Romain Guy (who needs no introduction), and popular independent software vendors FormDev Software and JIDE Software have already begun work to support Nimbus. Jasper has by far made the most significant contribution to the coding effort, having implementing the majority of the components in the spec already.

I’ll be posting a bit more info on Nimbus, but for now, here are a few screen shots of Nimbus application mock-ups and some of the specs.

StarOffice Mockup of Nimbus
Normal Size Widgets

Smaller Widgets

34 thoughts on “Desktop Matters: Announcing Nimbus

  1. Hey,

    You did some great work. Sure it looks promising. Look like you have used lots of images, What about performance ?

    Can’t wait to get my hand dirty with this thing.


  2. Well, I hope you don’t hit any wall because of Synth… it was buggy as hell the last time I tried to use it.

  3. What about the specs themselves, i’m sure it would be really interesting to see how to document a look and feel, the last 2 screenshots have wet my appetite 🙂

  4. It would be nice to see a shot in bigger size. this way i can’t tell what is what. otherwise, looks promising.

  5. Petro: You can actually view the screenshots in their original size on Flickr, but you have to login. Sorry, I didn’t realize this limitation when I uploaded them there (requirement to login) and the terms of service prevent me from linking to the original size. What a pain… when I get a chance, I’ll upload the full versions to my own server.

  6. Why implemented as a Swing look-and-feel (Synth skin). Shouldn’t I see exactly the same look-and-feel when the GTK LAF is selected? The same reason I see the Human theme in Ubuntu (through the ubuntulooks engine, or the clearlooks engine in another distro).

  7. Rob: The idea is not to make Swing on JDS emulate GTK Nimbus on JDS; the idea is to make the Nimbus look-and-feel available cross-platform. Thus, a GTK impl of Nimbus is not terribly helpful to all those folks using Swing on non-Linux / non-Solaris platforms.

  8. >Good to hear about the new swing look and feel Nimbus.
    >I wish the team to beat the Windows vista look with new Nimbus Look and Feel.

  9. Well I have looked all over and I cant find any nimbus libraries that I can use, just vague references to empty directories. Sometimes I think techies lose sight of the goal, to design user friendly applications, websites, blogs,… Thank god for Karsten.

  10. Shure, nimbus L&F looks much better then Metal/Ocean, but my opinion is, that it isn’t state of the art L&F. To compete with Vista or Mac, it shud be something more. I still prefer liquid L&F.


  11. The big size of the fonts kills this L&F. Guys, please don’t let fonts doom another CPL&F.

    And I think at least some part of the collective excitement (I’m in the collection) at this L&F comes simply from relief at the talk of a Metal/Ocean replacement. Fresh and neat as Nimbus is, it’s safely below the state of the art or even catchy.

  12. Sumit: Wait until Nimbus is implemented before casting too much judgment. We’ve got some interesting plans for it. While I agree Nimbus doesn’t pioneer, and I’m worried about potential changes to Aqua making it look obsolete just as its done, I think Nimbus does provide a way for xplaf Java apps to look very polished and with some nice effects built-in, it can compete with Aqua and Aero.

  13. Ben, I heartedly hope you are right. I was speaking merely on the basis of looking at the current state of the SwingSet2 demo.

    For that matter, I was hoping that the same idea would strike you about the look presented in Aerith. But it looks like that inspiration struck the Apple guys first (look at iPhone and those shiny black buttons!).

  14. Sumit: Yeah, SwingSet2 isn’t a great way to showcase *any* look-and-feel. Just keep in mind that Nimbus has a long ways to go before its done.

    Black is cool. Still, I think Nimbus will be very cool when its done.

  15. Romain, yes, I think an Aerith based L&F would be cool. More so if the feel could use some ideas from the forthcoming animation framework. A L&F high on eye candy.

  16. Hi,
    Nimbus looks OK but I can see it becoming very tired-looking very quickly like Ocean (those scroll bars are butt-ugly for example). I think the real solution to the Java default L&F conundrum is to bundle kirill’s Substance L&F with the JRE. It is by far the most advanced and flexible L&F. Just my 2cents.

  17. I also want the Aerith L&F for our application.
    Currently, I’m using JTatoo L&F instead. (with custom colored button).

  18. Sumit: I thought many times about making Aerith’s look a full-fledged look and feel but I have always decided against it. I simply don’t think such a look and feel would work well with most applications. That said, Aerith’s code and resources are open so feel free to reuse them to create such a LaF. I could even open source the Photoshop files I used to come up with the look.

    CommanderKeith: Substance can be seen as bloated too. There are many (cool) features that are not that useful. Besides, it still needs, in my opinion, a lot of work to look really good (most themes are really awful, only the last few ones are getting better.)

  19. Perhaps Nibus should be the default L&F for JDK 7. Just as long as I can use a native filechooser with it.

  20. This is a really great look and feel , In fact its probably the best I have seen so far.Regarding the other great look and feel – substance, I share the same concerns ,its over bloated ,has features that are seldom used in a real applications,and if I may be so bold – it just looks like a poor mans version of a MACOSX AQUA – Sorry to those guyz that worked so hard on it , please do not waste any more time on useless features and animations etc..

  21. Ben,

    Why can’t Java 1.5 people get this look n feel to work?

    Good job by the way!


  22. Look and feel looks great. I would like to use a diffrent font, specifically one that supports unicode( I want to display Chinese characters). In Synthetica I can set a font, but nimbus does not provide this feature:
    SyntheticaLookAndFeel.setFont(“Arial Unicode MS”, 14);


  23. how does nimbus look ‘n feel take effect to the entire GUI ?

    because when i launch nimbus.. it takes limited effect to the GUIs. I don’t know why. i took the try & catch… but it limits to the gui.

    was there anybody would know how to apply this nimbus look ‘n feel to take effect entirely?


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s