Heroku is a platform-as-a-service (PaaS) owned by Salesforce, tied for the #37 most-used cloud platform in developer surveys at roughly 5.2% usage share. It was one of the original "push to deploy" platforms โ running git push heroku main automatically builds and deploys your app โ and that simplicity shaped how a whole generation of developers think about deployment. It's freemium today, with paid plans only (the free tier was discontinued in 2022).
Heroku reads a Procfile in your repo root to know how to run your app, then deploys whatever you push to its git remote.
# Procfile โ tells Heroku how to start your app
web: gunicorn app:app
# create the app and set the git remote
heroku create my-app-name
# deploy by pushing to the heroku remote
git push heroku main
# tail the running app's logs
heroku logs --tail
Install the Heroku CLI, log in, then create an app inside an existing git repo.
# install the CLI (Windows/macOS/Linux installers available)
npm install -g heroku
# log in from the terminal
heroku login
# create a new Heroku app tied to this repo
heroku create