tricycle/elm-actor-framework/1.0.1

NOTE: the latest version is 1.4.0

Renamed to bellroy/elm-actor-framework. It is published under that name, and new versions come out there.

Versions published as tricycle/elm-actor-framework still install under that name. 2 versions of 6 come from the new location (see their notes). 4 versions could not be recovered and cannot be installed.

Unavailable. Nobody can download this version any more, with elm or with the Lamdera compiler: github.com/bellroy/elm-actor-framework exists but has no tag 1.0.1; Software Heritage not asked yet (this run's --swh-calls were used up); no fork with tag 1.0.1 found (1 same-name repos checked); no cached copy. Use another version.

Details

Framework.Browser


Program

Elements

Documents

Application


type alias Program elmFlags appFlags appAddresses appActors appModel appMsg =
Program
elmFlags
(FrameworkModel appAddresses appModel)
(FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)

All of the functions in this module will return a Program. A Program describes an Elm program! How does it react to input? Does it show anything on screen? Etc.

Elements

{ factory :
appActors
-> ( Pid, appFlags )
-> ( appModel
, FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
, apply :
appModel
-> Process
appModel
output
(FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
, init :
elmFlags
-> FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
, view :
List output
-> Html
(FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
}
-> Program
elmFlags
appFlags
appAddresses
appActors
appModel
appMsg

Create an HTML element managed by Elm. The resulting elements are easy to embed in larger JavaScript projects, and lots of companies that use Elm started with this approach! Try it out on something small. If it works, great, do more! If not, revert, no big deal.

Documents

{ factory :
appActors
-> ( Pid, appFlags )
-> ( appModel
, FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
, apply :
appModel
-> Process
appModel
output
(FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
, init :
elmFlags
-> FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
, view :
List output
-> List
(Html
(FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
)
}
-> Program
elmFlags
appFlags
appAddresses
appActors
appModel
appMsg

Create an HTML document managed by Elm. This expands upon what element can do in that view now gives you control over the <title> and <body>.

Application

{ factory :
appActors
-> ( Pid, appFlags )
-> ( appModel
, FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
, apply :
appModel
-> Process
appModel
output
(FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
, init :
elmFlags
-> Url
-> Key
-> FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
, view :
List output
-> List
(Html
(FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
)
)
, onUrlRequest :
UrlRequest
-> FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
, onUrlChange :
Url
-> FrameworkMessage
appFlags
appAddresses
appActors
appModel
appMsg
}
-> Program
elmFlags
appFlags
appAddresses
appActors
appModel
appMsg

Create an application that manages Url changes.