Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 23 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,30 @@
![React Native Google Sign In](img/header.png)

<p align="center">
<a href="https://www.npmjs.com/package/@react-native-google-signin/google-signin"><img src="https://badge.fury.io/js/@react-native-google-signin%2Fgoogle-signin.svg" alt="NPM Version"></a>
</p>
[![npm version](https://img.shields.io/npm/v/@react-native-google-signin/google-signin.svg)](https://www.npmjs.com/package/@react-native-google-signin/google-signin)
[![npm downloads](https://img.shields.io/npm/dm/@react-native-google-signin/google-signin.svg)](https://www.npmjs.com/package/@react-native-google-signin/google-signin)

❤️❤️ [New documentation site available!](https://react-native-google-signin.github.io/docs/install) ❤️❤️
## Google Sign-In for React Native

[website sources live here](https://github.com/react-native-google-signin/docs/tree/main/docs)
`@react-native-google-signin/google-signin` provides Google authentication for React Native and Expo apps.

This is the free (public) version, supporting Android and iOS. It uses the legacy Google Sign-In SDK on Android.

**[Full documentation](https://react-native-google-signin.github.io/docs/install)**

## Looking for a modern implementation not relying on deprecated APIs, and web or macOS support?

[**Universal Sign In**](https://universal-sign-in.com) is the premium version of this package, built on modern Google identity APIs:

- **Cross-platform**: Android (Credential Manager), iOS, web, and macOS from a single API
- **Config Doctor**: CLI tool that diagnoses Android configuration issues — no more hours lost to `DEVELOPER_ERROR`
- **Auto-detect**: Automatic configuration parameter detection for faster setup
- **Advanced security**: Custom nonce support, iOS App Check, and more
- **Maintained**: Your purchase keeps the package rock-solid and up-to-date with new Expo and React Native releases

1 million+ npm downloads and trusted by indie hackers as well as large teams.

[**Get a license**](https://universal-sign-in.com/#pricing) | [**See what's included**](https://react-native-google-signin.github.io/docs/install#premium)

## Licence

(MIT)
MIT
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
"name": "@react-native-google-signin/google-signin",
"version": "16.1.1",
"description": "Google sign in for your react native applications",
"funding": "https://universal-sign-in.com",
"main": "./lib/module/index.js",
"types": "./lib/typescript/src/index.d.ts",
"source": "./src/index.ts",
Expand Down
9 changes: 6 additions & 3 deletions plugin/src/withGoogleSignIn.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import { appendScheme } from '@expo/config-plugins/build/ios/Scheme';
import type { ExpoConfig } from 'expo/config';
import {
ConfigPlugin,
type ConfigPlugin,
AndroidConfig,
IOSConfig,
createRunOncePlugin,
Expand Down Expand Up @@ -46,7 +45,11 @@ const withGoogleSignInWithoutFirebase: ConfigPlugin<Options> = (

export const withGoogleUrlScheme: ConfigPlugin<Options> = (config, options) => {
return withInfoPlist(config, (config) => {
config.modResults = appendScheme(options.iosUrlScheme, config.modResults);
const scheme = options.iosUrlScheme;
const infoPlist = config.modResults;
if (!IOSConfig.Scheme.hasScheme(scheme, infoPlist)) {
config.modResults = IOSConfig.Scheme.appendScheme(scheme, infoPlist);
}
return config;
});
};
Expand Down
Loading