Giter Site home page Giter Site logo

marcoetmx / products-auth Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 517 KB

Una API de productos con sistema de autenticación y autorización

Home Page: https://thawing-taiga-05133.herokuapp.com/docs/#/

JavaScript 2.18% TypeScript 96.82% Shell 0.99%
nodejs nestjs nestjs-mongoose mongoose mongodb

products-auth's Introduction

API Products

Descripción

Una API de productos con sistema de autenticación y autorización, el cual permite realizar el login por medio de email/password o una cuenta de Google (solo para usuarios con rol Customer).

La API te permite administrar

  • Productos
  • Usuarios

Existen dos roles para los usuarios:

  • Customer
  • Admin

Puedes acceder a la documentación en este enlace

Para realizar el login con google en este enlace

Requisitos

  • npm
  • docker

Installation

$ npm install

Crear proyecto en Google Cloud Platform

Se deberá de crear una proyecto en GCP para poder generar las credencias necesarias

Cuando se tenga el proyecto nos vamos a ir a la parte de API y Servicios

En la opcion de Pantalla de consentimiento de OAuth creamos una nueva y agregamos el usuario de prueba

Despues nos movemos a Credencias donde agregamos una nueva:

Al finalizar nos va a generar el Client ID y Secret lo guardamos para colocarlo como varibale de entorno

Variables de entorno

Se deberan de crear un archivo .env en base al archivo .env.example, remplazando y colocando los valores de utilizar.

Se deberan de agregar las siguientes variables:

  • JWT_SECRET: Esta seria la llave para el JWT
  • GOOGLE_CLIENT_ID: Generada desde GCP
  • GOOGLE_SECRET: Generada desde GCP

Running the app

$ docker-compose up -d mongo

# development
$ npm run start

# watch mode
$ npm run start:dev

# production mode
$ npm run start:prod

Test

# unit tests
$ npm run test

# e2e tests
$ npm run test:e2e

# test coverage
$ npm run test:cov

License

MIT licensed.

products-auth's People

Contributors

marcoetmx avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.