https://dailydrip.github.io/firestorm_elm/ hey you might be interested :)
-
Ahh.. the classic "I used turbolinks and didn't know I was building a SPA issue."
If you were to build an Elm/Ember/React/Vue app you would have faced all the same issues. Lots of folks load scripts/resources with react's willComponentMount hook 😁 and jquery plugins tend to leak event handlers like prime day echo sales.
It's cool though, it's not everyone's cup of 🍵
-
tl;dr - it has cost me too much money and time.
I have used it on a host of projects. It inevitably overtakes the js side of things as you have to actually tie into its various hooks if you want to avoid problems. Third party libraries are the worst here. One other example was linking from a page on layout A to a page with layout B. If A didn't load a global library (stripe in this case), then page B didn't have it available. If you loaded it multiple times bad things happened. Finding this, on a page that took payment info and intermittently failed depending on the path taken to get to that page, was horrendous and painful.