Live data from Hacker News

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

github.com

151–160 of 172 posts

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

#151
post #101

Earlier quoted context omitted.

After 4 years of doing cross-platform mobile, I loathe React and React Native by now, and I dislike Expo. But… suggesting any other alternative is tricky. True native development is, indeed, much better. But a small team will be hard-pressed for doing good work on both platforms, especially once you start fiddling with more important APIs. Configuration and getting your system to compile things to properly is almost…

> “Make a progressive web app”: yes, that might be the way to go; provided you can get the users to ‘install’ it on their devices. Assuming you're talking about the not-well-known process of adding PWAs to the Home screen, it's worth noting that you can package web apps for app store distribution as well. https://capacitorjs.com/

This seems quite good, if reviewers don’t reject the app on the basis that not enough of it is native. We’ve gotten push back from Apple for all sort of minutiae.

Thanks for the tip tho :)

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

#152

Earlier quoted context omitted.

This is highly dependent on your target market. On Android PWAs effectively are apps as far as users are concerned, you can even make a “WebAPK” and submit it to the Play Store. The story on iOS is much worse, naturally. But if you can get past getting users to actually install the app the rest of the experience is acceptable.

Can’t we disguise the PWA as a browser on the iOS App Store? So in theory it’s just another browser that only allows to open one website- the PWA. But on the surface, to the users it will be available as an app in App Store.

It is technically possible, of course, though I vaguely recall iOS App Store guidelines saying not to just wrap an existing website in a webview. On the flip side, PWA support in Safari has been gradually improving with better support for web manifests and web notifications, for example.

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

#153

Earlier quoted context omitted.

Expo is the free and open source framework and, separately, Expo Application Services (EAS) is the SaaS. Expo and EAS are designed to be decoupled while also working well together, optionally. The Expo framework gives you the module system, runtime environment, CLI tools, debugger, a suite of modules, navigation to build universal native apps. They're universal in that there is an Android build, an iOS build, and a w…

Hey. I appreciate that there is a distinction between Expo and EAS. However, as a user reading the Expo docs, I'm not sure if I can separate them easily without deviating from official docs. Look at the Expo docs on building and deployment, which are essential steps to getting your app distributed. I don't see any mention of how to achieve it without EAS . There used to be an expo build but it was deprecated a while…

A lot of the docs prioritize ease of getting started and EAS has a free plan generous enough to get you to production and often beyond. The Expo CLI docs have a section on building locally here: https://docs.expo.dev/more/expo-cli/#building

"npx expo prebuild" (covered in that link) is a good command to know. It generates "android" and "ios" directories with your Android Studio and Xcode projects, respectively. These projects can be built entirely locally and there is no dependency on EAS.

As a side note, the old "expo build" command also ran on hosted servers. It was part of the old Expo CLI, which, for historical reasons from six or seven years ago, didn't separate the free & open source Expo framework from the hosted offering. We built EAS years later, with a major new feature being support for builds that have custom native code. Keeping EAS decoupled from Expo has been a conscious effort, and we've also designed EAS to work with any React Native app whether it uses Expo or not.

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

#154

Expo has an impressive team and investor backing However, making your apps depend on a framework has the following dangers: - the framework might stop being maintained - the vc-backed framework might need to become monetized beyond your means At the end of the day, all these frameworks offer are convenience APIs to easily integrate with native things like push notifications or social sign-ins However, even when these…

These are a few things I can say as one of the Expo cofounders. We've worked on the Expo framework for over eight years, and did R&D for a year or two before that even before React Native was released. Many other companies and frameworks, even from very large companies, have come and gone in that time and Expo has endured. Paul Graham wrote he found determination "to be the most important quality in startup founders"…

...and I of course wish you every bit of success. The root cause of many problems is Android and iOS specs changing every 6 months in a not backwards compatible way. It makes maintaining any framework an even bigger headache. I hope you have the determination to keep your level of support high enough to overcome this

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

#155
Expo and EAS is my preferred choice for building a new product these days.

I was focused on native Android development (Java/Kotlin) for many years. React Native (I first used in late 2016) and Expo (I first used it in production in early 2020) have matured so much over the last years and all the Expo tooling is a game changer for building (cross platform) apps.

