Contributing
Thanks for your interest in contributing! This project uses a Bun monorepo.
Repository Structure
react-native-nitro-version-check/
├── package/ # Main library
│ ├── src/ # TypeScript source
│ ├── ios/ # Swift implementation
│ ├── android/ # Kotlin implementation
│ └── nitrogen/ # Generated Nitro specs
├── example/ # Demo React Native app
└── docs/ # This documentation site
Setup
Prerequisites
- Bun
- Xcode (for iOS)
- Android Studio (for Android)
Clone and install
git clone https://github.com/AlshehriAli0/react-native-nitro-version-check.git
cd react-native-nitro-version-check
bun install
Running the Example App
iOS
cd example
npx expo prebuild
bun run ios
Android
cd example
npx expo prebuild
bun run android
Running the Docs
cd docs
bun install
bun start
This starts a local Docusaurus dev server at http://localhost:3000.
Code Quality
This project uses Biome for linting and formatting:
# Lint
bun run lint
# Lint and auto-fix
bun run lint:fix
# Format
bun run format
Commit Convention
We use Conventional Commits. Commit messages are validated by commitlint.
feat: add install source detection
fix: correct version comparison for pre-release tags
docs: update API reference
chore: bump dependencies
Pull Requests
- Fork the repository
- Create a feature branch (
git checkout -b feat/my-feature) - Make your changes
- Run
bun run lintandbun run typecheck - Commit with a conventional commit message
- Push and open a PR
Releases
Releases are automated via GitHub Actions using release-it. Only maintainers can trigger releases.