| CARVIEW |
rhomobile / rhodes
- Source
- Commits
- Network (58)
- Issues (0)
- Downloads (6)
- Wiki (1)
- Graphs
-
Branch:
master
click here to add a description
click here to add a homepage
The Rhodes framework is a platform for building locally executing, device-optimized mobile applications for all major smartphone devices. — Read more
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Tue Mar 16 07:08:39 -0700 2010 | Fix issue #2814281 - Android: empty log on firs... [Dmitry Moskalchuk] |
| |
CHANGELOG | Thu Mar 25 08:21:49 -0700 2010 | Update changelog [Dmitry Moskalchuk] |
| |
LICENSE | Mon Nov 10 10:45:49 -0800 2008 | moved license to top level [larsburgess] |
| |
LICENSING_OPTIONS | Fri Feb 27 11:38:09 -0800 2009 | added file mentioning availability of commercia... [adamblum] |
| |
README.textile | Wed Nov 11 14:52:44 -0800 2009 | testing post-commit hook [larsburgess] |
| |
Rakefile | Tue Mar 23 09:49:08 -0700 2010 | fixing iphone set_version [larsburgess] |
| |
bin/ | Wed Mar 24 17:27:35 -0700 2010 | fixing rhogen for ruby 1.9.x [unknown] |
| |
ext/ | Mon Nov 02 00:50:50 -0800 2009 | CR fix [genywind] |
| |
lib/ | Thu Mar 25 14:17:02 -0700 2010 | bumping version to v1.5.1 [larsburgess] |
| |
platform/ | Thu Mar 25 14:17:02 -0700 2010 | bumping version to v1.5.1 [larsburgess] |
| |
res/ | Mon Mar 15 03:36:15 -0700 2010 | fix mobilesrm issues [genywind] |
| |
rhobuild.yml.example | Fri Mar 05 04:48:16 -0800 2010 | Update rhobuild.yml.example [Dmitry Moskalchuk] |
| |
rhodes.gemspec | Thu Jan 28 16:21:11 -0800 2010 | adding gem dependencies [larsburgess] |
| |
spec/ | Mon Mar 15 11:58:07 -0700 2010 | fix spec for win32 [genywind] |
Rhodes
The Rhodes framework is a framework for building locally executing, device-optimized mobile applications for smartphone devices. These applications are optimized for interacting with transactional enterprise application backends (with synced local data via RhoSync). Rhodes is now available for iPhone, Windows Mobile, Research in Motion (Blackberry) and Symbian smartphones.
Rhodes is available as an open source product under the “GNU Public License”: https://gplv3.fsf.org/ for developers prepared to abide by the GPL and open source their own application. For developers building closed source applications (either within an enterprise or as independent software vendors selling to other companies) we offer a commercial license. Contact sales@rhomobile.com for details
INTRODUCTION
Rhodes takes much of its inspiration from web-oriented MVC style frameworks such as Ruby on Rails. However it has several simplifications and optimizations for the mobile scenario. Some of these are to make it easier for the developer. Most of them are to keep the framework as lightweight as possible to be able to run on mobile devices with limited memory. As with developing apps on any good app framework (Rails, Merb, Django), building a Rhodes mobile application consists of building a set of files and putting them into the right directories for the respective models.
STARTING A RHODES APPLICATION
Install Rhodes:
gem install rhodesAPPLICATION GENERATOR
Rhodes features an application generator called rhogen that generates a controller and views for a given model. The syntax for running Rhogen is:
rhogen app appnameThis will generate a config.rb and an index.html file. Currently config.rb is focused on describing what source to sync with. Modify the URL that you see in this file with whatever your RhoSync server URL and source ID are for this particular “source” or data model. It is assumed that you’ve already set up a RhoSync “source adapter” as described by the RhoSync README.
Generate a Model and Associated Controller and Templates
rhogen model modelname optionsThis will generate a controller as the file controller.rb and several views as action-name.erb (corresponding to the actions below). Each Rhodes model/controller pair has several actions to perform basic CRUD (create, read, update and delete) on the object generated by default by the scaffold . Specifically the template views generated are:
- index – to list all objects
- new – to display the editing form for creating a new object
- edit – to edit the actual object
- show – to show the object attributes
DIRECTORY STRUCTURE
The Rhodes directory structure is outlined below. In a default Rhodes application, there are several subdirectories inside of an app directory, one for each model or synced data object. For example, there might be subdirectories called Account, Employee, and Case. Each model subdirectory contains a controller in the file controller.rb. These subdirectories each contain a set of template files as Embedded Ruby (ERB) files. These control how data from the model is displayed and what links are available to other actions. Note that this structure is reminiscent of Rails and MERB’s structure, but is a bit simpler by design.
/appname
build.yml (contains the settings for running builds)
rhoconfig.txt (contains settings for setting the default start and options path)
Rakefile
/public (contains static resources for the generated objects)
/css
/images
/js
/app
index.erb
layout.erb
loading.html
/modelname (for example Account)
config.rb
index.erb
new.erb
edit.erb
show.erb
controller.rb
/modelname (for example Case)
config.rb
index.erb
new.erb
edit.erb
show.erb
controller.rb
MORE RESOURCES
There is a tutorial available on the Rhomobile site. This includes thorough and current platform by platform build instructions.
The Rhodes spec is also available on the Rhomobile documentation wiki.
For further questions email us or join the Google Group.
For questions on licensing contact our sales team
