Blackboard

Projet développé pendant la 4ème semaine du Coding Bootcamp La Capsule. Le projet Black Board est une interface simple tenant lieu de back-office de site e-commerce pour administrer des commandes. Elle permet de naviguer entre une page d’accueil, une liste de clients, un catalogue de produits, une boîte de messagerie et une page regroupant l’ensemble de ces données sous forme de graphiques.

Index du back-office

Fonctionnalités

  • Afficher des informations clients depuis une base de données ;
  • Afficher un catalogue produit ;
  • Afficher les listes de commandes ;
  • Afficher le détail d’une commande ;
  • Afficher une messagerie ;
  • Afficher une liste de tâches à réaliser ;
  • Extraire et manipuler de l’information pour en tirer de la data ;
  • Matérialiser de la data sous forme de graphiques interactifs ;
Graphiques utilisants les données des autres pages

Skills tech

  • Concevoir un schéma de modèles de données ;
  • Factoriser les pages HTML (les vues) en utilisant les ”partials” ;
  • Maîtriser le concept de relation via les clés étrangères ;
  • Mettre en place les sous-documents ;
  • Comprendre les avantages/inconvénients des relations vs les sous-documents ;
  • Maîtriser le format des dates ;
  • Comprendre le mécanisme des fonctions ;
  • Matérialiser des données via une librairie tierce (Chart JS) ;

Notions techniques abordées

  • Utilisation d’un logiciel de gestion de base de données Mongo Compass
  • L’initialisation et la connection à la base de données dans un projet
  • Mise en place des schémas et des modèles
  • Création de requêtes
  • La notion de clés étrangères
  • La mécanique des jointures grâce au populate
  • Les sous-documents
  • Déclarer une fonction
  • La mécanique des arguments et du return dans une fonction
  • Les helpers
  • L’ objet Date en JavaScript
  • La notion de partials en ejs
  • Manipuler et formater des données
  • Utiliser l’agrégateur de données en base de données
  • Utiliser la librairie chart.js
  • Exploiter une information du Backend vers le JavaScript Frontend