Choisissez votre langue
Formation MEAN Stack : Clone Trello en temps réel
Plus de 2 millions d'apprenants dans le monde

Formation MEAN Stack : Clone Trello en temps réel

Construisez un clone de Trello de qualité production à partir de zéro en utilisant la pile MEAN complète — MongoDB, Express, Angular et Node.js. Maîtrisez la collaboration en temps réel avec Socket.IO, l'authentification sécurisée avec JWT et la gestion d'état évolutive avec NgRx. Livrez une application conteneurisée en direct que vous pouvez montrer à n'importe quel employeur.

Dedika pour entreprises

Ce que vous allez apprendre:

  • Construisez un tableau Kanban entièrement fonctionnel avec une gestion de cartes par glisser-déposer entre les listes.

  • Configurez une structure de projet monorepo avec des paramètres TypeScript partagés pour le client et le serveur.

  • Implémentez une authentification basée sur JWT avec un contrôle d'accès basé sur les rôles pour les membres du tableau.

  • Intégrez Socket.IO pour diffuser les mises à jour en direct du tableau entre plusieurs utilisateurs connectés.

  • Gérez l'état complexe de l'application de manière prévisible à l'aide du store, des actions et des effets de NgRx.

  • Containerisez et déployez l'application complète de la pile MEAN à l'aide de Docker et de GitHub Actions.

Comment vous étudiez de façon pratique Formation MEAN Stack : Clone Trello en temps réel

Comment vous pratiquez Formation MEAN Stack : Clone Trello en temps réel

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre propre activité et aux besoins spécifiques de votre entreprise.

Cliquez ici

Contenu du cours

8 Chapitres • 37 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Fondations et configuration du projet MEAN Stack

  • Leçon 1 • Initialisation de la structure du projet Monorepo

    Crée des dossiers distincts pour le client et le serveur à l'intérieur d'un seul dépôt. Établit les conventions de dossiers utilisées tout au long du cours.

  • Leçon 2 • Compréhension de l'architecture MEAN Stack

    Couvre les rôles de MongoDB, Express, Angular et Node.js et la manière dont ils s'interconnectent. Fournit le modèle mental nécessaire avant d'écrire du code.

  • Leçon 3 • Variables d'environnement et gestion de la configuration

    Présente dotenv pour les secrets et les paramètres spécifiques à l'environnement. Empêche les informations d'identification codées en dur d'entrer dans le contrôle de source.

  • Leçon 4 • Installation et configuration des outils de développement

    Installe Node.js, Angular CLI, MongoDB et VS Code avec des extensions essentielles. Assure un environnement cohérent dans tous les chapitres suivants.

Chapitre 2Voir les détails

Modélisation des données MongoDB pour un tableau Kanban

  • Leçon 1 • Validation de schéma et hooks d'intergiciel

    Ajoute des validateurs Mongoose et des hooks pre/post pour appliquer les règles métier au niveau du modèle. Réduit les données invalides avant qu'elles n'atteignent la base de données.

  • Leçon 2 • Conception des schémas Board, List et Card

    Crée des schémas Mongoose pour les trois entités principales de Trello avec des champs typés. Établit les contrats de données consommés par chaque point de terminaison API.

  • Leçon 3 • Indexation et optimisation des requêtes

    Applique des index composés et à champ unique pour prendre en charge les recherches rapides de tableaux et de cartes. Prépare la base de données pour des charges de requêtes en temps réel.

  • Leçon 4 • Modélisation de données relationnelle vs. document

    Contraste la normalisation SQL avec les stratégies d'incorporation et de référencement de MongoDB. Encadre les décisions de conception prises tout au long de ce chapitre.

Chapitre 3Voir les détails

