Renamed to ryan-haskell/elm-spa. It is published under that name, and new versions come out there.
Versions published as ryannhg/elm-spa still install under that name. 13 versions of 13 come from the new location (see their notes).
Rerouted (fork, verified). The original repository is gone. This copy comes from a fork that still has the tag. The Lamdera package server serves a copy recovered from https://github.com/tuohy/elm-spa (a fork).
What we checked: Rebuilt with git archive from commit 292236b2582f of https://github.com/tuohy/elm-spa (a fork) (zip prefix ryannhg-elm-spa-8ee73bf/, America/Los_Angeles times): the zip is byte-identical to the one package.elm-lang.org recorded, SHA-1 597d34671fca0206517a1cd488d425f4f335b10f.
The Lamdera compiler uses this copy and prints a one-line notice saying so. elm itself fails to download this version.
Details · package.elm-lang.org's zip: https://github.com/ryannhg/elm-spa/zipball/1.0.0/
an experiment for creating single page apps with Elm!
Note: the API is still experimental! (hoping to post on discourse soon for community feedback)
elm install ryannhg/elm-spamodule Main exposing (main)
import Application
import Generated.Pages as Pages
import Generated.Route as Route
import Global
main =
Application.create
{ ui = Application.usingHtml
, routing =
{ routes = Route.routes
, toPath = Route.toPath
, notFound = Route.NotFound ()
}
, global =
{ init = Global.init
, update = Global.update
, subscriptions = Global.subscriptions
}
, page = Pages.page
}(Instead of making everything an elm-fork-knife!)
page =
Page.static
{ title = title
, view = view
}page =
Page.sandbox
{ title = title
, init = init
, update = update
, view = view
}page =
Page.element
{ title = title
, init = init
, update = update
, subscriptions = subscriptions
, view = view
}page =
Page.component
{ title = title
, init = init
, update = update
, subscriptions = subscriptions
, view = view
}init appRoute =
case appRoute of
Route.Index route ->
index.init route
Route.Counter route ->
counter.init route
Route.Random route ->
random.init route( It's like magic, but actually it's just functions. )
this project comes with an example in examples/html.
Here's how to run it:
git clone https://github.com/ryannhg/elm-spa.git && cd elm-spa
npm install
npm run dev