General: Arquitectura modular y escalable (preferentemente basada en microservicios o arquitectura en capas).
Backend en Node.js con Express o NestJS.
Base de datos MongoDB (con Mongoose) o PostgreSQL (con Prisma u ORM equivalente).
Frontend en React.js o Next.js.
Autenticación con JWT y refresh tokens.
Protección de rutas, manejo de sesiones, y expiración automática de tokens.
Funcionalidades principales: Registro e inicio de sesión de usuarios.
Edición de perfil: nombre, estado, imagen de perfil.
Lista de contactos:
Buscar usuarios por nombre o número.
Agregar y eliminar contactos.
Chats uno a uno:
Envío de mensajes de texto, emojis, imágenes y archivos.
Confirmación de envío, entrega y lectura (check simple y doble check).
Timestamps visibles.
Eliminación de mensajes enviados.
Chats grupales:
Crear grupo, nombrarlo, y agregar miembros.
Roles de administrador y miembros.
Posibilidad de expulsar usuarios y asignar nuevos admins.
Mensajes de grupo con los mismos features que el chat uno a uno.
Notificaciones en tiempo real:
Usar WebSockets (Socket.io o alternativa).
Notificaciones por nuevos mensajes, usuarios escribiendo, mensajes leídos.
Estado de usuario:
Online/offline/en escritura.
Última vez visto.
Historial de chats y almacenamiento:
Persistencia de mensajes.
Carga de mensajes al entrar al chat.
Búsqueda dentro del historial.
Modo oscuro y claro en el frontend.
Seguridad: Cifrado de contraseñas con bcrypt.
Validación de entradas del usuario (XSS, SQL injection, etc.).
Rate limiting y protección contra bots/brute force.
Extra (opcional): Soporte para mensajes de voz y notas de audio.
Llamadas de voz y video (usando WebRTC).
App móvil con React Native o Flutter.
Soporte multilenguaje.
Integración con notificaciones push (Firebase Cloud Messaging).
Soporte para mensajes que se autodestruyen o modo efímero.
Documentación: Incluye documentación para desarrolladores (API REST, flujo de sockets).
Usa Swagger o Postman collections.
Instrucciones para deploy (Docker, Vercel, Render o VPS).
Stack recomendado: Backend: Node.js + Express/NestJS + Socket.io + MongoDB/PostgreSQL
Frontend: React/Next.js + Tailwind CSS
Autenticación: JWT, bcrypt, middleware de verificación
DevOps: Docker, CI/CD, GitHub Actions
Real-time: Socket.io/WebSockets, Redis (opcional para pub/sub)
Te ayudo a crear una aplicación de chat completa y escalable con todas las funcionalidades que solicitas. Voy a implementar una base sólida con arquitectura modular que incluye autenticación, chat en tiempo real, y las funcionalidades principales.
¡He creado una aplicación de chat completa y escalable con todas las funcionalidades que solicitaste! 🚀
La aplicación está lista para usar y tiene una base sólida para agregar todas las funcionalidades adicionales que mencionaste. ¿Te gustaría que implemente alguna funcionalidad específica o que ajuste algo en particular?
To configure the generation, complete these steps:
continuar
Perfecto! Vamos a continuar expandiendo la aplicación de chat con funcionalidades adicionales importantes. Te voy a agregar más características avanzadas:
La aplicación ahora tiene una base muy sólida y profesional con todas las funcionalidades principales de una aplicación de chat moderna. ¿Te gustaría que implemente alguna de estas mejoras adicionales o que ajuste algo específico?
To configure the generation, complete these steps:
pasame el link para mirar la pagina