I had a big writeup about these points on the DockYard blog for those interested in this kind of thing along with LiveViews optimistic UI features: If you click "post tweet", wether it's LiveView or React, you're talking to the server so there's no more or less suitability there compared to an SPA. Second, it's important to call out how LiveView will beat client-side apps that necessarily needs to talk to the server to perform writes or reads because we already have the connection established and there's less overhead on the other side since we don't need to fetch the world, and we send less data as the result of the interaction. Those can be achieved without LiveView in multiple ways, such as with CSS and CSS transitions, using LiveView hooks, or even integrating with UI toolkits designed for this purpose, such as Bootstrap, Alpine.JS, and similar > Animations - animations, menus, and general UI events that do not need the server in the first place are a bad fit for LiveView. > There are also use cases which are a bad fit for LiveView: These kinds of discussions miss a ton of nuance unfortunately (as most tech discussions do), so hopefully I can help answer this broadly:įirst off, it's important to call out how LiveView's docs recommend folks keep interactions purely client side for purely client side interactions: I'm excited for the launch of Phoenix 1.6 and HEEx is shaping up to be a complete replacement for your traditional SPA + Backend API, and using one consistent language for your full stack really has very freeing & powerful benefits, especially for small teams! It's a joy to build real time applications using it, and I very much appreciate the "developer experience" focus both Chris & Jose have for us Elixir devs! LiveView (and HEEx) continue to be very simple to understand abstractions on top of the rock solid OTP platform. It can be daunting to jump into such a strange world as a LiveView environment may look (Elixir syntax, OTP terminology, etc) but honestly once you dig in deeper, everything just makes sense. Both of these features combined amount to less than 1000 lines of code and "just work" across multiple web nodes. ![]() ![]() Not to mention we implemented a distributed chat system that sends message updates in real time to both browser clients and API clients. ![]() LiveView allowed us to get a completely real time updating channel where streamers can edit their metadata (game, title, viewer count, etc) and all of the viewers can see it in real time. We use Phoenix and LiveView to power all of our non-video interactions on and the immediate out of the box features and performance are unmatched.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |