Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Elixir
  3. heroku-buildpack-elixir

heroku-buildpack-elixir

MITShellv3

A Heroku buildpack for deploying Elixir applications with prebuilt binaries, caching, and flexible configuration.

GitHubGitHub
814 stars317 forks0 contributors

What is heroku-buildpack-elixir?

Heroku Buildpack for Elixir is a deployment tool that automates the process of building and running Elixir applications on Heroku. It handles Elixir and Erlang version management, dependency caching, and compilation, reducing the complexity of deploying Elixir apps to Heroku. It solves the problem of manual configuration and slow builds by providing prebuilt binaries and efficient caching.

Target Audience

Elixir developers who deploy applications on Heroku and want a reliable, configurable build process. It's also useful for teams needing consistent deployment pipelines for Elixir projects.

Value Proposition

Developers choose this buildpack for its robust feature set, including prebuilt binaries, caching, and flexible hooks, which streamline deployments. It's a community-tested solution that reduces setup time and ensures compatibility with Heroku's platform.

Overview

Heroku Buildpack for Elixir with nitro boost

Use Cases

Best For

  • Deploying Elixir Phoenix applications to Heroku
  • Managing Elixir and Erlang version compatibility in deployments
  • Speeding up Heroku builds with dependency caching
  • Customizing build steps with pre- and post-compilation hooks
  • Building Elixir releases for production deployments on Heroku
  • Ensuring protocol consolidation for performance in production

Not Ideal For

  • Teams deploying Elixir applications to platforms other than Heroku, such as AWS ECS or Kubernetes
  • Projects adopting Cloud Native Buildpack standards, as this buildpack is not guaranteed compatible
  • Applications requiring seamless integration with other Heroku buildpacks for asset compilation when using Elixir releases
  • Organizations needing immediate support for the latest Heroku stacks, as version compatibility can lag

Pros & Cons

Pros

Fast Deployments

Uses prebuilt Elixir and Erlang binaries to reduce build times, as highlighted in the features for streamlined deployment.

Flexible Configuration

Offers an easy-to-use elixir_buildpack.config file for customizing versions, hooks, and build steps, allowing extensive control over the deployment process.

Efficient Caching

Caches Hex packages, Mix dependencies, and downloads to speed up subsequent builds, improving deployment efficiency as noted in the README.

Custom Build Hooks

Supports hook_pre_compile, hook_compile, and hook_post_compile for integrating custom steps like testing or asset compilation, adding flexibility.

Cons

Heroku Platform Lock-in

Exclusively designed for Heroku, making it unsuitable for other deployment platforms without significant modifications or workarounds.

Version Compatibility Hassles

Requires careful pinning of buildpack versions via commit SHAs to avoid breaking changes, as updates may not support all old Elixir/Erlang versions or Heroku stacks.

Limited Cloud Native Support

Not guaranteed compatible with Cloud Native Buildpacks, necessitating the use of a separate buildpack for modern container-based workflows.

Potential Buildpack Conflicts

Using Elixir releases can interfere with other buildpacks like Phoenix static, as warned in the README, requiring additional configuration or alternatives.

Frequently Asked Questions

Quick Stats

Stars814
Forks317
Contributors0
Open Issues15
Last commit2 years ago
CreatedSince 2014

Tags

#hex#deployment#elixir#buildpack#cloud-deployment#mix#paas#erlang#heroku

Built With

B
Bash
s
shell

Included in

Elixir13.1k
Auto-fetched 6 hours ago

Related Projects

edeliveredeliver

Deployment for Elixir and Erlang

Stars1,970
Forks189
Last commit3 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub