It should be as easy to get started with Calatrava as possible. However, there are still a small number of dependencies that need to be installed beforehand.
-
rvm. Calatrava projects are configured to use
rvmby default. You could use Calatrava without it, but you will then need to make sure you have Ruby 1.9.3 installed however you prefer. -
bundler. Install in either your
rvmglobal gemset, or wherever else makes sense for your setup. -
Xcode. You'll have to get this from the Mac App Store. Once installed, make sure you download and install the command line tools, and make sure you run
xcode-select. Calatrava doesn't actually directly use Xcode except when building iOS apps, so you can use it on a non-Mac as long as you don't run the iOS build targets. -
Android SDK. I recommend installing using homebrew if you're on a Mac. But however you get hold of it, the
androidcommand is expected to be on the path. -
Node.js. Only used to run tests, not part of any production code. Again, if you're on a Mac I recommend installing using homebrew.
Once you have the dependenices installed, there are just six simple steps to creating and building your first Calatrava cross-platform mobile app.
-
Install the Calatrava gem:
gem install calatrava -
Create your Calatrava project:
calatrava create <project-name> -
cd <project-name>. If you're usingrvmyou will be prompted to trust a new.rvmrc. -
bundle install -
rake bootstrap -
To build and run the Mobile Web app:
rake web:apache:startThen browse to
http://localhost:8888in your favourite browser. -
To build and install the Android app:
rake droid:deployYou will need to have an Android emulator running, or a device connected.
-
To build and run the iOS app open the Xcode workspace in the
iosdirectory, and then build and run the target named after your project.
-
Clone this repo.
-
cdinto the repo. -
Run
bin/calatrava create <project-name> --dev
The --dev switch will create a new project that refers to the
calatrava gem as a path on disk. This is much more convenient if
you're experimenting with Calatrava, or working on it.