Skip to main content

Contributing

Thank you for helping improve this library. See also CONTRIBUTING.md on GitHub.

Code of Conduct

Participation is governed by our Code of Conduct. Report concerns to rutviknabhoya2001@gmail.com.

Ways to contribute

All templates: New issue

  • Documentation — edits in docs/content/ and screenshots in docs/static/.
  • Code — Kotlin, Swift, TypeScript, Expo config plugin, Nitro specs.
  • Agent skill — update skills/react-native-nitro-google-signin/ when API or setup changes.

Development setup

Requirements: Node.js ≥ 20, Bun (recommended), Xcode + CocoaPods (iOS), Android Studio (Android).

git clone https://github.com/react-native-nitro-google-sign-in/google-signin.git
cd google-signin
bun install

Build the library

bun run build # TypeScript + react-native-builder-bob → lib/
bun run typecheck

Regenerate Nitro bindings

After changing *.nitro.ts specs:

bun run codegen

Commit nitrogen/generated/ when codegen output changes.

Example apps

AppPathNotes
Bare RNexample/Add gitignored config files for autoDetect
Expoexample-expo/prebuild:clean after plugin changes
bundle exec pod install --project-directory="ios"

See Example apps. Never commit OAuth config files or API keys.

Documentation

cd docs && bun install && bun run start

Optional screenshot sources: assets/ → copy to docs/static/ (see assets/README.md).

Pull request guidelines

  1. Prefer one concern per PR (feature, fix, or docs).
  2. Describe what changed, why, and how you tested (platform, bare vs Expo).
  3. Update docs for API or setup changes. For sign-in flows, keep Usage and the API reference in sync with code changes.
  4. Update the agent skill when behavior or setup changes — Install skill.
  5. No secrets in commits.
  6. Contributions are licensed under MIT.

Use clear commit messages; Conventional Commits help semantic-release.

CI in the package repo runs Android/iOS builds. Docs deploy from the react-native-nitro-google-sign-in.github.io repo on pushes to main.

Docs deploy

Enable Settings → Pages → Source: GitHub Actions on the docs repo. See docs/README.md.

Project layout

PathPurpose
src/TypeScript API and Nitro specs
android/, ios/Native code
plugin/Expo config plugin
docs/content/This documentation site
skills/react-native-nitro-google-signin/Agent skill