Este es un Laboratorio-101 para construir la autenticación y seguridad basada en Token con passportjs de facebook usando graphql, express, ORM Sequelize y PostgresSQL. Una experiencia enriquecedora y totalmente productiva. puede ser usado con cualquier cliente, pronto tendrán un ejemplo con react y angular como frontend clients;
- Nota: Este solo es un jumping de la implementación sobre la autenticación con express y node.
Estas son las instrucciones para poder correr el proyecto en tu local.
- Tener instalado un editor, para este ejemplo se utilizó VSCode ^1.20.1
- Instalar cualquier bd SQL de preferencia, Para el ejemplo se utilizó Postgress 10.2
- Instalar Nodejs
- Instalar GIT
- Tener creado la bd - code-community -
- Instalar un cliente HTTP, para este ejemplo se implemento Postman. Puedes usar el de tu preferencia, sugerencias (insomnia, etc...)
Clonar o crear tu propia cuenta del repositorio
https://github.com/clenondavis/lab-auth-example.git
Una vez clonado el proyecto, ya puedes instalar las dependencias, ejecutando el cli de preferencia el comando
npm i
Instalar el CLI global de sequelize
npm i -g sequelize
Instalar el CLI global de nodemon
npm i -g nodemon
El proyecto tiene un usuario y contraseña por defecto para la conección a la BD, pero puedes personalizarlo
Configurar el archivo src/db/config/config.json
* agregar tu usuario y tu password para el acceso de la bd
Para levantar el server con el proyecto, ejecuta el comando. por defecto el server esta en el puerto 7001. Puedes configurar tu propio puerto en el archivo server.js
npm start
Luego ve a tu navegador y escribe
localhost:7001
y veras el cliente de graphql.
Para generar el modelo de la base, debes correr las migraciones escribiendo el comando del CLI de sequelize
sequelize db:migrate
Para crear un registro por defecto a la tabla States de la base de datos, debes ejecutar el comando del CLI de sequelize
sequelize db:seed:all
Para ver los comandos de sequelize en tu consola puede usar el comando
sequelize -H
En desarrollo
npm test
En desarrollo, ya tengo el el lab example para la documentación con JsDoc, solo debo integrarlo a este proyecto.
- Graphql - documentacion con JS - Esquemas y consultas
- Express - Infraestructura web sobre Node
- Sequelize - ORM
- graphql-sequelize - Paquete para conectar los esquemas de graqhql con los models de sequelize
- express-graphql - Middleware para graqhql
- nodemon - Monitorear los cambios en el código y automaticamente reiniciar el server
- babel - Transpilador ES5/Es6
- passport - Librería para la autenticacion con express y node
- La plantilla del readme de este graphql-example fue creado por Billie Thompson
- El creador y contribuyente activo del paquete de graphql con sequelize Mick Hansen
Tu contribución es importante. Para contribuir o ser colaborador de este graphql-example
- Dale tu estrella a este graphql-example
- Seguí al repositorio para recibir notificaciones de mejoras continuas
- Crear un pull request con la propuesta de cambio, espera y veras tu aporte compartido a la comunidad.
- Ponte en contacto con el autor del laboratorio
Para colaborar con la Comunidad JsNi y convertirte en un miembro activo
- Ponte en contacto con Paulo McNally ó Hosmel Quintana, para que puedan agregarte y asi formar parte de esta grande comunidad de JS-Lovers en Niccaragua
Se usa GIT como control de versiones. Para acceder a la última version, ir a las etiquetas del repositorio.
- Carlos Lenon - Love what i do - clenondavis
Ver el listado de los colaboradores de este lab-jest-example.
Este proyecto esta bajo la licencia MIT - ver detalle de esta licencia
- Aportar cada día a nuestra comunidad JsNi
- En Camino a ser Arquitecto en JS
- Aprender de los demás