4 ms·
Just out of curiosity, are you leveraging liveview at all? I also use Phoenix for my SaaS project (took me 5 years to hit $2.5k/mo so congrats!) but I went all
by mehphp 5y ago
Just out of curiosity, are you leveraging liveview at all?
I also use Phoenix for my SaaS project (took me 5 years to hit $2.5k/mo so congrats!) but I went all-in on liveview. It's some solid tech and I'm pretty happy with it but I'm wondering what the limits are when there is a lot of interactivity which seems to be the case with your app.
- enraged_camel 5y agoThank you! We are not leveraging LiveView at the moment, since we already have a full-blown Vue frontend. I have been watching it from the sidelines though, and I agree that it's both very solid and very promising. I'd be very interested to hear your experience with it, if you'd be willing to share (either here, or you can email me: ege@pricetable.io).
- mehphp 5y agoIt was a shift in workflow to no longer use javascript but overall I've really enjoyed it. Generally, when I create an app I use the typical route of react front-end and the backend is the API. To me, this almost feels like writing/maintaining the app twice especially on solo projects. With liveview this isn't the case at all. You still have your separations of concerns but you get the server-side rendering workflow with all the benefits of a highly interactive front-end. I want to emphasize though that I've been using liveview for less than a year on a relatively small app so I am by no means an expert. I'm certainly not suggesting that everyone drop javascript-heavy workflows and switch to phoenix/liveview but I do feel comfortable enough suggesting that it is a serious candidate to be considered.
- AlchemistCamp 5y agoWhat's your SaaS project? Did you end up leveraging OTP or Phoenix channels much?
- mehphp 5y agoIt's an app in the Shopify App Store. Regarding OTP I'm still learning, but I am utilizing GenServers and of course passing messages between processes via the actor model which has been very useful. Once you realize that everything is a process and those processes can pass messages (including to one's self) it allows for some pretty interesting stuff.
- subbu 5y agoI am building a property management software (PMS). It's a specialized form of CRM. I have dumped MVC entirely in favor of LiveView. handle_event and handle_info are a better programming model for high-level of interactivity in a page. It also gets you closer to the database, entirely bypassing GraphQL and client-side JavaScript. I had to expose a whole API endpoint to set a flag here, a preference there. No more of that.
- mehphp 5y agoSpeaking of "closer to the database" Ecto is now one of my all-time favorite libraries. Every time I think "this is going to be tricky".. nope. Ecto seems to have thought of that.