Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Multiplatform Team with Expo

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers. →

Multiplatform Team with Expo

My talk about using Expo to build Cross-Platform Products in a small team. I talk about the new alpha package @expo/html-elements

Avatar for Maurício R Duarte

Maurício R Duarte

February 27, 2020

More Decks by Maurício R Duarte

Other Decks in Programming

Transcript

  1. Overview • A product designed for various platforms • Some

    realities of teams in Brazil • Different experiences in the same product • Cross-Platforms Apps • Expo Web instead of React Native Web • Build it once with Expo for Web (@expo/html-elements)
  2. Off-topic: Brazil Let's take a look at some situations in

    our scenario: •Expensive Apple products •A teenager probably doesn’t buy a Mac to start programming iOS apps •It’s difficult to find and hire an iOS app team
  3. Your team will create a design system, so how to

    manage the platform-specific UX? Use case
  4. Websites - - - Apps React DOM Vue NextJS Gatsby

    Swift / Obj-C Kotlin / Java Flutter React Native Xamarin
  5. Used by • Twitter • Major League Soccer • Flipkart

    • Uber • The Times • DataCamp.
  6. What is Expo SDK? Expo is a framework and a

    platform for universal React applications. It is a set of tools and services built around React Native and native platforms that help you develop, build, deploy, and quickly iterate on iOS, Android, and Web apps from the same JavaScript/TypeScript codebase.
  7. Universal SDK Expo Services CLIs • Expo Camera • Expo

    Permissions • … • Expo Client • Expo Snack • … • Expo Publish • Expo Build • Turtle CLI • …
  8. Expo Workflows Managed Bare Expo takes care of the rest

    for you React Native + Expo modules
  9. Expo Workflows A developer using the managed workflow doesn't use

    Xcode or Android Studio, they just write JavaScript code and manage configuration through app.json {
 // …
 “platforms”: [
 “android”,
 “ios",
 “web"
 ],
 // …
 }
  10. @expo/html-elements • Optimize SEO and Accessibility a11y rules • Every

    component accepts Stylesheet API <H1 /> <h1> Textview UILabel iOS Web Android
  11. Whats next? • Expo HTML Elements alpha • Open Issues

    and contribute to package • Product-Minded Software Developer • Use Snack as Playground