A few examples of how Expo has changed the game: - The Expo Go or Expo dev client make it possible to no longer need XCode or Android Studio during development and thus make it much easier to bring engineers onto a project who do not necessarily have mobile dev experience. The dev client can be built locally by one engineer and shared with the team or can be built in the cloud with EAS Build. - Upgrades in bare React Native projects used to be painful and time consuming. With Expo prebuild, one can (re-)generate the native projects at any time including after upgrading to the latest RN/Expo versions. Further this allows having to never source control the iOS/Android folders. - Expo config plugins have made it possible (and really straightforward) to apply modification to the XCode/AS projects such as adding permissions or adding extensions. Requiring modifications to the XCode/AS projects used to be a reason for having to use bare RN / eject from Expo. - The Expo Modules API has made it really simple to create a library project and allows for writing the native code in Swift/Kotlin. Setting up and maintaining a RN library used to be a lot more involved especially if it was small and not touched very often. - The entire Expo EAS offering basically provides you with what normally a mobile ops time would provide - builds in the cloud, app store submission and ota updating. For anyone who has set this up with Buildkite/App Center/CI tool knows how much time this could cost / take.

And these are just a few things that are top of mind.

It is my experience that using Expo + dev client, allows me to bring together a team from all backgrounds (iOS, Android, web, backend) and quickly get everyone up and running, contributing and have impact.

The first product I built with Expo was HowWeFeel (April 2020) and with a small team we shipped the initial version iOS, Android and web in less than two weeks. The most recent product is Pinterest TV Studio and because of Expo/RN it is feasible for us to have it not only available for iOS but also Android.

I'm excited for the future of Expo and curious what will drop during launch party (August 8th).

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

#156
I work for Infinite Red (leading RN consultancy), and we have really bought into Expo in full force in the past year or so. The addition of EAS, and prebuild with config plugins has completely changed the game and for us and all but eliminated the need to ever do bare workflow anymore.

Things we love about the expo ecosystem

- React Native upgrades are much less painful if you use prebuild. Upgrading the expo SDK takes care of most things for you

- EAS makes distributing and managing certs incredibly easy

- Most expo packages (like expo-camera, etc) are some of the best out there and very well documented and supported

- The Expo team is incredibly talented and always willing to help if issues arise.

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

#157

I work for Infinite Red (leading RN consultancy), and we have really bought into Expo in full force in the past year or so. The addition of EAS, and prebuild with config plugins has completely changed the game and for us and all but eliminated the need to ever do bare workflow anymore. Things we love about the expo ecosystem - React Native upgrades are much less painful if you use prebuild. Upgrading the expo SDK tak…

Infinite Red has been a great partner for Expo. Thank you!

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

#158

Expo and EAS is my preferred choice for building a new product these days. I was focused on native Android development (Java/Kotlin) for many years. React Native (I first used in late 2016) and Expo (I first used it in production in early 2020) have matured so much over the last years and all the Expo tooling is a game changer for building (cross platform) apps. A few examples of how Expo has changed the game: - The…

Sometimes I tell people the best Expo apps have custom native code and it is a really useful skill to know Kotlin and Swift in addition to React and JavaScript. Glad to hear you have found Expo and EAS so useful! One of the features we'll be previewing during launch week is something Pinterest has been needing for a long time, and we'll make sure you hear about it.

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

#159
I think there is a lot of confusion around what Expo provides. You certainly don’t have to be using their managed workflow to take advantage of the platform.

I’ve used Expo modules and services at both Tesla and SpaceX for building large scale apps. I’ve consistently found that their modules are some of the best maintained in the ecosystem.

One of the biggest technical risks we face is building a feature around a module that is later abandoned. Using Expo, we don’t really have to worry about this. Web support is also a huge plus (web support in other RN packages is hit or miss).

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

#160
post #101
post #90

I’m primarily a web developer that’s long been interested in native mobile environments and after trying out many of these cross platform frameworks (all the way back to Appcelerator for those who remember!) my conclusion always ends up that they’re almost always a bad idea. The experience is inferior to native, it’s full of compromises to make cross platform work and you’re at the mercy of a company standing between…

After 4 years of doing cross-platform mobile, I loathe React and React Native by now, and I dislike Expo. But… suggesting any other alternative is tricky. True native development is, indeed, much better. But a small team will be hard-pressed for doing good work on both platforms, especially once you start fiddling with more important APIs. Configuration and getting your system to compile things to properly is almost…

The changes coming in Safari 17 are a great step forward for PWAs
Post reply on HN