Implementación de Autentificación y Autorización en API Node.js

Clase 3 de 22Curso de NestJS: Autenticación con Passport y JWT

Resumen

¿Cómo configurar el proyecto base con Next.js y TypeORM?

Para comenzar con una API robusta y preparada para la autenticación, es fundamental establecer un proyecto base que aproveche las ventajas de Next.js y TypeORM. Aquí aprenderás a clonar un proyecto preconfigurado desde GitHub, establecer variables de entorno y verificar su funcionamiento con contenedores.

¿Cómo clonar el proyecto desde GitHub?

El primer paso es obtener el código base necesario desde el repositorio en GitHub. Para ello, sigue estos pasos:

  1. Ve al repositorio de platzi/next.js-tyboren-datos en GitHub.

  2. Abre tu terminal y ejecuta el siguiente comando para clonar el proyecto:

    git clone [URL del repositorio]
    
  3. Asegúrate de especificar el directorio al que deseas clonar el proyecto:

    git clone [URL del repositorio] ./ruta/del/proyecto
    
  4. Accede al directorio del proyecto:

    cd ruta/del/proyecto
    

¿Cómo instalar las dependencias y configurar el origen del repositorio?

Una vez clonado el proyecto, es crucial instalar las dependencias necesarias y ajustar la configuración del repositorio.

  1. Instala las dependencias del proyecto:

    npm install
    
  2. Verifica que estás trabajando con la rama adecuada revisando el origen del repositorio:

    git remote -v
    
  3. Si planeas trabajar de manera independiente, elimina el origen actual y configura uno nuevo:

    git remote remove origin
    git remote add origin [tu repositorio personal]
    

¿Cómo configurar las variables de entorno?

Las variables de entorno son esenciales para manejar configuraciones que no deben incluirse directamente en tu repositorio, como contraseñas o claves de acceso.

  1. Crea un archivo de variables de entorno (por ejemplo, .env.development).

  2. Copia y pega el siguiente conjunto de variables predefinidas:

    DATABASE_HOST=localhost
    DATABASE_PORT=5432
    DATABASE_USER=user
    DATABASE_PASSWORD=password
    DATABASE_NAME=dbname
    
  3. Replica esta configuración para otros entornos como producción o staging, adaptando las variables según sea necesario.

¿Cómo ejecutar contenedores para la base de datos?

Para asegurar el correcto funcionamiento de la aplicación, es necesario configurar y correr los contenedores de la base de datos.

  1. Usa docker-compose para correr los servicios requeridos:

    docker-compose up -d
    
  2. Verifica que los contenedores estén activos:

    docker-compose ps
    

¿Cómo iniciar y verificar el funcionamiento del proyecto?

Una vez que todo esté configurado, es hora de poner a prueba el proyecto y asegurarse de que todo funcione correctamente.

  1. Arranca la aplicación con el comando:

    npm run start:dev
    
  2. Comprueba que la API esté funcionando utilizando una herramienta como Insomnia o Postman, probando diferentes endpoints.

  3. Si encuentras errores relacionados con las migraciones de la base de datos, ejecútalas para crear las tablas requeridas:

    npm run migrations:run
    

Al seguir estos pasos, tu proyecto base estará completamente configurado y listo para comenzar a implementar características avanzadas como autenticación y autorización. ¡Adelante, y comienza a desarrollar con confianza!