
Heroku Migration
Heroku pioneered git push deployment and buildpacks. Gigalixir uses the same patterns so your team's muscle memory transfers directly. But Heroku was built for Ruby applications that restart frequently, don't cluster, and don't need long-lived connections. Elixir applications are different. They expect to stay running. They expect nodes to find each other. They expect Remote Observer and IEx console access in production. Gigalixir was built specifically for how Elixir applications actually work.
Familiar Workflow: Deploy with git push gigalixir main just like Heroku. Use buildpacks to customize your build. Set config vars with the CLI. The commands are different but the patterns are identical.
Buildpack Compatibility: Gigalixir buildpacks are based on Heroku's. If you have custom buildpacks for native dependencies, fonts, or additional runtimes, they likely work without modification. We support the same .buildpacks file format.
Features Heroku Blocks: Remote Observer, distributed clustering, SSH access to containers, and IEx console connections all work on Gigalixir. These aren't add-ons or enterprise features. They're standard because Elixir applications need them.
No Surprise Restarts: Heroku's dyno cycling restarts your application daily, killing GenServer state, breaking WebSocket connections, and clearing ETS tables. Gigalixir replicas stay running until you deploy new code or something actually fails.
