Welcome, and thank you for your interest in contributing to One!
First, install the dependencies:
bun install
Next, initially build all the packages:
bun run build
You can also watch for changes in all packages and rebuild automatically:
bun run watch
Declare packages as peerDependencies rather than dependencies if they meet any of the following criteria:
- The package must have only a single instance in the application. Multiple copies may result in runtime errors.
- If we list them as
dependencies, it will be easy for package managers to install multiple copies of the same package, leading to issues. - Example:
@react-navigation/native(requires a single copy of@react-navigation/coreas a dependency)
- If we list them as
- The package includes native code. This typically also requires a single instance to avoid mismatches between native and JavaScript code, which can cause errors.
- Example:
react-native-screens
- Example:
Other packages may be listed as dependencies to reduce clutter in the user's package.json. For example, @react-navigation/elements.