- Evan entered hermit mode to create Acadia, a language for an Elm-like experience querying the database. He's given conference talks about it but none have been recorded. https://acadia.engineering/ This seems to have the same goals as Lamdera.
- Evan hinted that 0.19.2 is coming and has asked for help profiling it https://discourse.elm-lang.org/t/help-me-profile-elm-0-19-2-....
In the meantime the ecosystem is getting crazy evolved. Turns out not changing the language under your feet for a few years leads to lots of development with what's currently there. Frameworks like elm-pages allowed for command line utils in Elm like elm-codegen. Elm-review lets you write linting rules with autofixes unlike anything I've used in other languages. A few people are writing forks and non-forks that target more than the browser or self-host the compiler. Every backend language I've used with decent types has a package to generate Elm types (and their decoders, and a nice way to interact with the JSON API, and deal with glue code generally).
Literal forks of Elm compiler
- Gren (general purpose lang targeting browser, CLI, servers) https://gren-lang.org/
- Zokka (fixes a few compiler bugs and allows for custom package repos) https://discourse.elm-lang.org/t/a-new-zokka-version-bringin...
- Guida (self-hosted compiler) https://guida-lang.org/
Forks that do not ever seek to change the syntax of the language and thus compile .elm files
- Lamdera ("non-fork" fullstack with evergreen migrations) https://dashboard.lamdera.app/docs/starting
- Eco (written in Elm targeting x86 binaries via MLIR and LLVM) https://github.com/eco-lang/eco-runtime
- Elm-run (targeting CLI and servers, self hosted) https://elm-run.dev/roadmap
Languages inspired by it whose creators are big Elm users:
- Roc (general purpose): https://www.roc-lang.org/faq
- Gleam (targets Erlang VM and browser) https://gleam.run/cheatsheets/gleam-for-elm-users/
- Cara https://cara-lang.com/
Things that use the Elm architecture in other languages (linking to pages that mention the connection where possible):
- Foldkit (Typescript) https://discourse.elm-lang.org/t/foldkit-the-elm-architectur...
- Iced (Rust): https://book.iced.rs/
- Bubble Tea (Go): https://github.com/charmbracelet/bubbletea
- Lustre (Gleam): https://github.com/lustre-labs/lustre
- A list of TEA-in-Swift and React in Swift: https://gist.github.com/inamiy/bd257c60e670de8a144b1f97a07ba...
- Redux (Javascript/Typescript): https://redux-toolkit.js.org/rtk-query/comparison
If you read this far and are wondering which to check out, I cannot endorse Lamdera enough. Use the same types from your DB to your frontend and write zero glue code. Migrations required to update the running frontend/backend whenever you change anything. Really changes the way you write code.
Also authored the first Elm-in-Elm compiler for a limited subset for json-to-elm, then leading to a pure Elm virtual-dom implementation used for elm-html-test!