LinkUp
LinkUp est une plateforme de médias sociaux complète qui permet aux utilisateurs de partager des vidéos et images, interagir via commentaires et likes, et s'engager dans un chat en temps réel. Construit avec NestJS et MongoDB, la plateforme offre une expérience similaire à YouTube/Instagram avec une authentification utilisateur robuste, des fonctionnalités de gestion de contenu et d'interaction sociale. Le système prend en charge à la fois l'authentification JWT et l'intégration Azure AD B2C pour les utilisateurs entreprise, Azure Blob Storage pour l'hébergement média scalable et la fonctionnalité de chat en temps réel basée sur WebSocket. Les fonctionnalités clés incluent le téléchargement et streaming vidéo/image, la génération de miniatures, la modération de contenu, le tableau de bord admin, la recherche et le filtrage, la pagination, le suivi des vues et une documentation API complète avec Swagger.
Aperçu
LinkUp est une plateforme de médias sociaux complète qui permet aux utilisateurs de partager des vidéos et images, interagir via commentaires et likes, et s'engager dans un chat en temps réel. Construit avec NestJS et MongoDB, la plateforme offre une expérience similaire à YouTube/Instagram avec une authentification utilisateur robuste, des fonctionnalités de gestion de contenu et d'interaction sociale. Le système prend en charge à la fois l'authentification JWT et l'intégration Azure AD B2C pour les utilisateurs entreprise, Azure Blob Storage pour l'hébergement média scalable et la fonctionnalité de chat en temps réel basée sur WebSocket. Les fonctionnalités clés incluent le téléchargement et streaming vidéo/image, la génération de miniatures, la modération de contenu, le tableau de bord admin, la recherche et le filtrage, la pagination, le suivi des vues et une documentation API complète avec Swagger.
Fonctionnalités clés
Téléchargement et streaming vidéo
Téléchargement et partage d'images
Chat en temps réel avec WebSocket
Système de commentaires avec likes
Authentification utilisateur (JWT + Azure AD B2C)
Recherche et filtrage
Tableau de bord admin pour la modération de contenu
Azure Blob Storage pour les fichiers média
Génération de miniatures vidéo
Suivi des vues avec limitation de débit
Contrôle d'accès basé sur les rôles
Pagination et défilement infini
Vérification par email
Profils utilisateur avec avatars
Documentation API Swagger
Principales fonctionnalités
Implémentation du backend NestJS avec MongoDB pour une plateforme de médias sociaux scalable
Intégration d'Azure Blob Storage pour un stockage efficace de fichiers média basé sur le cloud
Développement d'un système de chat en temps réel utilisant la passerelle WebSocket Socket.io
Construction d'une gestion complète vidéo et image avec téléchargement, streaming et métadonnées
Implémentation de l'authentification JWT avec intégration Azure AD B2C pour les utilisateurs entreprise
Création d'un système de modération de contenu avec tableau de bord admin et contrôle d'accès basé sur les rôles
Défis et solutions
Téléchargements de Fichiers Volumineux
Gestion de fichiers vidéo/image volumineux en utilisant Azure Blob Storage, Multer pour la gestion de fichiers et augmentation des limites du parseur de corps pour les téléchargements en streaming
Implémentation du Chat en Temps Réel
Implémentation de la communication en temps réel basée sur WebSocket en utilisant Socket.io avec authentification JWT et messagerie basée sur les salles
Traitement Média
Intégration de FFmpeg pour la génération de miniatures vidéo et traitement en arrière-plan avec Azure Blob Storage
Précision du Suivi des Vues
Implémentation de l'empreinte IP et limitation de débit basée sur le cache pour empêcher la manipulation du nombre de vues
Intégration Azure AD B2C
Intégration de l'authentification entreprise Azure AD B2C en utilisant la bibliothèque MSAL Node.js avec flux OAuth 2.0/OpenID Connect
Technologies
Backend Framework
Database
Authentication
Real-time
Cloud Storage
Media Processing
Frontend
Infrastructure
Informations du projet
- Statut
- Completed
- Année
- 2024
- Architecture
- Architecture Microservices avec Conception API-First
- Category
- Développement Full-Stack