This is a minimal RingoJS/Scala hybrid app targeting deployment to Heroku.
Its web layer is based on Stick and its persistence layer on Rogue.
The client-side UI layer is based on Backbone.
Basically, this is its Todos example app ported.
FYI: the app's template's on GitHub as well.
The app's persistence layer depends on MongoDB, so start it:
$ mongod
To run the app locally launch ringo
with the main script via foreman
:
$ gem install foreman
$ export RINGO_ENV=dev
$ foreman start
Then point your browser to this URL:
To compile + package Scala & CoffeeScript on-the-fly
via sbt
0.10:
$ sbt
> ~package
BTW, for compiling/packaging once just leave off the ~
.
To make an assembly of all sbt
project lib dependencies:
$ sbt
> assembly:package-dependency
$ gem install heroku
$ heroku create --stack cedar
$ heroku addons:add mongolab
$ heroku config
Now, adjust src/main/resources/props/production.default.props
according to MONGOLAB_URI
.
Plus, rebuild application.jar
(via > package
) to include this config update.
$ heroku config:add LIFT_PROD=-Drun.mode=production
$ heroku config:add RINGO_PROD=--production
$ heroku config:add RINGO_ENV=production
$ git commit -am 'Make it ready for production.'
$ git push heroku master
$ heroku open