Heroku Finagle Rogue App

This is a minimal Scala app targeting deployment to Heroku.
Its web layer is based on Finagle and its persistence layer on Rogue.
Basically, this app’s a RESTful service API.


The app’s persistence layer depends on MongoDB, so start it:

$ mongod

Additionally, Memcached is being used, so e.g.:

$ memcached -vv

To run the app locally via foreman:

$ gem install foreman
$ foreman start

Then point your browser to this URL:


Note: you need to build before (see below).

To compile + package Scala on-the-fly
via sbt 0.10:

$ sbt
> ~package

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 sbt package) to include this config update.

$ heroku config:add LIFT_PROD=-Drun.mode=production
$ git commit -am 'Make it ready for production.'
$ git push heroku master

Then, make the project’s lib dependencies JAR (via sbt assembly:package-dependency).

$ git commit -am 'Add lib dependencies.'
$ git push heroku master
$ heroku open

Related Repositories

Top Contributors