A Heroku application lifecycle can be represented by the steps shown in the following diagram:
To create a Heroku app, a developer should perform the following tasks:
Write an app in any of the supported languages as follows:
Create an app using the supported Ruby, Java, Python, Node.js, Scala, or Clojure programming language
Use a custom mechanism to build apps in other languages using custom buildpacks
Select the add-ons to reuse components required to build necessary features as follows:
Choose the right add-on from a wide variety of supported add-ons (https://addons.heroku.com) depending on the functionality desired
For example, to add application monitoring using the popular New Relic tool (www.newrelic.com), a developer uses the Heroku CLI as follows:
$ heroku addons:add newrelic:standard Adding newrelic:standard on myapp...done, v27 (free) Use `heroku addons:docs newrelic:standard` to view documentation
Set up the configuration of the application using configuration...