Porting Rails App to Mobile

I’m building a rails-based CRM for a specific niche. Our early users and first few paying customers have all insisted that they want a native iOS app (iphone and ipad). I don’t know the first thing about building a native iOS app so here I am!

I’m probably not going to be able to afford a dedicated iOS or Android developer any time soon and so building an HTML/JS app that can deploy natively to multiple platforms seems like the best option so far for getting the most bang for my time. I’d love any input or feedback on people in a similar position or know more than me about what I tools or frameworks I can use.

Here’s what my research has yielded me so far (please correct me if I’m wrong):

  • Sencha Touch/Jquery Mobile - Frameworks to create “native-looking” apps.
  • PhoneGap - Javascript library that hooks into phone’s native features (contacts list, camera, call logs, accelerometer)
  • Both of the above can compile into an app that is deployable as an .APK or iOS native app so users can install from the app store and have a nice “native feeling” application.

So my plan right now is to use a combination of Sencha Touch and PhoneGap to build a pure HTML/Javascript version of my rails application, modify my rails app to respond with JSON which the mobile app can use… and launch on the apple and android app stores?

How does this sound? Am i completely missing something? Any options I’m not thinking of? Am i doing the right thing?

Thanks in advance ! :smile:

Sounds like a good plan to me, that is the route I was thinking of taking for our site when we move to doing a simple mobile app.

Others options are also Titanium (Javascript the builds in to native code) and RubyMotion (Ruby based but have to shell out $100+ for a license).

Here is the first in a series on article on building an API in Ruby on Rails, could be a good starting point for building your API, Building Awesome Rails APIs: Part 1 | Collective Idea

Yeah, I support @erikguzman - RubyMotion is the way to go on iOS(look at what 37signals done: Basecamp iOS)
On Android you could try Ruboto…

I guess I’m looking at it from an iOS/Android dev perspective but nothing bits a native app…