Construction de l'API REST Express

  • Leçon 1 • Test d'API avec Postman et Jest

    Teste tous les points de terminaison manuellement dans Postman et les automatise avec Jest et Supertest. Valide l'exactitude de l'API avant l'intégration du frontend.

  • Leçon 2 • Points de terminaison CRUD pour les tableaux, listes et cartes

    Construit des points de terminaison RESTful couvrant la création, la lecture, la mise à jour et la suppression pour les trois entités. Connecte les contrôleurs aux modèles Mongoose établis au chapitre 2.

  • Leçon 3 • Validation des entrées avec Express-Validator

    Valide et nettoie les corps de requête entrants avant qu'ils n'atteignent la base de données. Empêche les données malformées et les tentatives d'injection à la limite de l'API.

  • Leçon 4 • Structure de l'application Express et routage

    Organise les routes, les contrôleurs et les services en une architecture en couches. Maintient la séparation des préoccupations pour la maintenabilité à mesure que l'API se développe.

  • Leçon 5 • Intergiciel global et gestion des erreurs

    Ajoute la journalisation des requêtes, l'analyse JSON, CORS et un gestionnaire d'erreurs centralisé. Assure des réponses API cohérentes et un débogage plus facile.

Chapitre 4Voir les détails

Authentification et autorisation JWT

  • Leçon 1 • Points de terminaison d'enregistrement et de connexion

    Construit les routes /auth/register et /auth/login qui renvoient des JWT signés en cas de succès. Connecte la création d'utilisateurs et la vérification des informations d'identification au cycle de vie du jeton.

  • Leçon 2 • Intergiciel JWT et protection des routes

    Crée un intergiciel Express qui vérifie les jetons et attache l'utilisateur à la requête. Protège toutes les routes des tableaux, listes et cartes contre les accès non authentifiés.

  • Leçon 3 • Schéma utilisateur et hachage du mot de passe

    Crée le modèle Mongoose Utilisateur et hache les mots de passe avec bcrypt avant le stockage. Établit la base d'informations d'identification sécurisées pour tous les flux d'authentification.

  • Leçon 4 • Contrôle d'accès basé sur les rôles pour les tableaux

    Ajoute les rôles propriétaire et membre aux tableaux et applique les permissions dans les contrôleurs. Empêche les utilisateurs non autorisés de modifier les tableaux dont ils ne sont pas propriétaires.

Chapitre 5Voir les détails

Architecture Angular Frontend et routage

  • Leçon 1 • Gestion d'état avec NgRx

    Présente le store NgRx, les actions, les réducteurs et les effets pour la gestion de l'état des tableaux et des cartes. Fournit un conteneur d'état prévisible pour les mises à jour en temps réel.

  • Leçon 2 • Conception des modules Angular et des modules de fonctionnalités

    Organise l'application en modules core, shared et feature suivant les bonnes pratiques Angular. Réduit la taille du bundle et améliore la découvrabilité du code.

  • Leçon 3 • Client HTTP et intercepteurs

    Configure HttpClientModule et un intercepteur qui attache les en-têtes JWT à chaque requête. Centralise l'injection de jetons d'authentification dans tous les appels API.

  • Leçon 4 • Gardes d'authentification et protection des routes

    Implémente des gardes CanActivate qui redirigent les utilisateurs non authentifiés vers la page de connexion. Reflète la couche d'autorisation backend côté client.

  • Leçon 5 • Configuration du routage à chargement différé

    Configure le routeur Angular avec des routes à chargement différé pour les tableaux, l'authentification et le tableau de bord. Améliore les performances de chargement initial en divisant le bundle.

Chapitre 6Voir les détails

Construction des composants d'interface utilisateur du tableau Kanban

  • Leçon 1 • Formulaires réactifs et validation

    Implémente les formulaires réactifs Angular pour tous les formulaires de création et d'édition avec validation côté client. Reflète les règles de validation côté serveur pour une expérience utilisateur cohérente.

  • Leçon 2 • Glisser-déposer avec Angular CDK

    Intègre Angular CDK DragDrop pour permettre la réorganisation des cartes au sein des listes et entre elles. Déclenche des actions de réorganisation vers NgRx et se synchronise avec le backend.

  • Leçon 3 • Composants du tableau de bord et de navigation

    Construit le tableau de bord d'accueil listant tous les tableaux de l'utilisateur et une barre de navigation supérieure. Connecte les composants aux sélecteurs NgRx et aux appels API des tableaux.

  • Leçon 4 • Vue du tableau avec listes et cartes

    Affiche un seul tableau avec ses listes et ses cartes dans une mise en page à défilement horizontal. Récupère et normalise les données du tableau à partir du store NgRx.

  • Leçon 5 • Modal de détail de carte et édition

    Crée une boîte de dialogue modale pour visualiser et éditer les détails de la carte, y compris la description et les étiquettes. Persiste les modifications via des appels API PATCH et des effets NgRx.

