Formerly choonkeat/create-elm-server, choonkeat/elm-fullstack. Search finds this package by either name.
Rerouted (regenerated, verified). Same repository and tag, but GitHub now builds the zip with different bytes, so it no longer matches the SHA-1 package.elm-lang.org recorded. The Lamdera package server serves a copy recovered from https://github.com/choonkeat/elm-webapp.
What we checked: Tag 3.0.1 is still on github.com/choonkeat/elm-webapp; its commit 97b0974d1edb is from 2021-10-10 01:51 UTC, before the version was published (2021-10-10 01:52 UTC); elm.json is byte-identical to package.elm-lang.org's; the exposed modules match docs.json; the zip's SHA-1 is not the published one (GitHub's zip no longer comes out byte for byte the same), so the contents were checked instead.
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/choonkeat/elm-webapp/zipball/3.0.1/
The README is better for getting an understanding and for getting started. In general
we'd just use the code generated by elm-webapp cli without the need to reference here.
A set of required protocols.
- `updateFromServer` is called when `serverMsg` is received, e.g. as response of `sendToServer`
- `clientMsgEncoder` encodes outgoing `clientMsg`, e.g. via `sendToServer`
- `serverMsgDecoder` decodes replies from Server
- `errorDecoder` decodes error replies from ServerExported type to enable apps to write their type signature of main, e.g.
main : Webapp.Client.Program Flags Model Msg
main =
webapp.elementReturns a Browser.element to use as main in your client app
and a sendToServer function to send clientMsg with
main =
webapp.elementReturns a Browser.document to use as main in your client app
and a sendToServer function to send clientMsg with
main =
webapp.documentReturns a Browser.application to use as main in your client app
and a sendToServer function to send clientMsg with
main =
webapp.application
Hook up ports to use websockets for passing serverMsg and clientMsg
websocketConnectedport receives an Int for time now in milliseconds. CurrentlyWebapp.Clientdoes not use this information for anything.websocketInport receives the raw string from websocketevent.datawhich will be parsed as aResult x serverMsg(seesendToServer)