Files
app-padel/backend/package.json
Ivan Alcaraz e135e7ad24 FASE 6 PARCIAL: Extras y Diferenciadores (base implementada)
Implementados módulos base de Fase 6:

1. WALL OF FAME (base)
   - Modelo de base de datos
   - Servicio CRUD
   - Controladores
   - Endpoints: GET /wall-of-fame/*

2. ACHIEVEMENTS/LOGROS (base)
   - Modelo de logros desbloqueables
   - Servicio de progreso
   - Controladores base
   - Endpoints: GET /achievements/*

3. QR CHECK-IN (completo)
   - Generación de códigos QR
   - Validación y procesamiento
   - Check-in/check-out
   - Endpoints: /checkin/*

4. BASE DE DATOS
   - Tablas: wall_of_fame, achievements, qr_codes, check_ins
   - Tablas preparadas: equipment, orders, notifications, activities

Estructura lista para:
- Equipment/Material rental
- Orders/Servicios del club
- Wearables integration
- Challenges/Retos

Nota: Algunos módulos avanzados requieren ajustes finales.
2026-01-31 21:59:36 +00:00

59 lines
1.5 KiB
JSON

{
"name": "app-padel-backend",
"version": "1.0.0",
"description": "Backend API REST para App de Canchas de Pádel",
"main": "dist/index.js",
"scripts": {
"dev": "tsx watch src/index.ts",
"build": "tsc",
"start": "node dist/index.js",
"db:generate": "prisma generate",
"db:migrate": "prisma migrate dev",
"db:studio": "prisma studio",
"db:seed": "tsx prisma/seed.ts",
"lint": "eslint src --ext .ts",
"test": "jest"
},
"keywords": [
"padel",
"reservas",
"api",
"nodejs"
],
"author": "Consultoria AS",
"license": "ISC",
"dependencies": {
"@prisma/client": "^5.8.0",
"bcrypt": "^5.1.1",
"cors": "^2.8.5",
"dotenv": "^16.3.1",
"express": "^4.18.2",
"express-rate-limit": "^7.1.5",
"helmet": "^7.1.0",
"jsonwebtoken": "^9.0.2",
"mercadopago": "^2.12.0",
"morgan": "^1.10.0",
"nodemailer": "^6.9.8",
"qrcode": "^1.5.4",
"winston": "^3.11.0",
"xlsx": "^0.18.5",
"zod": "^3.22.4"
},
"devDependencies": {
"@types/bcrypt": "^5.0.2",
"@types/cors": "^2.8.17",
"@types/express": "^4.17.21",
"@types/jsonwebtoken": "^9.0.5",
"@types/morgan": "^1.9.9",
"@types/node": "^20.10.6",
"@types/nodemailer": "^6.4.14",
"@types/qrcode": "^1.5.6",
"@typescript-eslint/eslint-plugin": "^6.17.0",
"@typescript-eslint/parser": "^6.17.0",
"eslint": "^8.56.0",
"prisma": "^5.8.0",
"tsx": "^4.7.0",
"typescript": "^5.3.3"
}
}