Sistema completo de gestión empresarial con backend en NestJS y frontend en Next.js, diseñado para administrar usuarios, suscripciones, facturación, servidores y más.
Antes de comenzar, asegúrate de tener instalado:
git clone <url-del-repositorio>
cd proyecto-lider
cd backend
npm install
cd ../frontend
npm install
Nota para Windows: Si encuentras problemas con las dependencias, usa el flag
--legacy-peer-deps:npm install --legacy-peer-deps
.env en la carpeta backend/:# Base de Datos DB_HOST=localhost DB_PORT=5432 DB_USER=tu_usuario DB_PASS=tu_contraseña DB_NAME=nombre_base_datos # JWT JWT_SECRET=tu_secreto_jwt_super_seguro JWT_EXPIRES_IN=24h # Servidor PORT=3000 # Otros NODE_ENV=development
.env.local en la carpeta frontend/:NEXT_PUBLIC_API_URL=http://localhost:3000/api
cd backend
npm run start:dev
El servidor estará disponible en http://localhost:3000 (o el puerto configurado en .env).
cd frontend
npm run dev
El frontend estará disponible en http://localhost:3001 (puerto por defecto de Next.js).
cd backend
npm run build
npm run start:prod
cd frontend
npm run build
npm start
proyecto-lider/
├── backend/ # Aplicación NestJS
│ ├── src/
│ │ ├── admin/ # Módulo de administración
│ │ ├── admin-auth/ # Autenticación de administradores
│ │ ├── alerts/ # Sistema de alertas
│ │ ├── announcements/ # Anuncios
│ │ ├── auth/ # Autenticación principal
│ │ ├── billing/ # Facturación
│ │ ├── eulas/ # EULAs
│ │ ├── invoices/ # Facturas
│ │ ├── nda/ # NDAs
│ │ ├── registration/ # Registro
│ │ ├── servers/ # Servidores
│ │ ├── session/ # Sesiones
│ │ ├── subscriptions/ # Suscripciones
│ │ ├── users/ # Usuarios
│ │ ├── app.module.ts # Módulo principal
│ │ └── main.ts # Punto de entrada
│ ├── test/ # Tests e2e
│ └── package.json
│
└── frontend/ # Aplicación Next.js
├── src/
│ ├── app/ # Páginas y rutas (App Router)
│ ├── components/ # Componentes reutilizables
│ ├── config/ # Configuración
│ ├── context/ # Context API
│ ├── hooks/ # Custom hooks
│ ├── icons/ # Iconos SVG
│ ├── layout/ # Layouts
│ └── lib/ # Utilidades
├── public/ # Archivos estáticos
└── package.json
El backend expone una API REST bajo el prefijo /api. Algunos endpoints principales:
/api/auth/*/api/users/*/api/billing/*/api/subscriptions/*/api/servers/*/api/announcements/*/api/admin/*La mayoría de los endpoints requieren autenticación mediante JWT. Incluye el token en el header:
Authorization: Bearer <tu_token_jwt>
npm run build # Compilar el proyecto
npm run start # Iniciar en modo producción
npm run start:dev # Iniciar en modo desarrollo (watch)
npm run start:debug # Iniciar en modo debug
npm run lint # Ejecutar ESLint
npm run test # Ejecutar tests unitarios
npm run test:e2e # Ejecutar tests e2e
npm run test:cov # Tests con cobertura
npm run dev # Iniciar servidor de desarrollo
npm run build # Compilar para producción
npm run start # Iniciar servidor de producción
npm run lint # Ejecutar ESLint
# Tests unitarios
npm run test
# Tests e2e
npm run test:e2e
# Cobertura de código
npm run test:cov
Los tests del frontend pueden ejecutarse según la configuración de testing implementada.
cd backend
npm run build
npm run start:prod
cd frontend
npm run build
npm start
Las contribuciones son bienvenidas. Por favor:
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)Este proyecto es privado y de uso interno.
Para soporte, contacta al equipo de desarrollo o abre un issue en el repositorio.
Desarrollado con ❤️ usando NestJS y Next.js