SaltaConecta es una plataforma B2B completa que conecta mayoristas, proveedores y repartidores en Salta, Argentina.
- Catálogo de productos con aprobación de administradores
- Carrito de compras inteligente
- Sistema de pedidos completo
- Gestión de inventario en tiempo real
- Integración completa con MercadoPago
- Webhooks para confirmación de pagos
- Sistema de comisiones automático
- Pagos a proveedores
- Sistema de repartidores
- Tracking en tiempo real
- Optimización de rutas
- QR codes para entregas
- Multi-rol: Clientes, Proveedores, Repartidores, Admins
- Autenticación segura con NextAuth
- Perfiles personalizados
- Sistema de notificaciones
- Ruleta de premios
- Sistema de puntos y recompensas
- Cupones de descuento
- Campañas promocionales
- Next.js 15 - Framework React con App Router
- TypeScript - Tipado estático
- Tailwind CSS - Estilos utilitarios
- Framer Motion - Animaciones
- Radix UI - Componentes accesibles
- Next.js API Routes - API REST
- MongoDB - Base de datos NoSQL
- Mongoose - ODM para MongoDB
- NextAuth - Autenticación
- Socket.io - WebSockets en tiempo real
- MercadoPago - Pagos
- Cloudinary - Gestión de imágenes
- Google Maps - Mapas y geolocalización
- Resend - Emails transaccionales
- Redis - Cache y sesiones
- Docker - Containerización
- AWS - Despliegue
- Jest - Testing
- ESLint - Linting
- Prettier - Formateo de código
- Node.js 18+
- MongoDB
- Redis (opcional)
- Cuentas de servicios externos
git clone https://github.com/tu-usuario/salta-conecta.git
cd salta-conectanpm installcp env.example .env.localEditar .env.local con tus credenciales:
# Base de datos
MONGODB_URI=mongodb://localhost:27017/saltaconecta
# Autenticación
NEXTAUTH_SECRET=tu-secreto-aqui
NEXTAUTH_URL=http://localhost:3000
# MercadoPago
MERCADOPAGO_ACCESS_TOKEN=tu-token-mercadopago
# Cloudinary
CLOUDINARY_CLOUD_NAME=tu-cloud-name
CLOUDINARY_API_KEY=tu-api-key
CLOUDINARY_API_SECRET=tu-api-secret
# Google Maps
NEXT_PUBLIC_GOOGLE_MAPS_API_KEY=tu-google-maps-key
# Email
RESEND_API_KEY=tu-resend-key# Iniciar MongoDB
mongod
# Ejecutar migraciones (si las hay)
npm run db:migrate
# Poblar datos de prueba (opcional)
npm run db:seednpm run devLa aplicación estará disponible en http://localhost:3000
npm testnpm run test:coveragenpm run test:watch# Desarrollo
npm run dev # Servidor de desarrollo
npm run build # Build de producción
npm run start # Servidor de producción
npm run lint # Linting
npm run type-check # Verificación de tipos
# Base de datos
npm run db:migrate # Ejecutar migraciones
npm run db:seed # Poblar datos
# Testing
npm test # Ejecutar tests
npm run test:watch # Tests en modo watch
npm run test:coverage # Tests con cobertura
# Utilidades
npm run clean:build # Limpiar buildsalta-conecta/
├── app/ # App Router de Next.js
│ ├── api/ # API Routes
│ ├── admin/ # Panel de administración
│ ├── auth/ # Autenticación
│ ├── client/ # Panel de cliente
│ ├── driver/ # Panel de repartidor
│ ├── provider/ # Panel de proveedor
│ └── ...
├── components/ # Componentes React
│ ├── ui/ # Componentes base
│ ├── sections/ # Secciones de página
│ └── ...
├── lib/ # Utilidades y configuraciones
├── models/ # Modelos de MongoDB
├── __tests__/ # Tests
├── scripts/ # Scripts de utilidad
└── ...
- NextAuth con JWT
- Middleware de protección de rutas
- Roles y permisos granulares
- Rate limiting
- Zod para validación de esquemas
- Sanitización de inputs
- Validación de archivos
- CORS configurado
- Headers de seguridad
- Validación de webhooks
- Logging de actividades
- Conectar repositorio a Vercel
- Configurar variables de entorno
- Desplegar automáticamente
# Build de la imagen
docker build -t salta-conecta .
# Ejecutar con docker-compose
docker-compose up -dNODE_ENV=production
NEXT_PUBLIC_APP_URL=https://tu-dominio.com
NEXTAUTH_URL=https://tu-dominio.com
MONGODB_URI=mongodb://tu-mongo-uri
MERCADOPAGO_ACCESS_TOKEN=tu-token-produccion
# ... otras variables- Logging estructurado con Winston
- Logs de errores y actividades
- Métricas de performance
/api/health- Estado del sistema/api/system/health- Estado detallado
- Fork del proyecto
- Crear rama feature (
git checkout -b feature/nueva-funcionalidad) - Commit cambios (
git commit -m 'Agregar nueva funcionalidad') - Push a la rama (
git push origin feature/nueva-funcionalidad) - Crear Pull Request
Este proyecto está bajo la Licencia MIT - ver el archivo LICENSE para detalles.
Para soporte técnico o preguntas:
- Email: soporte@salta-conecta.com
- Documentación: docs.salta-conecta.com
- App móvil nativa
- Integración con más métodos de pago
- Sistema de facturación electrónica
- Analytics avanzados
- API pública para integraciones
- Sistema de afiliados
- Marketplace de servicios
Desarrollado con ❤️ para la comunidad de Salta