Monorepo base para una aplicación de inventario de mudanzas con frontend móvil en Expo y backend NestJS.
apps/mobile: aplicación React Native + Expo + TypeScript.apps/api: API NestJS con prefijo global/api/v1y documentación Swagger en/api/docs..github/workflows/ci.yml: CI básico para lint, tests y build.
El backend define entidades iniciales para:
- Usuarios con email, nombre, hash de contraseña y hash de refresh token.
- Mudanzas asociadas a usuarios, con origen, destino, estado y fecha.
- Habitaciones asociadas a mudanzas.
- Categorías para clasificar objetos.
- Objetos asociados a mudanzas, habitaciones, categorías y kit diario.
- Cajas asociadas a mudanzas/habitaciones, con etiqueta, QR y estado de sellado.
- Asignaciones objeto-caja para registrar qué objetos van en cada caja.
La persistencia actual es en memoria para acelerar el arranque del producto. La siguiente iteración debería conectar una base de datos y migraciones.
Además de las bases mobile/API, el repositorio incluye un prototipo navegable en apps/artifact/index.html para revisar el flujo del producto sin instalar dependencias. Abre el archivo directamente en el navegador para explorar resumen, mudanzas, inventario, modelo de datos, API y comandos de desarrollo.
- Node.js 22+
- npm 10+
- Expo CLI vía
npx expoo los scripts npm incluidos
npm installBackend:
npm run dev:apiFrontend móvil:
npm run dev:mobile- Base URL local:
http://localhost:3000/api/v1 - Swagger UI:
http://localhost:3000/api/docs
Endpoints base:
POST /api/v1/auth/registerPOST /api/v1/auth/loginPOST /api/v1/auth/refreshGET|POST /api/v1/movesGET|POST /api/v1/roomsGET|POST /api/v1/categoriesGET|POST /api/v1/itemsGET|POST /api/v1/boxesPOST /api/v1/boxes/assign-itemsGET /api/v1/moves/:moveId/daily-kitGET /api/v1/moves/:moveId/statsGET /api/v1/moves/:moveId/report
npm run lint
npm test
npm run build