It also happens to be creating some of fastest PWAs right now based on benchmarks. We built a lot of web component tech to make sure we were sending the least amount of code to the client and things like SSR and lazy loading with minimal configuration on your part (see our web component compiler Stencil we built in order to build our v4 components: http://stenciljs.com/).
Ask HN: How are you building cross-platform (mobile and browser) apps?
61–70 of 84 posts
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#62I use React + React Native for https://www.jqbx.fm . As a 1 man project it seemed like the only sensible way to build mobile (android/iOS) and browser versions. I can share almost all of the code (where applicable) so one can move a lot faster and have a lot less mental overhead. That being said React Native has stability and performance issues that are tricky and can hold up your app for a non-trivial amount of time…
Can you shed some light on what some of the performance and stability issues you faced are? What can I expect and how did you deal with them or work around them?
Nice app btw!
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#63Earlier quoted context omitted.
Thanks! And yeah heavily inspired by tt.fm (RIP). Hopefully the community keeps growing and can bring some of that 2011 internet magic back.
Yeah and this is smart because this time around the licensing falls on Spotify where as back then TT had to negotiate licensing if I'm not mistaken. I'm not a lawyer but if that's true this seems much more viable using Spotify's APIs with the caveat that your entire business relies on them if that's your aspiration. Regardless, wish I'd thought of this :-P Seems like it would be such a fun app to work on :-) Best of…
Sorry about the perf- it's a known issue and I'm working on it, I only recently got it (somewhat) feature complete so It's next on the list...
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#64I use React + React Native for https://www.jqbx.fm . As a 1 man project it seemed like the only sensible way to build mobile (android/iOS) and browser versions. I can share almost all of the code (where applicable) so one can move a lot faster and have a lot less mental overhead. That being said React Native has stability and performance issues that are tricky and can hold up your app for a non-trivial amount of time…
I'm building my first app in React Native right now - I have a native Android background though. Can you shed some light on what some of the performance and stability issues you faced are? What can I expect and how did you deal with them or work around them? Nice app btw!
1. Long lists (>100 items) don't perform well if you have to reorder them. Initial render is a bit slow but not that noticeable but if you have to reorder or add/remove from them on the fly it can be resource intensive.
2. Animation behavior varies between Android and iOS depending on what you're animating.
3. Re-rendering is expensive so you need to be careful when you update your state if you're using redux.
4. Easily fixable but console logging is expensive so be sure to remove all JS logs from production.
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#65Pure html+css with as little js as possible... eg: websites/single page webapps over native ios/android apps
Wow. Among all conversations, haven't heard this simple truth mentioned any more. Would love to hear more discussion along these lines.
You can use local storage to cache for offline use. TBH I don't think most apps really need the overhead of these new libraries. Half of the apps on the app store just display and update data from a DB.
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#66You should consider your target audience and your own resources. For consumer facing apps, I'm not sure an hybrid (cordova / ionic / webview shell) approach is really up to par, as the UX is really challenging to make right and performance will be lacking. That said, a native approach requires twice the codebase and twice the resources (man hours) roughly, so the challenge becomes maintaining feature parity and team…
Instagram is pretty popular, has a good UX and is built on a webview (ocne a year on a shitty connection the CSS doesn't load and you see it).
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#67Personally I don't think RN, Ionic, Electron, or any other tools completely solve all cross-platform development issues. Like all things its a tradeoff and personally I am not convinced that what we have out there is sufficient for most applications - particularly for small teams. Small apps maybe, but the second you have to go off the beaten path you will be losing weeks not hours of development time.
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#68Tweak the question, instead of "is there a framework that makes this difficult task simple" ask "is this a difficult task that can be simplified without significant investment or overhead?". Personally I don't think RN, Ionic, Electron, or any other tools completely solve all cross-platform development issues. Like all things its a tradeoff and personally I am not convinced that what we have out there is sufficient f…
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#69I were looking at Vue NativeScript. Anybody on why should I not?
Also curious if someone has anything to say about Vue/Nativescript. That would be my choice as well. I'm constantly wondering why React Native gets all the attention when Nativescript seems to have so much going for it.
Re: Ask HN: How are you building cross-platform (mobile and browser) apps?
#70You should consider your target audience and your own resources. For consumer facing apps, I'm not sure an hybrid (cordova / ionic / webview shell) approach is really up to par, as the UX is really challenging to make right and performance will be lacking. That said, a native approach requires twice the codebase and twice the resources (man hours) roughly, so the challenge becomes maintaining feature parity and team…
[0] https://github.com/xamarin/Xamarin.Forms ; https://github.com/xamarin/xamarin-android ; https://github.com/xamarin/xamarin-macios