Awesome
Elm Boil
Handle Elm Project with almost zero effort š².
Quickstart
Node >= 12.10.0
npm install -g elm-boil
elm-boil init my-elm-app
cd ./my-elm-app
npm start
Create a production build with npm run build -- --output my-elm-build
Note that you can modify your package.json
and pass your custom parameters to the elm-boil
utility.
Getting Started
Installation
Make sure you have Node >= 12.10.0 installed
npm install -g elm-boil
Create project
This command scaffolds a new Elm project with the support of scss compilation and Elm environment variable handling as it's described in this answer provided by the creator of elm-spa-example.
Usage:
elm-boil init <project_name>
Project structure:
my-elm-app
āāā README.md
āāā package.json
āāā elm.json
āāā .gitignore
āāā assets
ā āāā favicon.ico
ā āāā elm-logo.svg
āāā env - Env variables (not versioned)
āāā env-default - Default Env (versioned)
āāā public
| āāā index.html - index.html template
āāā src
āāā Main.elm
āāā Main.scss
Serve Project
This command starts a local webserver helping development phase of the application using live elm and scss compilation plus a livereload functionality.
Usage (inside the project directory):
elm-boil serve [-p|--port=3000] [-h|--host="0.0.0.0"]
Build Project
This command creates a minified and uglified build inside the project directory. A content hash is added to the file name allowing you to use aggressive caching techniques.
Usage (inside the project directory):
elm-boil build [-o|--output=dist]
A good idea to use the output parameter could be a parallel centered distribution of the same frontend for multiple environments.
Why do I chose elm-boil?
- Single dependency
- Support of SCSS
- Lightweight
- Extremely fast
- Ease of use
Contributing
Feel free to submit issues and enhancement requests šš!.