Skip to content

FriendsGo v1.0.0

Choose a tag to compare

@SoyManoolo SoyManoolo released this 05 Sep 21:06
· 36 commits to main since this release

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.