Introduction to Rhodes Platform

Robert Galvin -
3 MIN READ

It has been a busy few weeks since my post supporting a few regional developer events as well as promoting this community (which by the way, I am proud to say we are very close to hitting the 1000 user mark). One of the areas I have been spending time on is getting familiar with the Rhodes platform. As you may know we announced in October our acquisition of a company called RhoMobile. Over the next few months we will be working on bringing this platform together with our current RhoElements offering to bring you the best of all worlds when it comes to building OS-independent and hardware-agnostic enterprise applications. In this post I would like to give a primer on the different pieces of the Rhodes framework and some very helpful tips for getting your feet wet.

Capture.PNG

At the heart of it all is the Rhodes framework. Using a Model View Controller approach, this open source framework allows you to rapidly build native applications for Android, iOS, RIM, Windows Mobile and Windows Phone 7.You can jump right in and develop in the cloud using RhoHub, or install the Eclipse based IDE: RhoStudio on your Mac or PC. Either way you will be able to quickly add data models to your application with all of the CRUD operations automatically hooked in and also create native looking applications with the built in jQuery Mobile integration. Once your application is built and your collecting data, you can look into taking advantage of RhoConnect, a lightning fast and very powerful synchronization service that provides easy integration to enterprise backend systems. In fact it has prebuilt plugins/adapters for the most common backends including SugarCRM, Salesforce, Oracle, .Net, Java, and Rails to name a few.

If you are a web developer, you may find all of this very exciting and easy to adapt. If you are more of our traditional C++. .Net Windows Mobile developer, this may seem a bit overwhelming at first. Don't fret, while we are sorting out how this all ties together, there are many resources from the RhoMobile team that should help get you started so you can begin understanding how this can help you in the long run. The following is by no means a comprehensive list of resources, but rather a 12 step program for Rhodes newbies:

  1. Review some of the getting started documentation at: http://docs.rhomobile.com
  2. Watch the RhoHub introduction webinar. This will allow you to get you feet wet without having to install anything on your PC or Mac.
  3. Review the details on application structure.
  4. Watch the RhoStudio introduction webinar
  5. Setup RhoStudio on your Mac/PC
  6. Generate a Rhodes Application Using the Wizard
  7. Generating a Rhodes Model
  8. Modify the Models Views
  9. Managing Your Build Configuration
  10. Building and Running Your Application
  11. Using the Debugger
  12. Create a Device Build in RhoStudio

Once you have the fundamentals of how to build an application, head on over to the long list of recorded webinars that cover a variety of topics like device capabilities, user interface and sync/data handling. If you get stuck check back at the online documentation in the Developers Reference section, download a boat load of samples or reach out to the Rhomobile Google Groups which has over 20000 messages.

profile

Robert Galvin

Please register or login to post a reply

5 Replies

G Garrick van Schalkwyk

Please can you clear something up for me? Rhomobile is used to develop and package native applications that run on a number of platforms. I have installed a basic application on a Motorola ES400 and the styling left much to be desired (when compared to the styling demonstrated in the emulator). I then thought that perhaps Rhoelements was a further extension to Rhomobile and that it provided customizations specific to windows 6.5 for Motorola devices. However it just appears to be a run time that is installed on the device. So I am now unclear as to how Rhomobile and Rhoelements work together and if they don't work together, why are all the links in here directed toward Rhomobile and it's development tools etc?

I am looking for the tooling provided by Rhomobile to write the applications to then run within the Rhoelements run time. If this information is in here somewhere I apologise, however I have not been able to figure this out.

R Robert Galvin

Hi Gary

Yes RhoElements supports HTML5 Application cache feature as well as Web SQL storage. Basically you define resources in a manifest file that lives on your server that describes what resources should be cached. When the page is retrieved initially it downloads those resources to the device and RHoElements keeps in index of this. When the device is offline it will retrieve those images from the local resources instead of the server. <a href="http://www.html5rocks.com/en/tutorials/appcache/beginner/">Look at this tutorial</a> for Application cache. Also be sure to check the RHoElements help file for an entry in the Config.xml that defines the allowed size of the application cache.

R Robert Galvin

Hi Garrick,

Thanks for the question. Let me try and clear things up. First off, RhoElements and RhoMobile are both targeted to be a cross platform OS agnostic approach for developing applications. RhoElements was launched in Oct 2011 and is geared towards the traditional web developer who may have already started going the WEB route to deliver mobile applications. RhoElements provides an enhanced experience by exposing device capabilities as well as bringing HTML5 to our Windows Mobile products. Applications are built in standard HTML5, Javascript, CSS and are delivered either via a web server or to run locally as a set of files on the device that has the RhoElements runtime installed. Around the same time RhoElements was launched, we announced our acquisition of RhoMobile. RhoMobile provides a true MVC approach to enabling developers to write cross platform applications. RhoMobile however packages up the application into a native binary. This native application renders your HTML defined application views using the operating system’s rendering engine as well as interprets your Ruby logic to deliver the full application. It also provides built in hooks to allow a more streamlined approach for offline applications with its integration with the RhoConnect synchronization services as well as other cloud offerings from RhoMobile.

Right now we are looking at integrating the two solutions to continue to provide both experiences to developers looking to write once and run everywhere. The intent of this article was to introduce the Rhodes platform and to provide a starting point for those who would like to start looking at this platform while we are working through the integration. Once the integration is complete, you can expect a better experience on the Windows Mobile platform as well as being able to allow run RhoElements code inside of a RhoMobile application. Stay tuned.

G Garrick van Schalkwyk

Hi Rob,

Thank you for your reply. Does Rhoelements have offline support, and can
this be achieved without running the full app on the device?

Garrick
On Jan 30, 2012 6:46 PM, "Rob Galvin" &lt;

M Maheswari S

Hi Rob,

Does Rhodes have support for Win CE devices like Motorola MC2100?

Thanks.