Tabris 1.0 is here!

tabris-logoToday we are proud to release Tabris 1.0. If you have not followed us so far you probably don’t know what Tabris is. Let me put it in one sentence: Tabris is the first Java-Toolkit for the cross-platform development of native mobile Apps. It enables you to write iOS and Android Apps completely in Java with a single code base. With this post, I want to sum up our journey till now and show you which features have made it into the 1.0 release.

Tabris sits on top of Eclipse RAP. RAP provides a UI Toolkit to write Web applications using Java. This UI Toolkit is based on Widgets, so you don’t have to mess around with HTML. To be able to display those widgets in a browser, RAP uses a protocol which is based on JSON. Within this protocol are messages that instruct the browser e.g. to display a button, or a tree, and so on. What Tabris does is to provide two alternative clients which are an iOS and an Android client. Those clients simply understand the RAP protocol messages and display widgets using the native counterparts.

On April 28th, 2010 we have previewed a version of the RAP protocol which basically marked the start of Tabris internally. Two months later (June 11th, 2010), we had the first working prototype which has used Apple’s iAd JavaScript framework for rendering. Since then we have worked on what is today released as Tabris. It includes two native clients and an extension of the server side RAP API. This extension, which is just another jar, is necessary because the RAP API is based on the Standard Widget Toolkit (SWT). SWT is limited when it is used on mobile devices. There are no APIs for Geolocation, Camera and other things a mobile App typically use.

tabris-mdevicesThe first time we made our mobile clients public was the start of our “developer preview” back in January 31st, 2012. At this time we concentrated on implementing a proper support for the SWT widgets. Since then, we have released 14 milestones. The last public milestone was tagged with 0.11.0. We think that this was the most important one for Tabris. It introduced a feature called the Tabris UI. Tabris UI is a higher level API for creating a frame for your mobile application. The native clients use native navigation concepts to display a Tabris UI-based application. On Android this is the ActionBar and on iOS these are the ViewControllers. So, since Tabris 0.11.0 it has been possible to write native applications using native Widgets combined with native navigation concepts.

In the last weeks we have concentrated on Bug fixing and API cleanup to ship a release we can be proud of. If you would like to try out Tabris yourself, just download the 30 day trial version. This trial has no functional limitations! To get started with this trial we have created some detailed getting started guides you can use. We have also created a bunch of screencasts that show some of the features Tabris provides. You can find the new & noteworthy articles so far below:

At this point I want to thank the community which has provided us with great feedback, feature requests and bug reports. I also want to thank the rest of the Tabris team: Jordi Böhme López, Johannes Eickhold, Moritz Post and Ivan Furnadjiev for doing a great job over the last year! And last but not least, many thanks to the Eclipse RAP team for their great support!

  • Jérôme
    Posted at 1:01 pm, April 16, 2013


    The front page shows “THE FIRST JAVA TOOKIT”

    What is a TOOKIT ? Ain’t it a toolkit ?


  • Axel
    Posted at 4:22 pm, April 16, 2013

    What s the difference between this and Titanium4j ?

  • Patrick
    Posted at 4:41 pm, April 17, 2013

    Very interesting, but… I’m wondering, how will you deal with the Apple rules that forbid interpreted code in iOS apps?

  • Devon
    Posted at 9:59 am, April 19, 2013

    Good job on Tabris. Congrats.
    @Axel Titanium4j looks great too. And it loos like it’s free. Thanks for sharing.

  • Alain
    Posted at 1:59 pm, April 21, 2013

    Woah this looks like a pretty nice framework. I was nt aware of it. Good work !

    Titanium4j apps are native ! Not HTML5. Ti4j uses the GWT JavaToJavaSvriptCompiler to compile Java code to optimized JavaScript which is then turned into native applications by Titanium. All Native.

    Disclaimer: I m one of the head behind Titamiun4j.

Post a Comment