Rhodes is a framework for building locally executing, device-optimized mobile applications. These applications are optimized to interact with transactional enterprise application backends. They are also designed to work with synced local data using a local database, such as SQLite or HSQLDB, and a generic backend synchronization framework, such as RhoConnect (another open source component available from Rhomobile). Rhodes is available for iPhone, Research in Motion (Blackberry), Windows Mobile, and Android phones.
The Tutorial describes how to install Rhodes and build your apps. The rest of this Developer Reference covers all Rhodes features.
BlackBerry 4.6, 4.7, 5.0, 6.0, 7.0
4.2 and 4.5 are supported but database access is very slow on these devices. |
As of Rhodes 3.3.3 Windows Mobile/CE are only supported under RhoElements
Android 2.1 and greater
All versions of iPhone 3.0 or greater, iPad
Latest Windows Phone devices
A Rhodes application is a web application that runs locally on your mobile device. It is implemented with the standard MVC architecture:
See Rhodes App Structure for more details.
You may generate a Rhodes application using the rhodes utility.
Rhodes built-in the following Ruby version: 1.9.2-p290. Rhodes application may use all functionality of the built-in Ruby version.
Do you want to add features to Rhodes? Have you found a bug that you want report or fix? Read on.
Please report bugs/features/enhancements to the google group.
You should run the rhodes specs to make sure your development environment is up-to-date (currently the specs only run on OSX):
Fork the Rhodes repository.
Clone your new repo:
:::term
$ git clone git://github.com/
Run Rhodes framework_spec and phone_spec targets :::term $ rake run:allspecs
If everything passes (pending specs are OK), then your environment is ready for development. If you have trouble installing a particular gem, or the specs won’t run properly, please feel free to email the Rhomobile google group or hop on IRC to chat with other Rhodes developers.
Now that your environment is ready, make your changes!
Create a topic branch: :::term $ git checkout -b cool_new_feature
Write tests, such as this code in a Rhom example.
Make changes to your project to ready it for others to use.
Add relevant documentation for your project (use RDoc, update the README if relevant).
Push to your branch: :::term $ git push origin cool_new_feature
Send a note to the google group
That’s it! We recommend following these ruby style guidelines when coding.
If you are interested in having us use your patch to Rhodes, you will need to submit a contribution agreement to us.