Live data from Hacker News

Expo – Open-source platform for making universal apps for Android, iOS, and web

github.com

51–60 of 172 posts

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#51
Slightly off-topic: how practical is it really to build devices (iOS and Android) and web from the same code base?

My poor understanding is that React Native, and hence Expo, doesn't use the same CSS frameworks as web development. I'm curious how that works from the same code base, or perhaps that's one of the major difficulties.

Also I see Expo as a fancy build framework but it's still fundamentally a RN application. Is this correct?

(My front-end colleagues are on another continent and we don't get any water-cooler time. Sorry for the possibly awful questions.)

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#52
Without a doubt, Expo is one of the worst tools I have ever used.

1. I can't get a debug build of the app without using their cloud services.

2. Latest version of Android app to preview Expo apps did not work with latest stable Expo version.

3. Random build errors all the time due to some features being deprecated without being mentioned anywhere.

4. Tries to do too much and breaks quite often

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#53
post #36

Earlier quoted context omitted.

You can use the `--local` flag to build on your own computer/CI/VPS. `eas build --local -p ios --profile production` can locally build you an iOS bundle. Don't expect it to work out of the box, though. Your machine should have all the XCode tooling correctly installed and configured. Works for Android as well.

Thanks. I wasn't aware that eas build works locally as well (since they deprecated expo build). Is the build job also open source somehow?

https://github.com/expo/eas-build

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#54
post #36

I've been using Expo for past 2 years and I enjoyed the experience overall. But make no mistakes that Expo is a SaaS with the ability to inspect some part of the codebase. (I stand corrected here) ~Everything important for building and distribution process is moving to EAS, cloud-based service that is not open-source and cannot be self-hosted. So if want to build your app using your own VPS, you are out of luck (at l…

You can use the `--local` flag to build on your own computer/CI/VPS. `eas build --local -p ios --profile production` can locally build you an iOS bundle. Don't expect it to work out of the box, though. Your machine should have all the XCode tooling correctly installed and configured. Works for Android as well.

AFAIK using -—local still requires an eas account though.

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#55
post #51

Slightly off-topic: how practical is it really to build devices (iOS and Android) and web from the same code base? My poor understanding is that React Native, and hence Expo, doesn't use the same CSS frameworks as web development. I'm curious how that works from the same code base, or perhaps that's one of the major difficulties. Also I see Expo as a fancy build framework but it's still fundamentally a RN application…

I have never attempted to use the web target of Expo, and probably would never try, not the least because so many dependencies assume that the target of a React Native app is either iOS or Android with the web having such different APIs, and the plethora of alternative options for the web.

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#56
post #51

Slightly off-topic: how practical is it really to build devices (iOS and Android) and web from the same code base? My poor understanding is that React Native, and hence Expo, doesn't use the same CSS frameworks as web development. I'm curious how that works from the same code base, or perhaps that's one of the major difficulties. Also I see Expo as a fancy build framework but it's still fundamentally a RN application…

I’m not using Expo but I do use Capacitor+Quasar to build cross platform apps to great success. I use it for my job and for my side business. Without it I doubt I could run my side business because I just don’t have the time as just 1 person to maintain 3 codebases.

I’ve never used Expo, React Native, or Flutter so can’t speak to those but I’m pretty happy with my setup. Yes I have to put a tiny bit of logic behind checks for if I’m on the web or if I’m in an app but it works surprisingly well overall IMHO.

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#58
post #36

Earlier quoted context omitted.

You can use the `--local` flag to build on your own computer/CI/VPS. `eas build --local -p ios --profile production` can locally build you an iOS bundle. Don't expect it to work out of the box, though. Your machine should have all the XCode tooling correctly installed and configured. Works for Android as well.

AFAIK using -—local still requires an eas account though.

It does. It's possible to make a patchset that lifts this restriction, though. If you're interested, I'd be willing to make it available.

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#59

Is there anything equivalent for Vue? I know there was VueNative and NativeScript and there is even Ionic in Vue, but haven't really seen any framework that is either dedicated to Vue or has a strong support for Vue.

Quasar+Vue (uses Capacitor as well) has worked very well for me. I used Ionic with Angular years ago and I know they support Vue now but their support wasn’t great last I looked (it’s been years, this might have changed). Quasar is Vue-only and benefits from that focus.

Re: Expo – Open-source platform for making universal apps for Android, iOS, and web

#60
post #36

Earlier quoted context omitted.

You can use the `--local` flag to build on your own computer/CI/VPS. `eas build --local -p ios --profile production` can locally build you an iOS bundle. Don't expect it to work out of the box, though. Your machine should have all the XCode tooling correctly installed and configured. Works for Android as well.

AFAIK using -—local still requires an eas account though.

I believe it still uses EAS for certificates by default. You can use "prebuild" to get the ios / android directories. Alternatively start a React Native app and install their modules separately. These options still work well but require a lot more setup.
Post reply on HN