A curated list of helpful Heroku resources.

- Analytics
- Architecture
- Blogs
- Deployment
- Development
- Domains
- Meta
- Postgres
- Scaling
- Security
- Toolbelt
- Goodbye…

## Analytics

Analytics for Heroku…

- `tool` Metabase — a beta of Metadata as an app that can be deployed directly to Heroku.

## Architecture

How to architect your Heroku projects…

- `article` Exploring Microservices Architecure on Heroku — explores why Heroku eliminates a lot of the tooling you need to worry about when working with microservices.
- `article` Heroku and SOA — discusses why Heroku is perfectly suited to building a service-oriented architecture for your projects.
- `article` Split Frontend from Backend on Heroku with npm and NodeJS - hands-on guide to deploy a microservices web application in Heroku using npm and NodeJS.

## Blogs

Blogs around the internet that often (or exclusively) write about Heroku…

- `blog` Heroku Blog — the official Heroku blog.

## Deployment

Resources that help with deploying on Heroku…

- `official` Preboot — explains how to use the “Preboot” feature to enable zero-downtime deployments, which can be tricky to get right.
- `article` Automating our Heroku deployments from Jenkins — explains how you’d go about automating certain parts of deployment like enabling maintenance mode, copying your database from production to staging, running migrations against staging, etc.
- `question` How do you ignore files when deploying to Heroku? — the answer to a common question about `.gitignore` like functionality.
- `article` Six Tips for Mastering your Procfile — improvements for how you run your Heroku processes.
- `article` Deploying Django to Heroku With Docker — looks at how to deploy a Django app to Heroku with Docker via the Heroku Container Runtime

## Development

- `official` Managing Multiple Environments for an App — a good primer on how to think about managing the different pieces of each environment.

## Domains

Tips for using custom domain names on Heroku…

- `article` Configuring CloudFlare DNS for a Heroku app — a walkthrough of how to use CloudFlare as your DNS provider.
- `article` Hosting multiple Heroku apps on a single domain — an article on how to share the same domain between multiple Heroku applications.
- `question` How do you host multiple Heroku apps on a single domain? — a StackOverflow question with a few responses to a the common question of how to serve multiple Heroku apps from different paths instead of subdomains.

## General

General resources that cover lots of different things about Heroku…

- `book` The Heroku Hacker’s Guide — an ebook that covers a lot of the basics in maintaining and scaling a project on Heroku.
- `book` Heroku Cookbook — step-by-step recipes to solve the challenges of administering and scaling a real-world production web application on Heroku.

## Meta

Information about the company itself…

- `official` The big kickoff — the first ever Heroku blog article.
- `article` Heroku isn’t for idiots — explains Heroku’s advantages and why it’s not just for side projects.
- `article` My Heroku values — a great series of takeaways from Brandur Leach when he left Heroku.
- `talk` Buildpack Adventure — a cool slideshow about Heroku’s buildpacks, and what the open-source community is hacking together with them.

## Postgres

Anything dealing with Heroku Postgres…

- `official` Heroku Postgres — the landing page explaining with it is.
- `plugin` heroku-buildpack-pgbouncer — a buildpack that allows for transaction pooling using `stunnel` and `pgbouncer` to avoid hitting connection limits.

## Redis

Anything dealing with Heroku Redis…

## Scaling

Resources that help you scale your Heroku projects…

- `tool` HireFire — a SaaS tool that automatically scales your Heroku dynos up and down as load requires.

## Security

How to secure your Heroku applications…

- `article` Set up CloudFlare’s free SSL on Heroku — walks you through the exact steps to setting up free SSL via Cloudflare.

## Toolbelt

Helpful resources for the Heroku Toolbelt…

- `official` Toolbelt Download — where to download the Heroku toolbelt.
- `plugin` heroku-accounts — makes it easy to work with multiple accounts at once from the command line.
- `plugin` heroku-pg-extras — a toolbelt plugin that adds extra useful plugins for working with Postgres. Things like analyzing cache hit rates, outlier queries, unused indexes, table sizes, etc.

## Goodbye…

Things to check out if you decide to migrate off of Heroku for some reason…

- `tool` dokku — a self-hosted, docker-based, Heroku-compliant platform.

## License

To the extent possible under law, Ian Storm Taylor has waived all copyright and related or neighboring rights to this work.

heroku.md Github