Node.js
Express
Prisma: ORM para base de datos. Documentacion
PostgreSQL: Base de datos
JWT: Autenticacion
Firebase: Authenticacion y almacenamiento de imagenes. Documentacion
Clonar el repositorio
Instalar dependencias
Crear un archivo .env en la raiz del proyecto con las variables de entorno
Correr el servidor en modo desarrollo
Como trabajar en el proyecto
Crear una rama con el nombre de la tarea que se va a realizar
Hacer los cambios necesarios
Hacer commit de los cambios
git add .
git commit -m " mensaje"
Subir los cambios a la rama
git push origin nombre-de-la-rama
Crear un pull request en github
Esperar a que el pull request sea aprobado
Como crear un nuevo modelo
Modificar el archivo prisma/schema.prisma
Crear una migracion
npx prisma migrate dev --name nombre-de-la-migracion
Crear el servicio en src/services para hacer las operaciones con la base de datos
Como crear un nuevo endpoint
Crear un archivo en la carpeta src/routes con el nombre del recurso
Crear las rutas necesarias
Importar el archivo en src/index.js
Crear un archivo en la carpeta src/controllers con el nombre del recurso
Crear las funciones necesarias
Importar el archivo en el archivo de rutas
Crear un archivo en la carpeta src/services con el nombre del recurso
Crear las funciones necesarias
Importar el archivo en el archivo de controladores
Crear migracion (cuando se cambia un modelo): npx prisma migrate dev --name nombre-de-la-migracion