1.0.9 • Published 3 years ago

easy-google-oauth v1.0.9

Weekly downloads
15
License
MIT
Repository
github
Last release
3 years ago

easy-google-oauth v. 1.0.9

Easy integration of Google OAuth 2.0 for React projects.

This package will allow you to quickly add a sign in and sign out component to your app for front end authentication using Google OAuth 2.0.

Installation

In your terminal run npm i easy-google-oauth --legacy-peer-deps

How to Use

1) Google OAuth 2.0 requires a clientId

Enter the Google developer console and click credentials:

Click CREATE CREDENTIALS > OAuth client ID:

Follow the steps to create your clientId.

2) To use the component

import GoogleOAuth from "easy-google-oauth";

<GoogleOAuth clientId={<yourClientId>} />

3) Handling login

The GoogleOAuth component takes a function as a prop to handle both login success and failure, these functions should take a response as an argument (see sample below):

googleLoginSuccess={googleLoginSuccess}

googleLoginFailure={googleLoginFailure}

4) Handling logout

The GoogleOAuth component takes a function as a prop to handle both logout success and failure:

googleLogoutSuccess={googleLogoutSuccess}

googleLogoutFailure={googleLogoutFailure}

5) Setting logout timer

The GoogleOAuth component takes an integer as a prop to set the number of hours before a user's session times out:

expirationHourMultiplier={<numberOfHours>}

6) Sample use

Functions:

const googleLoginSuccess = (res) => {
    console.log(res);
}

const googleLoginFailure = (res) => {
    console.log(res);
}

const googleLogoutSuccess = () => {
    console.log('Logged out Successfully')
}

const googleLogoutFailure = () => {
    console.log('Logout Failure');
}

Component:

<GoogleOAuth
    clientId={clientId}
    expirationHourMultiplier={24}
    googleLoginSuccess={googleLoginSuccess}
    googleLoginFailure={googleLoginFailure}
    googleLogoutSuccess={googleLogoutSuccess}
    googleLogoutFailure={googleLogoutFailure}
/>

If you'd like to help!

Feel free to contact me or add some PRs to the repo I've included!

1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago