Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

151 lines (124 sloc) 4.7 kb
<!doctype html>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<link rel="icon" href="/images/favicon.png">
<link rel="stylesheet" href="stylesheets/styles.css">
<link rel="stylesheet" href="stylesheets/pygment_trac.css">
<script src="javascripts/scale.fix.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, max-scale=1">
<!--[if lt IE 9]>
<script src="//"></script>
<body id="homepage">
<div class="wrapper">
<hgroup id="home-branding">
<h2><img src="images/calatrava-logo.svg" alt="Calatrava Logo Lockup" /></h2>
<p>Mobile cross-platform logic. Freedom to build great UIs.</p>
<pre><code class="gem-install">$ gem install calatrava</code></pre>
<li><a href="">GitHub</a></li>
<li><a href="">Docs</a></li>
<li><a href="">Google Groups</a></li>
Calatrava is a cross-platform mobile framework that lets you share
the core logic of your application across iOS, Android and Mobile
Web, but unlike other XP toolkits it allows you to always write the
highest quality native UI you need.
Read the <a href="">announcement</a>
for more detail.
Calatrava is maintained by <a href="" class="user-mention">@gga</a>,
based on an idea from <a href="" class="user-mention">@moredip</a>.
Developed with the support of <a href="">ThoughtWorks</a>,
the custom software experts, and my employer.
<article id="getting-started">
<h2>Getting Started</h2>
<span>Write your feature in javascript or coffeescript.</span>
<pre><code>your.feature.controller = ({views, changePage, ajax}) ->
views.form.bind 'save', ->
# All logic in 1-place.
# In a single language.
# Allows you to pivot on your logic.
# Without going broke.
<span>Author your inital UI with html, css and js.</span>
&lt;h1&gt;Your App&lt;&#47;h1&gt;
&lt;p&gt;Get your idea up and running quickly in html.&lt;&#47;p&gt;
&lt;p&gt;Upgrade this feature with native ui.&lt;&#47;p&gt;
&lt;strong&gt;NO handcuffing ui-framework.&lt;&#47;strong&gt;
<span>Upgrade inidividual views to native UI.</span>
<pre><code>#import &lt;UIKit/UIKit.h&gt;
@interface MyAppSaveButton : UIView {
- (void) setCollected:(BOOL)collected;
- (void) didTapCollected:(BasicCallback)callback;
- (void) showCollectingFeedbackUI:(BOOL)showFeebackUI;
</article><!-- end #getting-started -->
<article id="key-points">
<h2>Key Points</h2>
<li>Calatrava is about shared <strong>logic</strong>.
<li>Calatrava is <strong>not</strong> about sharing UI.
<li>Write your app as a single-page mobile web app.
<li>Use CoffeeScript for all the logic.
<li>Separate your UI from your logic.
<li>App features remain in sync across all platforms.
<li>Upgrade web UI to native immediately or as constraints allow.
<li>No handcuffing UI frameworks.
Like what you see here?
<br />
Want ThoughtWorks to <a href="">work with you</a>?
Or do you want to <a href="">work with us</a>?
&copy; ThoughtWorks, Inc 2012 &mdash;
<li><a href="">GitHub</a></li>
<li><a href="">Docs</a></li>
<li><a href="">Google Groups</a></li>
Jump to Line
Something went wrong with that request. Please try again.