Groupomania

Développement d'un réseau social d'entreprise full stack avec Vue.js, Node.js, Express et MySQL — projet 7 du parcours Développeur Web OpenClassrooms.

  • Vue.js
  • JavaScript
  • Node.js
  • Express
  • MySQL
  • Sequelize
  • API REST
  • JWT
  • Bcrypt
  • Multer

Groupomania

  • Vue.js
  • JavaScript
  • Node.js
  • Express
  • MySQL
  • Sequelize
  • API REST
  • JWT
  • Bcrypt
  • Multer

Groupomania

Projet numéro 7 du parcours Développeur Web chez OpenClassrooms.

Objectif

Développer un réseau social interne pour l’entreprise fictive Groupomania afin de permettre aux collaborateurs d’échanger et de partager du contenu.

Contrairement aux projets précédents, Groupomania est une application full stack avec un frontend développé en Vue.js, un backend Node.js et Express, ainsi qu’une base de données MySQL gérée avec Sequelize.

Fonctionnalités

  • Création de comptes utilisateurs
  • Authentification sécurisée
  • Gestion des utilisateurs et des profils
  • Génération et vérification de tokens JWT
  • Chiffrement des mots de passe avec Bcrypt
  • Création et publication de posts
  • Ajout d’images aux publications
  • Modification et suppression des publications
  • Création de commentaires
  • Modification et suppression des commentaires
  • Gestion des droits utilisateurs
  • Communication entre Vue.js et une API REST
  • Stockage des données dans une base MySQL
  • Gestion des modèles et relations avec Sequelize

Ce que j’ai appris

Ce projet m’a permis de développer et consolider des compétences en :

  • Vue.js et création d’interfaces dynamiques
  • Développement d’une application full stack
  • Node.js et Express
  • Conception d’une API REST
  • MySQL
  • Sequelize
  • Modélisation et gestion des relations entre les données
  • Authentification avec JWT
  • Sécurisation des mots de passe avec Bcrypt
  • Création de middlewares
  • Gestion des fichiers et images avec Multer
  • Gestion des utilisateurs et des autorisations
  • Communication entre frontend et backend
  • Structuration d’une application web complète

À propos de la démonstration

Cette version de Groupomania correspond à mon projet final du parcours Développeur Web OpenClassrooms.

L’application a été développée avec Vue.js pour le frontend et Node.js / Express pour le backend. Les données sont enregistrées dans une base MySQL et manipulées depuis l’application avec Sequelize.

La démonstration actuellement en ligne permet de créer un compte, se connecter, gérer son profil, publier du contenu, ajouter des images et participer aux échanges via les commentaires.

La base de données utilisée pour cette démonstration est indépendante de celle utilisée lors du développement initial du projet. Les comptes, publications et commentaires présents correspondent donc uniquement aux données créées sur cette nouvelle instance.

La suite

Groupomania marque l’aboutissement de mon parcours Développeur Web OpenClassrooms et rassemble une grande partie des compétences acquises au cours des projets précédents.

Ce projet m’a permis de réunir frontend, backend, API, authentification et base de données au sein d’une même application et de mieux comprendre l’architecture globale d’une application web full stack.