Elm on mobile platforms

Regarding native stuff - i had successfully build elm into native app for mobile using Ejecta (https://impactjs.com/ejecta) - works great - problem it is webgl based,
Same stuff was done for desktop - using glfw-raub, image-raub, webgl-raub and pkg
Example of pkg way

Pros:

  • All works in native view (OpenGL)
  • There is no visible JS code

Cons:

  • Requires some mock code - to wrap DOM in node
  • Works only with WebGL based apps

Suggestion:

We can make in the same way wrapper around “native” components, just by using Html.node.
Then just use some build DOM wrapper (like Ejecta) - that will capture all events / element creation from elm - and just do native stuff based on that. With that way you will not need to use any custom Elm -> Targed View Builder - just bare elm, with UI lib, that can target customElements in a browser, and other stuff in mobile apps

2 Likes