Link Search Menu Expand Document

Heroku

Heroku is a deployment platform that allows developers to deploy stateless apps and host / run them in the cloud. In this class, Heroku is used to introduce the notion of QA and Production deployments and manage application deployments for those two environments respectively.

Why Heroku?

Heroku was chosen as the deployment platform for this class for a variety of reasons:

  1. Heroku has a free tier that can be used by students without the need to enter a credit card
    • There are some limitations to this approach - see the corresponding document
  2. Heroku deployments can be shared and used by multiple students, allowing for easy access for entire teams and the course staff
  3. Heroku has a robust GitHub integration, allowing for one-click deploys of any branch on a repository, as well as automatic deployments from a main branch
  4. Heroku has built-in support for a variety of tech stacks, and has supported every tech stack used in this course
  5. Heroku has a free Postgres database add-on that requires no additional setup, which is currently used as our persistent database for deployed applications