2019-10-05 01:16:02 +03:00
|
|
|
# ryannhg/elm-app
|
2019-10-16 07:52:54 +03:00
|
|
|
> an experiment for creating single page apps with Elm!
|
2019-10-05 01:16:02 +03:00
|
|
|
|
2019-10-08 08:22:17 +03:00
|
|
|
|
2019-10-16 07:52:54 +03:00
|
|
|
### try it out
|
2019-10-05 01:16:02 +03:00
|
|
|
|
2019-10-16 07:52:54 +03:00
|
|
|
1. `npm install`
|
2019-10-05 01:16:02 +03:00
|
|
|
|
2019-10-16 07:52:54 +03:00
|
|
|
1. `npm run dev`
|
2019-10-05 01:16:02 +03:00
|
|
|
|
|
|
|
|
2019-10-16 07:52:54 +03:00
|
|
|
### overview
|
2019-10-05 01:16:02 +03:00
|
|
|
|
2019-10-08 08:22:17 +03:00
|
|
|
```elm
|
|
|
|
module Main exposing (main)
|
2019-10-05 01:16:02 +03:00
|
|
|
|
2019-10-16 07:52:54 +03:00
|
|
|
import Application exposing (Application)
|
|
|
|
import Generated.Pages as Pages
|
|
|
|
import Generated.Route as Route
|
|
|
|
import Layout as Layout
|
2019-10-05 01:16:02 +03:00
|
|
|
|
2019-10-08 08:22:17 +03:00
|
|
|
|
2019-10-16 07:52:54 +03:00
|
|
|
main : Application () Pages.Model Pages.Msg
|
2019-10-08 08:22:17 +03:00
|
|
|
main =
|
2019-10-16 07:52:54 +03:00
|
|
|
Application.create
|
|
|
|
{ routing =
|
|
|
|
{ fromUrl = Route.fromUrl
|
|
|
|
, toPath = Route.toPath
|
|
|
|
}
|
|
|
|
, layout =
|
|
|
|
{ view = Layout.view
|
|
|
|
}
|
|
|
|
, pages =
|
|
|
|
{ init = Pages.init
|
|
|
|
, update = Pages.update
|
|
|
|
, bundle = Pages.bundle
|
|
|
|
}
|
2019-10-08 23:06:03 +03:00
|
|
|
}
|
|
|
|
```
|
|
|
|
|
2019-10-16 07:52:54 +03:00
|
|
|
#### supporting code
|
2019-10-08 23:06:03 +03:00
|
|
|
|
2019-10-16 08:02:06 +03:00
|
|
|
- [`Generated.Route`](./example/src/Generated/Route.elm)
|
2019-10-08 23:06:03 +03:00
|
|
|
|
2019-10-16 08:02:06 +03:00
|
|
|
- [`Generated.Pages`](./example/src/Generated/Pages.elm)
|
2019-10-08 23:06:03 +03:00
|
|
|
|
2019-10-16 08:02:06 +03:00
|
|
|
- [`Layout`](./example/src/Layout.elm)
|
2019-10-08 23:06:03 +03:00
|
|
|
|
2019-10-16 08:02:06 +03:00
|
|
|
- [`Pages.Homepage`](./example/src/Pages/Homepage.elm) (a static page)
|
2019-10-08 23:06:03 +03:00
|
|
|
|
2019-10-16 08:02:06 +03:00
|
|
|
- [`Pages.Counter`](./example/src/Pages/Counter.elm) (a sandbox page)
|
2019-10-05 04:25:25 +03:00
|
|
|
|
2019-10-16 08:02:06 +03:00
|
|
|
- [`Pages.Random`](./example/src/Pages/Random.elm) (a static page)
|