jinjor/elm-time-travel

An experimental debugger for Elm


License
BSD-3-Clause
Install
elm-package install jinjor/elm-time-travel 2.0.0

Documentation

elm-time-travel

Build Status

An experimental debugger for Elm. See DEMO

How to use

Just use TimeTravel.program instead of Html.program.

import TimeTravel.Html as TimeTravel

main =
  -- Html.program
  TimeTravel.program
    { init = init
    , view = view
    , update = update
    , subscriptions = subscriptions
    }

That's it!

What is this library for?

Elm has a great official debugger from 0.18, but this debugger was born at 0.17! These two are focusing on slightly different things. The official one focuses on reproducing state and communicating between dev and QA people. This one, on the other hand, is more focusing on digging into problems that happen in runtime.

This library implements following features:

  • Filtering Msgs
  • Filtering Model
  • Figure out how Msgs are chaining

And the ideas not implemented yet are:

  • Watch partial Model and find Msgs that changes it
  • Automatically save debugger state

So this library is a PoC of what the official debugger can potentially be in the future. Evan is also positive at this :)

LICENSE

BSD3