JSPM

expo-dev-menu

5.0.8
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 853524
  • Score
    100M100P100Q181413F
  • License MIT

Expo/React Native module with the developer menu.

Package Exports

  • expo-dev-menu
  • expo-dev-menu/app.plugin
  • expo-dev-menu/app.plugin.js
  • expo-dev-menu/build/DevMenu.js
  • expo-dev-menu/package.json

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (expo-dev-menu) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

📦 expo-dev-menu

Expo/React Native module to add developer menu to Debug builds of your application. This package is intended to be included in your project through expo-dev-client.

Documentation

You can find more information in the Expo documentation.

Contributing

The expo-dev-menu repository consists of two different parts, the exported package, which includes the native functions, located in the android, ios and src folders and the Dev Menu interface, located under the app folder.

Local development is usually done through bare-expo.

First, make sure to yarn and yarn start in expo-dev-menu which will add the port for the dev menu packager to dev-menu-packager-host. This is bundled into the native code in bare-expo so need to be done first.

To use dev-client when running bare-expo on Android, open MainApplication.java and set the USE_DEV_CLIENT value to true.

- static final boolean USE_DEV_CLIENT = false;
+ static final boolean USE_DEV_CLIENT = true;

To use dev-client when running bare-expo on iOS, open AppDelegate.mm and set the USE_DEV_CLIENT value to YES.

- BOOL useDevClient = NO;
+ BOOL useDevClient = YES;

Then build the native apps with npx pod-install && yarn ios or yarn android.

Making JavaScript changes inside the app folder

To update the JavaScript code inside the app folder, you need to run the dev-menu bundler locally.

  1. Navigate to the dev-menu package: cd packages/expo-dev-menu
  2. Start the Metro bundler: yarn start
  3. To use your local bundler on Android, open DevMenuManager.kt and set useDeveloperSupport to true.
- val useDeveloperSupport = false
+ val useDeveloperSupport = true
  1. Play with your changes on a simulator or device through bare-expo
  2. Once you've made all the necessary changes run yarn bundle:prod:ios && yarn bundle:prod:android to update the embedded bundle