Chapitre 7Voir les détails

Fonctionnalités en temps réel avec Socket.IO

  • Leçon 1 • Mise à jour du store NgRx à partir des événements Socket

    Déclenche des actions NgRx à partir des abonnements aux événements socket pour mettre à jour l'état du tableau en temps réel. Fusionne les flux de données REST et WebSocket en une seule source d'état.

  • Leçon 2 • Émission d'événements depuis les points de terminaison API

    Déclenche les émissions socket depuis les contrôleurs Express après les écritures réussies dans la base de données. Maintient les couches REST et WebSocket synchronisées à chaque mutation.

  • Leçon 3 • Configuration du serveur Socket.IO et espaces de noms

    Attache Socket.IO au serveur HTTP Express existant et définit des espaces de noms par tableau. Isole les événements en temps réel par tableau pour une diffusion efficace.

  • Leçon 4 • Indicateurs de présence et curseurs en direct

    Montre quels utilisateurs consultent actuellement un tableau à l'aide d'événements de présence et d'indicateurs d'avatar. Ajoute une conscience collaborative sans bloquer le flux de données principal.

  • Leçon 5 • Service socket Angular et intégration RxJS

    Crée un service Angular qui encapsule Socket.IO-client et expose les flux d'événements sous forme d'Observables. Permet un abonnement réactif aux événements de tableau en temps réel.

Chapitre 8Voir les détails

Déploiement, performances et préparation à la production

  • Leçon 1 • Journalisation, surveillance et suivi des erreurs

    Intègre la journalisation structurée, la surveillance de la disponibilité et un traceur d'erreurs frontend en production. Fournit une visibilité sur les échecs avant que les utilisateurs ne les signalent.

  • Leçon 2 • Dockérisation de l'application MEAN Stack

    Écrit des Dockerfiles pour la build Angular et le serveur Express et les compose avec MongoDB. Produit des images de conteneur reproductibles pour toute cible de déploiement.

  • Leçon 3 • Pipeline CI/CD avec GitHub Actions

    Automatise le linting, les tests, la construction et le push des images Docker à chaque pull request. Réduit les étapes de déploiement manuelles et détecte les régressions tôt.

  • Leçon 4 • Déploiement dans le cloud et configuration de l'environnement

    Déploie les conteneurs sur une plateforme cloud et configure les variables d'environnement de production. Rend l'application accessible publiquement avec une connexion à une base de données gérée.

  • Leçon 5 • Optimisation de la build Angular

    Applique les indicateurs de build de production, le chargement différé et l'analyse du bundle pour minimiser la taille de la charge utile. Améliore le temps d'interactivité pour les utilisateurs finaux sur tous les appareils.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Junior développeur JavaScript : prêt à dépasser les petits exercices de tutoriel.

  • Développeur front-end : souhaite maîtriser également les couches backend et base de données.

  • Personne en reconversion professionnelle : possède des compétences fondamentales en programmation et a besoin d'une pièce maîtresse pour son portfolio.

  • Étudiant en informatique : cherche à appliquer la théorie apprise en cours à un produit réel.

  • Développeur web freelance : a besoin d'offrir à ses clients une solution moderne full-stack.

  • Développeur backend : souhaite acquérir une expérience pratique dans la création d'interfaces Angular réactives.

Ce que disent nos apprenants

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika ?

Le certificat est-il valable en Côte d’Ivoire ?

Les cours sont-ils gratuits ?

Quelle est la charge de travail du cours ?

Comment sont les cours ?

Comment fonctionnent les cours ?

Quelle est la durée des cours ?

Quel est le coût ou le prix des cours ?

Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?

Cours PDF