Expo 2.0

The fastest way to build an iOS and Android app 📱

#5 Product of the WeekDecember 14, 2017

Expo enables you to build cross-platform native apps using only JavaScript.

In addition to React Native components, you'll have access to the Expo SDK, a library that provides a wide range of native APIs on iOS and Android. Expo can also manage assets for you, handle push notifications, and build your native binary for submission to the app store.

  • Eli Perkins
    Eli PerkinsMobile @ Clubhouse

    Quick to get some sort of app up and running


    Lots of vendor lock in (even after detaching/ejecting), doesn't teach you how to truly deploy a mobile app

    There's lots of cool things that Expo is doing, but I'm not sure this should be presented as a full-scale mobile development platform. Even with the eject scripts, there's still a fair amount of vendor tie-in that you get from leaning heavily on a kitchen sink of an native app that bundles every framework and has it's own set of abstractions. If Apple/Google releases a new iOS/Android API that you want to use, you have to wait for Expo to implement it first.

    There's also something to be said for the large amount of abstraction of platform-specific standards. I don't think Expo does a great job of building components that feel at home on each platform, starting with their recommendation of using a non-native replication of UINavigationController in `react-navigation`, to loading bundled fonts asynchronously, to using FontAwesome icons over the iOS-provided UIBarButtonSystemItem icons.

    If you're building a one-off mobile app that has no plan on being maintained, Expo might be the right fit for you. Looking to build a mobile app that will be maintained for some time to come? Stick to a vanilla React Native or native Swift/Kotlin app and learn the platform first.

    Eli Perkins has used this product for one week.
    Comments (2)
  • Javid Jamae
    Javid JamaeFounder / CEO - Skipcard

    Very useful for rapid development and distribution of new apps


    Have to "eject" to use native libraries (though they have good support for the most common native library use cases)

    We've been using Expo for the last year to develop a mobile app and the experience has been great. We've been forced to use some less than desirable pure Javascript libraries (like React Navigation for navigation) instead of alternative native libraries, but overall the Expo experience has been great, the team has been supportive, and the product has gotten significantly better with each release. Much kudos to the Expo team for all their hard work!

    Javid Jamae has used this product for one year.
    Comments (1)
You need to become a Contributor to join the discussion.
JimMaker@meanjim · Just a guy building websites
Hi I'm Jim, I work on Expo's website 👋 We recently updated our site in collaboration with our partners at Bakken & Bæck. We're really excited for people to check out Expo and discover how easy it is to get up and running. Expo provides a native runtime with a wide range of native APIs and components exposed to you right out of the box. We combine that with APIs already included with React Native, so most people only have to write JavaScript to build their native apps. Hit up https://expo.io/learn for a quick start guide. Happy Building!
Johannes Schickling
Johannes Schickling@_schickling · Co-founder & CEO of Prisma
@meanjim great job on the new design and product! 👌
JimMaker@meanjim · Just a guy building websites
@_schickling thank you for those kind words!
Max Stoiber
Max Stoiber@mxstbr · Technical Cofounder, Spectrum.chat
Expo is a godsend for anybody wanting to build a mobile app with React Native. That beautiful new website is just the icing on the cake: Their entire set of tools is immensely helpful all the way from kicking off your first app to collaborating with a team around the world on large-scale projects. On top of that, the folks over there are engaged with the community and always willing to answer questions about whatever problem you might be stumped by. Highly highly recommended! 💯
JimMaker@meanjim · Just a guy building websites
@mxstbr 🙌 🙌 🙌
Akshay Kadam(A2K)
Akshay Kadam(A2K)@deadcoder0904 · Maker of all things JavaScript 😘
These guys release new SDK before I finish my app every time. I guess they don't sleep 😴 Great website. Thank you ❤️
JimMaker@meanjim · Just a guy building websites
@deadcoder0904 thank you!
Dmitriy Loktev
Dmitriy Loktev@potomushto · React Native developer @ 16ms
I highly recommend it. As an engineer, I love Expo, because Expo team is doing very important work for the whole React Native community, they are top contributors in every possible aspect. Just look at Expo Snack — it's now standard de-facto for sharing almost any type of gist related to React Native. Somebody asks you about some Flexbox specifics or how to layout something properly with it? Share a Snack! As an indie app developer, I love Expo, because if you lucky and Expo SDK fits your requirement it reduces the costs of app development dramatically, and even after the launch, the large amount of hard work of maintaining becomes Expo's problem, not yours :) And when you get back to your app after a year to make a new feature, it's much easier to do it with Expo. I'm grateful for that.
JimMaker@meanjim · Just a guy building websites
@potomushto thank you for using Expo!
Drilon Jaha
Drilon Jaha@drilonjaha · Product Manager
Expo is the fantastic solution for what it servers. 10/10, hands down. We are using it for all of our React Native apps and it has made our lives way easier. Nothing but awesomeness.
JimMaker@meanjim · Just a guy building websites
@drilonjaha thank you for using us!