elm-new v2.0.0
elm-new
Clojure has
lein new, Elixir hasmix newand now Elm haselm new!
With elm new you can easily start a new Elm project from the command line.
The idea is to be able to start coding right away instead of wasting time setting up the initial Elm architecture boilerplate. This is especially useful if you do a lot of prototyping.
Features
- No dependencies — all you need is a shell (like bash, zsh, fish, etc.)
- Very simple to install and use. Auto-completion included.
- 100% test covered. It just works!
Simply choose between:
- sandbox — good for learning about the Elm Architecture
- element — an Elm application embedded in an HTML element
- document — an application that has control over the full HTML document
- application — a single-page app
Usage
elm-new # Initialize a Browser.document in the current directory
elm-new my-project # Initialize a Browser.document in my-project/
elm-new my-project --beginner # Initialize a Browser.sandbox in my-project/
elm-new my-spa --navigation # Initialize a Browser.application in my-spa/
elm-new hello --hello-world # Initialize a "Hello, world!" program in hello/
elm-new --version # Prints the installed version
elm-new --help # Prints all possible commandsExample
$ elm-new my-awesome-project
my-awesome-project
├── .gitignore
├── README.md
├── elm.json
└── src
└── Main.elm
1 directory, 4 files
Your Elm program has been created successfully.
You can use "elm make" to compile it:
cd my-awesome-project
elm make src/Main.elm
Run "elm" for more commands.Installation
Linux, Mac OS X and Windows are supported.
npm
npm install -g elm-newHomebrew
brew install https://raw.githubusercontent.com/simonewebdesign/elm-new/master/elm-new.rbGit
git clone https://github.com/simonewebdesign/elm-new.git
cd elm-new && sudo make installSee here for other installation options.
Support for older Elm versions
Older versions of Elm are also supported:
- Elm 0.19 => elm-new v2.0.0+
- Elm 0.18 => elm-new v1.3.0
- Elm 0.17 => elm-new v1.1.3
- Elm 0.16 => elm-new v0.1.0
So, for example, if you're using Elm 0.18, you'll want to grab elm-new v1.3.0. You can either install it via brew or npm, or download it straight from the releases page.
The choices also differ depending on the Elm version. For example, for Elm 0.18 you could choose between:
Html.program— the default. Run:elm-new my-project-nameHtml.beginnerProgram— good for learning. Run:elm-new my-project --beginnerNavigation.program— SPA with routing. Run:elm-new my-project --navigation
Contributing
Contributors are welcome! Just fork this repo and start hacking away.
Make sure to check out CONTRIBUTING.md to get started.