All Projects → srid → Heroku Buildpack Elm

srid / Heroku Buildpack Elm

Heroku buildpack for deploying Elm apps (NEEDS MAINTAINER)

Programming Languages

shell
77523 projects
elm
856 projects

Projects that are alternatives of or similar to Heroku Buildpack Elm

Subdir Heroku Buildpack
Allows to use subdirectory configured via environment variable as a project root
Stars: ✭ 211 (+441.03%)
Mutual labels:  heroku-buildpack
heroku-buildpack-tex
A Heroku buildpack to run TeX Live inside a dyno.
Stars: ✭ 18 (-53.85%)
Mutual labels:  heroku-buildpack
Dotnetcore Buildpack
Heroku .NET Core Buildpack
Stars: ✭ 416 (+966.67%)
Mutual labels:  heroku-buildpack
Heroku Buildpack Phoenix Static
A Heroku buildpack for building Phoenix's static assets
Stars: ✭ 225 (+476.92%)
Mutual labels:  heroku-buildpack
heroku-integrated-firefox-geckodriver
Buildpack enables your client code to access Firefox along with Geckodriver in a Heroku slug.
Stars: ✭ 40 (+2.56%)
Mutual labels:  heroku-buildpack
heroku-buildpack-nim
Deploy nim applications to heroku.
Stars: ✭ 20 (-48.72%)
Mutual labels:  heroku-buildpack
Heroku Pinger
😴 Keep your free Heroku dynos awake
Stars: ✭ 84 (+115.38%)
Mutual labels:  heroku-buildpack
Slugrunner
Buildpack application runner for Deis Workflow.
Stars: ✭ 14 (-64.1%)
Mutual labels:  heroku-buildpack
buildpack-stdlib
[DEPRECATED] A standard library for Heroku buildpacks written in bash.
Stars: ✭ 19 (-51.28%)
Mutual labels:  heroku-buildpack
Create React App Buildpack
⚛️ Heroku Buildpack for create-react-app: static hosting for React.js web apps
Stars: ✭ 3,161 (+8005.13%)
Mutual labels:  heroku-buildpack
heroku-buildpack-graphviz
Install Graphviz on Heroku
Stars: ✭ 18 (-53.85%)
Mutual labels:  heroku-buildpack
heroku-buildpack-d
Heroku Buildpack for the D Programming Language
Stars: ✭ 13 (-66.67%)
Mutual labels:  heroku-buildpack
heroku-buildpack-cli
No description or website provided.
Stars: ✭ 38 (-2.56%)
Mutual labels:  heroku-buildpack
Heroku Buildpack Google Chrome
Run (headless) Google Chrome on Heroku
Stars: ✭ 215 (+451.28%)
Mutual labels:  heroku-buildpack
Heroku Buildpack Elixir
Heroku Buildpack for Elixir with nitro boost
Stars: ✭ 759 (+1846.15%)
Mutual labels:  heroku-buildpack
Reddit Bot
🤖 Making a Reddit Bot using Python, Heroku and Heroku Postgres.
Stars: ✭ 99 (+153.85%)
Mutual labels:  heroku-buildpack
heroku-buildpack-deno
Heroku Buildpack for Deno
Stars: ✭ 72 (+84.62%)
Mutual labels:  heroku-buildpack
Heroku Buildpack Jvm Common
Official Heroku buildpack for OpenJDK. It only installs the JDK and does not build an application. It is used by the Java, Scala, and Clojure buildpacks.
Stars: ✭ 34 (-12.82%)
Mutual labels:  heroku-buildpack
Heroku Buildpack Python
The official Heroku buildpack for Python apps.
Stars: ✭ 849 (+2076.92%)
Mutual labels:  heroku-buildpack
Heroku Buildpack R
Heroku buildpack for R - Makes deploying R on Heroku easy
Stars: ✭ 258 (+561.54%)
Mutual labels:  heroku-buildpack

Heroku buildpack for Elm apps

Check out the example app elm-todomvc. In brief:

  • Add an app.json file
    • Ensure that a second buildpack provides the web server (elm-todomvc uses the static buildpack)
  • Specify the value of ELM_COMPILE (command used to compile your Elm sources) in app.json
  • Add the elm buildpack: heroku buildpacks:add https://github.com/srid/heroku-buildpack-elm
    • Add static buildpack if needed: heroku buildpacks:add https://github.com/hone/heroku-buildpack-static
  • Deploy!
    • e.g. git commit -am "empty" && git push heroku master && heroku ps:scale web=1

Customizing

Elm Version

The buildpack aims to use the latest version of Elm by default. To specify an alternative Elm version, create this file in your repo:

$ cat .buildpack.env
export ELM_VERSION=0.15
^D

Build Cache

By default, this buildpack will save and reuse intermediate build objects between deploys. If you want to perform a clean build on every deploy, you may specify that in your .buildpack.env file:

$ cat .buildpack.env
export CACHE_BUILD_OBJECTS=false
^D

HACKING

Generating and uploading binaries

Binaries are generated using docker, and uploaded to s3.

# To generate docker image containing the binaries
make binaries

# To upload to s3
aws configure  # creates ~/.aws/...
make upload

Upgrading to newer Elm version

  • Modify the ELM_VERSION env var in Dockerfile
  • make binaries upload
  • Modify the ELM_VERSION env var in bin/compile
  • Update CHANGELOG.md
  • git push

Questions?

Feel free to ask in Github Issues.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].