What is Griffon
Griffon is a Grails like application framework for developing desktop applications in the JVM, with Groovy being the primary language of choice. Inspired by Grails, Griffon follows the Convention over Configuration paradigm, paired with an intuitive MVC architecture and a command line interface. Griffon also follows the spirit of the Swing Application Framework (JSR 296), it defines a simple yet powerful application life cycle and event publishing mechanism. Another interesting feature comes from the Groovy language itself: automatic property support and property binding (inspired by BeansBinding (JSR 295)), which makes creating observable beans and binding to their properties a snap! As if property binding was not enough Groovy's SwingBuilder also simplifies building multi-threaded applications, say goodbye to the ugly gray rectangle (the bane of Swing apps)!
Grails developers should feel right at home when trying out Griffon. Many of Grails' conventions and commands are shared with Griffon. Granted, Swing is not the same as HTML/GSP but Builders simplify the task of creating the UI.
Seasoned Java developers will also be able to pick up the pace quickly, as the framework relieves you of the burden of maintaining an application structure, allowing you to concentrate on getting the code right.
The Griffon framework is extensible via Plugins. There are many to choose from. For example you'll find plugins for 3rd party Swing components like Swingx, Jide and Macwidgets; persistence related plugins like DataSource, GSQL, Ebean and Db4o among others; 3D graphics and animation support is possible via JOGL, LWJGL and Processing. And many more!
Learn all about the Groovy Ecosystem at GR8Conf
If you're interested in all those great technologies of the Groovy ecosystem, including Grails, Gradle, Griffon, Spock, Gaelyk, and more, be sure to join the Groovy fans at the GR8Conf conference which takes place in Copenhagen, Denmark, on June 6th - 8th. GR8Conf is an affordable conference dedicated to that ecosystem, where you'll learn about the latest novelties and development of those Groovy-powered technologies by the makers themselves, and where you'll have a chance to network with the Groovy users out there.
Where do I start?
- Download - links to the latest stable release, you can also find previous releases
- Documentation - links to other projects related to Griffon (Builders and Plugins for example) and other documentation sources
Griffon in Action
Latest News
The Griffon team is happy to announce the release of Griffon 0.9.5!
Griffon is a Grails inspired framework for writing RIAs on the JVM using Groovy.
A list of bugs fixed in this release can be found at [http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11833&version=18365]
This release fixes all bugs reported for 0.9.5-rc2, there are no new features others than those introduced by 0.9.5-rc1 and 0.9.5-rc2.
Additionally, there are more than 120 plugins already published at http://artifacts.griffon-framework.org with more to come as we continue migrating plugins from the old legacy repository.
You can download the Griffon distribution from the download page.
Thanks to all who contributed to this release!
Keep on Groovying!
PS: Can't wait for an issue to be fixed? Have an idea for a cool feature? Fork us at github and send us a pull request :-)
The Griffon team is happy to announce the release of Griffon 0.9.5-rc2!
Griffon is a Grails inspired framework for writing RIAs on the JVM using Groovy.
A list of bugs fixed in this release can be found at [http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11833&version=18330].
This release fixes some issues found in the build system after the big overhaul we did in the last release. Offline mode is finally available. When engaged all dependencies will be resolved against the local caches, also no remote nor legacy artifacts repositories will be reachable, only local ones.
Speaking of artifact repositories, we'd like to announce the immediate availability of the new Griffon Artifact Portal located at http://artifacts.griffon-framework.org. The code that runs this portal is Open Source and can be obtained from https://github.com/griffon/griffon-artifact-portal; and as a matter of fact is the only way for now to setup a remote artifact repository. This portal contains a minimum set of features that we wanted to expose for the first release. Rest assured we'll update it as time goes along.
The Griffon runtime has a few new features too. It's now possible to disable the application's event bus for a while, useful to avoid an event storm for example. Also, MVC groups have the capabilities to skip firing MVC lifecycle events, as well as instantiation events.
Finally, all threading methods have been renamed. this is an important step into providing better threading options as the previous method names were confusing for many. The old method names are still available but have been marked as deprecated; they will be removed by the time Griffon 1.0 is released so take note and update your code as soon as possible.
You can download the Griffon distribution from the download page.
Thanks to all who contributed to this release!
Keep on Groovying!
PS: Can't wait for an issue to be fixed? Have an idea for a cool feature? Fork us at github and send us a pull request :-)
The Griffon team is happy to announce the release of Griffon 0.9.3!
Griffon is a Grails inspired framework for writing RIAs on the JVM using Groovy.
A list of bugs fixed in this release can be found at http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11833&version=17427.
Full release notes located here.
This release is the culmination of the 0.9.3 series (we had two betas released in the past months). In particular Java support has been vastly improved.
It's now possible to write a Griffon application in 98% Java. All artifacts, lifecycle handlers and event handlers can be written in Java (even another alternative JVM language like Scala, Mirah and Clojure for that matter). Configuration files remain in Groovy source form. Additionally, the jumpstart archetype introduced in the betas is fully aware of Java source code now.
IDE support has improved as well. Griffon includes GDSL and DSLD descriptors for both IDEA and Eclipse.
In the runtime aspect, the size of the core library has been reduced by roughly 25% while new features were added. Giving you more bang for your bandwidth. Plugin authors will benefit from automatic registration of artifact handlers should they decide to create a new artifact definition. Specific platform customizations, like the handling of the unified menubar in OSX, are now easier to make.
There's a new set of AST transformations too. These transformations will inject the required code for making a class an MVC group handler or a threading handlers, like if it were a Griffon artifact.
Lastly, there's a number of breaking changes explained in the release notes.
You can download the Griffon distribution from the download page.
Thanks to all who contributed to this release!
--The Griffon Team

1 Comment
Hide/Show CommentsFeb 22, 2012
jim
In 95rc1, SwingPad isn't working, dies on a null before the 1st page opens. Might be trouble with "isMacOS", which used to be a static class. I think that it's still in the
dist directory in a jar, but I'm not sure why it's not finding it. Line 53 of SwingPadMenuBar.Groovy. Seems not to be able to resolve the import stmt above ??
Is there a fix for this, or a command that I need to execute to install something or another ?
Thanks,
J