Skip to content

J-Rincon/prueba_backend_nodejs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Prueba Técnica Backend - API REST con Express y MongoDB

📌 Descripción

Este proyecto es una API RESTful desarrollada con Node.js, Express y MongoDB. Permite realizar operaciones CRUD sobre usuarios, incluyendo la búsqueda por ciudad.


🛠️ Tecnologías Utilizadas

  • Node.js + Express (para el servidor web)
  • MongoDB + Mongoose (para la base de datos)
  • TypeScript (para tipado estático y mejor mantenimiento)
  • dotenv (para manejar variables de entorno)
  • pnpm (para la gestión de paquetes)

⚙️ Instalación y Configuración

1️⃣ Clonar el repositorio

 git clone git@github.com:J-Rincon/prueba_backend_nodejs.git
 cd prueba_backend

2️⃣ Instalar dependencias

pnpm install

3️⃣ Configurar variables de entorno

Crear un archivo .env en la raíz del proyecto y agregar:

PORT=3000
MONGO_URI=mongodb://localhost:27017/prueba_backend

📌 Si usas MongoDB Atlas, reemplaza MONGO_URI con la cadena de conexión proporcionada por Atlas.

4️⃣ Ejecutar en Desarrollo

pnpm dev

Usa ts-node para ejecutar directamente TypeScript sin necesidad de compilar.

5️⃣ Compilar y Ejecutar en Producción

pnpm build && pnpm start

Compila TypeScript a JavaScript en dist/ y ejecuta server.js.


🛠️ Rutas de la API

📌 Usuarios

Método Endpoint Descripción
POST /api/usuarios Crear un usuario
GET /api/usuarios Obtener todos los usuarios (con paginación)
GET /api/usuarios/:id Obtener un usuario por ID
PUT /api/usuarios/:id Actualizar un usuario por ID
DELETE /api/usuarios/:id Eliminar un usuario por ID
GET /api/usuarios/buscar?ciudad=Ciudad Buscar usuarios por ciudad

📌 Ejemplo de JSON para Crear Usuario

{
  "nombre": "Juan Pérez",
  "email": "juan@example.com",
  "edad": 30,
  "direcciones": [
    {
      "calle": "Av. Siempre Viva 123",
      "ciudad": "Bogotá",
      "pais": "Colombia",
      "codigo_postal": "110111"
    }
  ]
}

✅ Notas Adicionales

  • Para verificar que MongoDB está corriendo en local, usa: mongod --version
  • Si usas MongoDB Atlas, recuerda configurar IP en MongoDB Network Access
  • Si tienes errores con ts-node, instala con pnpm add -D ts-node

📜 Licencia

Proyecto desarrollado como parte de una prueba técnica.


✨ Autor

J-Rincon

About

API RESTful desarrollada con Node.js, Express y MongoDB.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors