Repository navigation
Releases: SoyManoolo/M12
Releases · SoyManoolo/M12
Release list
FriendsGo v1.3.0 — Seguridad, videollamadas y fiabilidad
FriendsGo v1.3.0
Release con los cambios acumulados desde v1.2.0, con mejoras de seguridad, nuevas funciones sociales y preparación operativa.
Seguridad y autenticación
- Sesiones con cookies HttpOnly, protección CSRF y renovación deslizante de sesión.
- Recuperación de contraseña con tokens de un solo uso y caducidad; revocación de sesiones anteriores.
- Inicio de sesión con Google mediante OAuth y guard de rol para la administración.
- Identificadores JWT únicos y correcciones de concurrencia y cierre de sesión.
Funciones
- Llamadas directas entre amistades, con invitaciones, aceptación, rechazo, cancelación y caducidad.
- Eliminación de conversaciones desde la lista de chats.
- Sugerencias de amistad filtradas y estadísticas administrativas con datos reales.
Frontend y accesibilidad
- Landing pública, metadatos SEO por ruta, sitemap, robots.txt, manifest e icono FriendsGo.
- Mejoras de teclado, foco, etiquetas accesibles y avisos para lectores de pantalla.
- Carga diferida y caché de imágenes, navegación SPA y autoría correcta de comentarios.
Backend y CI
- Migraciones versionadas, validación de entradas, tipado y health check de base de datos.
- Workflow de GitHub Actions con auditorías, builds y pruebas de integración contra PostgreSQL.
- Documentación de API y hoja de ruta actualizadas.
Configuración necesaria para producción
- Recuperación de contraseña: configurar RESEND_API_KEY, EMAIL_FROM y FRONTEND_URL.
- Google OAuth: configurar GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET y GOOGLE_CALLBACK_URL en Google Cloud.
- Antes de activar migraciones en una base existente, verificar que su esquema coincide con los modelos actuales.
- Presencia e invitaciones de llamada viven en memoria; el despliegue multiinstancia requiere afinidad de socket o estado compartido.
FriendsGo v1.2.0 — Experiencia frontend, seguridad y calidad
v1.2.0 — Experiencia frontend, seguridad y calidad
Actualización centrada en mejorar la experiencia social, endurecer el tratamiento de contenido generado por usuarios y ampliar la cobertura de pruebas del frontend.
Cambios destacados
- El feed muestra únicamente publicaciones propias y de amistades confirmadas.
- Las sugerencias de amistad excluyen al usuario actual y a amistades existentes.
- Las conversaciones se conservan tras eliminar una amistad.
- Nueva vista de recuperación de contraseña.
- Redirección al login cuando expira el JWT.
- Diseño responsive mejorado en perfil, mensajes, administración de usuarios y controles de videollamada.
- Sanitización con DOMPurify de publicaciones, comentarios, biografías y mensajes de chat/videollamada.
- Tests Vitest para expiración de token y sanitización: 4 pruebas correctas.
- Correcciones de tipado y estados vacíos del panel lateral.
Nota de integración
- La vista de recuperación llama a
/auth/forgot-password; el envío efectivo del correo requiere que ese endpoint esté disponible en backend.
FriendsGo v1.1.0
Actualización de mantenimiento mayor centrada en seguridad de dependencias, modernización del frontend y fiabilidad de despliegue.
Cambios destacados
- Migración de Remix 2 a React Router 7.18.
- Actualización del sistema SSR y de rutas basadas en archivos.
- Integración del preset oficial @vercel/react-router.
- Configuración declarativa de Vercel para impedir que el proyecto use el builder de Remix.
- Corrección de compatibilidad SSR: sustitución de la antigua utilidad json() de Remix por Response.json().
- Verificación local de la función SSR generada para /, que responde correctamente en lugar de provocar un error 500.
Seguridad de dependencias
- Auditorías de dependencias del repositorio, frontend y backend sin vulnerabilidades conocidas.
- Actualización de Multer a 2.3 y node-cron a 4.6.
- Resoluciones actualizadas de Lodash, UUID, qs, Vite, esbuild y Ajv.
- Eliminación de tipos redundantes de Socket.IO.
- Lockfiles regenerados para fijar dependencias seguras.
FriendsGo v1.0.0
FriendsGo se publica como una red social full-stack que unifica perfiles, publicaciones, amistades, chat y videollamadas aleatorias.
Funcionalidades principales
- Registro, inicio y cierre de sesión con JWT.
- Perfiles de usuario, edición de datos, imágenes y gestión de cuenta.
- Publicaciones con comentarios, reacciones, contenidos multimedia y moderación.
- Solicitudes de amistad y gestión de amistades.
- Chat persistente entre usuarios.
- Videollamadas aleatorias con WebRTC y señalización mediante Socket.IO.
- Sistema de match tras videollamada, valoraciones y notificaciones.
- Panel de administración para usuarios y publicaciones.
- Internacionalización de los mensajes del backend en siete idiomas.
Seguridad y consistencia
- Contraseñas protegidas con bcrypt.
- JWT verificados también contra base de datos para permitir invalidar sesiones.
- Helmet, CORS, rate limiting y HTTPS en producción.
- Autorización de recursos: cada cuenta solo puede acceder o modificar sus datos privados.
- Permisos aplicados a publicaciones, mensajes, solicitudes de amistad y participantes de videollamadas.
- Operaciones de amistad atómicas para evitar estados inconsistentes.
- Comando seguro para crear el primer administrador, sin credenciales por defecto.
- Base de datos de pruebas separada de producción.
Infraestructura
- Frontend React con SSR.
- Backend Express + TypeScript.
- PostgreSQL con Sequelize.
- Socket.IO para eventos en tiempo real.
- WebRTC y servidor STUN/TURN para llamadas P2P.
- Frontend desplegado en Vercel y backend en Railway.