cloudinary / cloudinary/cloudinary-react-native
Issue: Improve `bootstrap.js` to support both Yarn and NPM with clearer errors
- Dominant language
- TypeScript
- Stars
- 28
- Forks
- 21
- PR merge metrics
- No merged PRs in 30d
Description
## Feature request for Cloudinary React Native SDK
Improve `scripts/bootstrap.js` to support both Yarn and NPM with clearer error handling.
## Explain your use case
When contributing to this repository, new developers typically start with `npm install`.
However, the current `scripts/bootstrap.js` assumes Yarn is installed.
If Yarn is missing, the script fails without guidance, making onboarding harder for contributors who default to npm.
## Describe the problem you’re trying to solve
Right now:
- The script hardcodes Yarn and fails if it’s not installed.
- There is no fallback to `npm run bootstrap`.
- If `bootstrap` is not defined in `package.json`, the script exits with no explanation.
This creates friction for new contributors and may result in unnecessary issues being opened.
## Do you have a proposed solution?
Yes.
- Detect if Yarn is available; if not, fall back to `npm run bootstrap`.
- Allow contributors to explicitly prefer npm (e.g. with a flag like `--use-npm`).
- Validate that a `bootstrap` script exists in `package.json` before trying to run it.
- Print clear, contributor-friendly error messages when something fails.
This change would not alter the default behavior for Yarn users, but it would improve reliability, reduce confusion, and make onboarding easier for developers using npm.
Contributor guide
Assessment
This issue has not been assessed yet.