I was playing with Thinlets last night mocking up a UI for a lightweight Java aggregator I call Jagger. Jagger shares a lot of code with the Journal, so I'm sorta developing it in parallel. All my code's all over the place so "parallel" is really just a euphemism for "whichever piques my interest at this moment"...
The idea is to produce something similar to Aggie. It drives me nuts the thought that someone out there is downloading a 20meg virus called the ".Net runtime" just to see how Aggie works. I was thinking that using Java and Velocity I should be able to quickly do something similar and hopefully discourage people from getting involved with that MS stuff... Not that I don't want people to use Aggie - which is a cool open source app - I just don't like it's baggage. Aggie, by the way, works like this: You add in your RSS URLs to the list, and then when you want to see the latest, you click the "Go!" button and it goes and downloads all the RSS and uses a template to produce a long html page with all the news. There's no scheduling piece or anything, but that's sort of okay. Until you're ready to see the news, there's no real reason to continually go and grab it. It's definitely very useful.
Here's my thoughts on Thinlets: Very cool, if seriously lacking. I didn't realize before, but all the widgets aren't Swing widgets with a different skin, they're hand-drawn AWT components! Now that I can see the code (thanks Robert!) I can see exactly what is going on and it's definitely a work of love. It's great having access to do the code - I was able to add an icon to the app by quickly modifying the FrameLauncher class for example last night and see some other stuff too. However, the downside to not using Swing is that you can't use the HTMLEditor classes to display the contents of the RSS like NetNewswire Lite, but the speed and size of Thinlets definitely makes up for that. But hey, Swing is there in all the Java runtimes now, it's a shame not to use it.
Anyways, I mocked up this:
Please don't get any ideas, this is PURE VAPOR. It's all just UI. But I will say that I immediately fell in love with describing my UI using XML. What a GREAT way to do the interface!. It was like working with VB again... You just write out what you want stuff to do, and poof, it's there - go write the handlers now. Awesome.
Now that I'm sold on the whole UI as XML idea, I'm going to seriously dive into that free Mozilla book. But once again, it's too bad that Luxor is GPL which I'm not a big fan of. I may have to start playing with it anyways because XUL's that cool.