-
Notifications
You must be signed in to change notification settings - Fork 8.2k
Closed
Labels
Platform: webUsing Expo in the browserUsing Expo in the browser
Description
Web support beta has been great, but it's time to make it production ready! Here I've outlined the steps required to creating a production ready system for building basic web apps with Expo (a stable MVP). There are also a few completed V2 features which we can move to another place after V1 is complete.
Navigation
This has elevated to its own category.
- Examples
- Next.js for web & React Navigation for native
- React Router for web & React Navigation for native
- Drawer Navigator example
- Using Media Queries to change navigation
- React Navigation
- History support basic navigators
- History support for nested navigators
PWA
- Upgrade to
webpack@4.42.0
- CLI for creating assets. Redesign Expo web PWA system expo-cli#1686
- Improved PWA generation in Webpack. Redesign Expo web PWA system expo-cli#1686
Documentation
- Adding web support
- Starting a web project
- Building for web
- Publishing to web hosting platforms
- Customizing Webpack
- Babel Preset Documentation
- Styling options:
-
styled-components
vs React Native Style Sheet - Using hooks to create pseudo class effects like hover, focus, and active states.
-
- Routing and navigation
- Performance tips
- Usage in the Bare-workflow
- Using TypeScript
- Video tutorial
- PWAs
Testing
- [unit] Web support in
jest-expo
- [render] Support Enzyme
jest-expo-enzyme
- [E2E] Support Puppeteer
jest-expo-puppeteer
- Storybook example
SDK
- Add unavailability errors to any native functionality that doesn't exist on web
- Support all basic primitive features in the Expo ecosystem
- Improve React Native for web
- Fix tree-shaking
V2
- Improve React Native for web
- Slider component
- Momentum scroll events
- Fixing tint Color bug on safari
- Support extended ecosystem
-
react-native-gesture-handler
-
react-native-reanimated
-
react-native-safe-area-context
-
react-native-web-hooks
-
react-native-shared-element
-
react-native-svg
-
@react-native-community/web-view
- React Navigation V5
-
- Improve/Add experimental packages
- bar code scanner
- face detector
- Support third-party SDK modules
- expo-facebook
- expo-google
- Sentry
- Amplitude
- expo-apple-authentication
- Merge
react-apple-authentication
intoexpo-apple-authentication
- Merge
- Branch
- Facebook Ads
- Push Notifications
- Payments - Stripe - expo-payments-stripe
Custom Workflows
- Support basic Gatsby
- Document getting started
- Using Expo SDK
- Building for deployment
- Example
- Support basic Next.js
- Document getting started
- Using Expo SDK
- Building for deployment
- Example
- Support basic Preact
V2
- Support basic Electron
- Document getting started
- Using Expo SDK
- Building for deployment
- Example
- Support Preact
Tooling
- Starting a project with
expo start:web
&expo start
- E2E test
- Building with
expo build:web
- E2E test
- Generate PWA
- Generate favicon V2
- Custom Webpack config
- mixable functions for adding Expo support to other Webpack configs
- Unit test shape
app.json
web functionality- Move all webpack config options out Add ability to include modules to the babel loader expo-cli#1510
- Remove all dangerous values
Snack
- Add web support
Client
- Show running expo web processes and open to web browser
resdevd, gsbelarus, mapreal19, pliashkou, nandorojo and 121 moreMartian2Lee, robertwt7, sergeushenecz, wagnercsfilho, sarthakpranesh and 4 moreraphaelrk, fibo, pyankoff, alejomendoza, jairoFernandez and 37 morebyCedric, jacobarvidsson, ecreeth, tonycoco, jjforsythe and 70 moreLinusU, Arrow7000, harisvsulaiman, pyankoff, alejomendoza and 44 more
Metadata
Metadata
Assignees
Labels
Platform: webUsing Expo in the browserUsing Expo in the browser