Setting up Heroku apps made easy.
Fetching latest commit…
Cannot retrieve the latest commit at this time.

NOTE: Whilst this possibly still works, you should use app.json from Heroku - it's the offically supported, extended version of this


heroku.json is configuration management for Heroku, making it super simple to setup (heroku bootstrap) and copy (heroku describe) Heroku apps.

For app creators: Include a heroku.json file in your project root to make running your app on Heroku as simple as heroku bootstrap.

For hackers: Configure and run any app with a heroku.json file on Heroku using a single command.


  1. Get a Heroku account. If you don't have one already, create an account with Heroku. Your account needs to be verified in order to use any apps, which means adding a credit card.
  2. Install Heroku Toolbelt.
  3. Install heroku.json, by running heroku plugins:install from the command line.

Basic Usage

Heroku bootstrap

heroku bootstrap creates an app on Heroku which is ready to run, based on a heroku.json file. After cloning a project with a heroku.json file, you can run heroku bootstrap from the project root to install it onto Heroku. heroku bootstrap creates a new app on Heroku, installs the necessary addons, and configures the environment variables. Tada! One app, ready to go.

Note: Some addons are charged, please refer to the addons website for pricing information.

Heroku describe

heroku describe generates a heroku.json file for your project. This will create a new file called heroku.json in your project folder which describes all of the addons and environment variables that your app depends on, and which looks something like this:

  "addons": [
  "env": {
    "TEST": "testing"

Note: Although we blacklist some environment variables for you already, please check that nothing private/sensitive is exported before publishing.


heroku.json is a Rainforest interview hack day project, created by smathieu, fredsterss and ukd1. [We're hiring]( want ur jobz)!


  • Push code to heroku automatically
  • Allow users to run arbitrary commands to allow users to bootstrap the db, generate static files, etc
  • Display pricing information about the addons installed
  • Setup collaborators automatically


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request