Thanks a lot! I think these libraries are incredibly important, solving the puzzle "How do I create a complex app with multiple views". I know multiple views have always been possible but the "#route" seems important for a web app.
Evan, it would be very nice to have a "starter app" some how, something equivalent Phoenix's "mix phoenix.new your_app", that gives you a basic structure. To do a simple test I had to copy one of your examples piece by piece to get only what I needed. A basic "Pages.elm" included in this started project would speed up developers and help people trying to learn Elm to do SPA, this file could include the basic structure of the navigation stuff along with best practices. On Wednesday, May 25, 2016 at 5:02:03 PM UTC-5, Evan wrote: > > On Friday, Noah and I worked on "updating elm-history" so that folks can > do "routing" with Elm 0.17. The results are these libraries: > > - elm-lang/navigation > <http://package.elm-lang.org/packages/elm-lang/navigation/latest/> > - evancz/url-parser > <http://package.elm-lang.org/packages/evancz/url-parser/latest/> > > I think they will cover the core functionality in a way that also promotes > healthy architecture. If you disagree, I ask that you *use* these > libraries before you share your opinion (or ideally the particular scenario > you are having trouble with). > > > Details > > The elm-lang/navigation library is the core thing. It lets you get > notified about changes to the address bar. This may be the user typing in > there or pressing the forward and back buttons on the browser. It also lets > you "navigate to new URLs" so you can go to new URLs without reloading any > assets. > > The elm-lang/navigation library is designed such that you can parse URLs > however you want. You can see a basic example of that here > <https://github.com/elm-lang/navigation/tree/master/examples>. The > evancz/url-parser library is meant to handle more complex cases. You can > see a bit of that in this example > <https://github.com/evancz/url-parser/tree/master/examples>. > > My URL parser is intended to be a baseline for exploration. There are > probably cases it does not cover well. My goal right now is to point us > towards good API design, not to be *the* URL parser. > > > Thanks > > Big thanks to Noah for working through all this with me! And thank you to > Aaron who helped review and talk through the API we ended up with. These > were fun to work on :D > -- You received this message because you are subscribed to the Google Groups "Elm Discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
