Skip to content
This repository

The full source for http://elm-lang.org/, the home-page of the Elm programming language. Open sourced as a way to teach people how to write and serve Elm code. Follow the instructions in README.md to get the site setup on your own machine.

branch: master
README.md

Template for creating Elm websites

This project contains all of the source files used to create elm-lang.org. It provides a server and general structure for creating your own Elm website. The server lets you mix Elm, images, videos, HTML/CSS/JS, and whatever else you need.

You can also use this to run elm-lang.org/try locally.

Set up

First make sure that you have the Elm compiler installed (directions).

Then follow these steps to get the website running locally:

git clone https://github.com/evancz/elm-lang.org.git
cd elm-lang.org
cabal configure
cabal build
./dist/build/run-elm-website/run-elm-website

Great! You should be set up with elm-lang.org running at localhost:8000/.

You can run cabal clean to clear out all cached build information and start fresh.

Project Structure

  • public/ — all of the .elm files used for the site. This makes up the majority of client-side code. You can change/delete the existing files and add entirely new files. The changes, deletions, and additions will be served automatically.

  • resources/ — the various resources needed for Elm. This is where you put all of your non-Elm content, like images, videos, JavaScript code, etc.

  • server/ — the Haskell files responsible for serving everything from .elm files to images. Look here if you need to change how a particular resource is served or if you want to disable some of the sites features (such as the online editor).

Something went wrong with that request. Please try again.