shemmjunior / ngx-google-auth

Google one tap authentication library for angular

Home Page:https://www.npmjs.com/package/ngx-google-auth

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Project logo

ngx-google-auth

Status GitHub Issues GitHub Pull Requests License


A new Google Identity Services library for angular

πŸ“ Table of Contents

🧐 About

As google are discontinuing the Google Sign-In JavaScript Platform Library for web. The library will be unavailable for download after the March 31, 2023 deprecation date this library. According to Google, the new GIS SDK uses pop-up dialogues in the browser, which helps reduce user friction, streamlines authentication and authorization flows, and increases user engagement.

This library was generated using angular v11.2.14, other versions are untested.

🏁 Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

What things you need to install the software and how to install them.

Installing

npm install ngx-google-auth

πŸ”§ Running the tests

A step by step series of guides how to install the library for local dev. From here I assume you have already installed nodejs to your local machine, Next is:

  1. Install Angular v11.2.14 using npm i @angular/cli@11.2.14
  2. On the root directory of this project run npm install to install all projects dependencies
Add more tests steps here.

🎈 Usage

  1. Install the package from npm with
npm i ngx-google-auth
  1. Import the module to GoogleAuthModule
import { GoogleAuthModule } from 'ngx-google-auth';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    AppRoutingModule,
    GoogleAuthModule.forRoot({ clientId: 'provide_your_client_id' })
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
  1. Import the service anywhere on your component
import { Component } from '@angular/core';
import { GoogleAuthService } from 'dist/google-auth'; // After running ng build google-auth

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css'],
})
export class AppComponent {

  constructor(private googleAuthService: GoogleAuthService) {}

  load(): void {
    this.googleAuthService
      .init({
        context: 'signin',
        callback: (response: any) => {
          console.log(response);
          /** Continue with your logic */
        }
      });
  }
}
  1. For better security please verify the token on your server side Verifying Token on the server side

⛏️ Built Using

✍️ Authors

πŸŽ‰ References

About

Google one tap authentication library for angular

https://www.npmjs.com/package/ngx-google-auth


Languages

Language:TypeScript 74.5%Language:JavaScript 22.9%Language:HTML 2.1%Language:CSS 0.5%