Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time


Elm-Time is an open-source, cross-platform runtime environment for the Elm programming language.

Elm-Time integrates a web server and a database management system, automating the persistence and maintenance of application state and database migrations. To learn more about the database management system and persistence, see the dedicated guide on persistence of application state

The Elm-Time compiler offers various interfaces supporting the automatic generation of Elm code at build time. This automation frees applications from boilerplate and glue code and allows us to focus on business logic.

Getting Started

Download the pre-built Elm-Time binary for your platform at, or on the releases page on GitHub.

The elm-time executable file integrates all functionality to build apps and operate web services.

The command below runs a server and deploys a full-stack web app:

elm-time  run-server  --public-urls="http://*:5000"  --deploy=

Docker Image

To deploy in a docker container, use the elm-time/elm-time image from the GitHub Container registry ( The tags are aligned with the version IDs in the CLI executable file.

docker  run  -p 5000:80  -p 4000:4000  --env "APPSETTING_adminPassword=test"


A selection of guides on the most popular topics:

For an overview of all guides and documentation, see the guide directory.

Example Apps

Rich Chat Room

The rich chat room example app demonstrates features typically found in a chat app, such as user names, message rate-limiting, sound effects, etc. For a detailed description of this app, see the readme file at

Elm Editor

Elm Editor is a web app for developing Elm programs.

As an integrated development environment, it assists us in reading, writing, and testing Elm programs and in collaborating with other developers.

To see Elm Editor in action, check out the public instance at

To learn more about Elm Editor, see

More Examples

For more example apps, see the example-apps directory