To submit a pull request:
- Fork the repository and create a feature branch. (Existing contributors can create feature branches without forking. Prefix the branch name with
@your-github-username/.) - Run
pnpm installin the root directory to generate the build files. - Use conventional commits including in the PR title.
- Fill out the entire PR template. Ensure your code is tested locally and has continuous tests in CI.
- Make sure all tests pass on GitHub Actions.
- Wait for a review and adjust the code if necessary.
- Plugins can be generated by running
pnpm gen. - Add plugins to the example in
apps/appto test them. - The example app should always stay in a state of regeneration.
Be sure to run the following scripts in the root directory to update automation tools:
- Update dependabot:
pnpm update-dependabot-config - Update the issue template:
pnpm update-issue-template
- Update the
catalog:block inpnpm-workspace.yamlwith the new SDK versions forexpo,expo-module-scripts,@expo/config-plugins, and any other shared dependencies - Ensure every project under
apps/is updated to latest version of Expo - Update each library’s
README.md- Ensuring the latest version of Expo is listed
- Ensure the upstream package version is correct
- Use the next version for the matching config plugin
- Update
SDK_VERSIONinscripts/generate-plugin.ts
Packages are published manually using the scripts in the root package.json:
pnpm bump: Increments the major version of all packages.pnpm release: Publishes all packages to npm.