Backend del sistema de gestión inteligente de parqueaderos.
Este módulo está desarrollado en Node.js con Express.js y expone una API REST para ser consumida por el frontend y otros servicios.
- ⚡ Operaciones rápidas y confiables: manejo eficiente de entradas, salidas y disponibilidad.
- 🔒 Seguridad integrada: autenticación con JWT/OAuth2.
- 📊 Datos centralizados: reportes y dashboards siempre actualizados.
- 📈 Escalabilidad: listo para crecer con nuevas sedes y funcionalidades.
- Node.js (v18+)
- Express.js (framework de APIs)
- TypeScript (tipado estático y mantenibilidad)
- JWT (autenticación y seguridad)
- PostgreSQL (según la BD seleccionada)
- Prisma (ORM/ODM para la BD)
backend/
├── src/
│ ├── config/ # Configuración (BD, JWT, variables entorno)
│ ├── controllers/ # Lógica de controladores para cada recurso
│ ├── middlewares/ # Autenticación, validaciones, logs
│ ├── models/ # Definiciones de entidades (ORM/ODM)
│ ├── routes/ # Definición de endpoints REST
│ ├── services/ # Reglas de negocio y lógica reusable
│ ├── utils/ # Utilidades/helpers
│ └── index.ts # Punto de entrada de la API
├── tests/ # Pruebas automáticas
├── package.json
├── tsconfig.json
└── .env.example- Clona el repositorio:
git clone https://github.com/fredylopez01/sicap-back.git
cd sicap-back- Instala dependencias:
npm install-
Crea un archivo
.enven la raíz, con las variables que se muestran en.env.example -
Inicia el servidor en desarrollo:
npm run devServidor disponible en 👉 http://localhost:3000
POST /api/auth/login→ Autenticación de usuariosGET /api/sedes→ Listar sedesPOST /api/sedes→ Crear sedeGET /api/usuarios→ Listar usuariosPOST /api/ingresos→ Registrar entrada de vehículoPOST /api/egresos→ Registrar salida de vehículoGET /api/ocupacion→ Espacios disponibles en tiempo realGET /api/reportes→ Generar reportes con filtros
- 🧱 Configuración inicial con Node + Express
- 🛢️ Modelo de base de datos con entidades: sedes, usuarios, horarios, tarifas, ingresos, egresos, espacios
- 🛡️ Middleware de autenticación (JWT/OAuth2)
- 📊 Endpoints para reportes y estadísticas
- ✅ Pruebas automáticas de API con Jest y Supertest
- Haz un fork del proyecto.
- Crea una nueva rama:
git checkout -b feature/nueva-funcionalidad. - Realiza tus cambios y haz commit:
git commit -m "Agrego nueva funcionalidad". - Sube tu rama:
git push origin feature/nueva-funcionalidad. - Abre un Pull Request.
Este proyecto está bajo la licencia MIT. Consulta el archivo LICENSE para más información.