Giter Club home page Giter Club logo

hilaliabdelali_05_21012021's Introduction

Openclassrooms

Parcours Développeur Web

Projet 3 : Orinoco


page1image1308483312


Intitulé du Projet : Construisez un site e-commerce.

Senario :

Félicitations ! Vous avez été recruté en tant que développeur front-end par Orinoco, une entreprise de commerce en ligne. Son credo ? Se démarquer des grands site e-commerce comme Amazon en créant des applications thématiques ne vendant qu’un seul groupe de produits. Il y a par exemple Oribook pour les livres ou Oritextil pour les vêtements. Vos compétences en développement web et votre personnalité ont plu à Paul, le fondateur de l’entreprise. Dans un premier temps, Paul souhaite créer un premier MVP pour démontrer le fonctionnement de ses applications à ses investisseurs. L’équipe est constituée de Jeanne, développeuse back-end travaillant sur les API et vous, pour la partie front-end.

Architecture générale

L’application web sera composée de 4 pages :

  • une page de vue sous forme de liste, montrant tous les articles disponibles à la vente ;

  • une page “produit”, qui affiche de manière dynamique l'élément sélectionné par l'utilisateur et lui permet de personnaliser le produit et de l'ajouter à son panier ;

  • une page “panier” contenant un résumé des produits dans le panier, le prix total et un formulaire permettant de passer une commande. Les données du formulaire doivent être correctes et bien formatées avant d'être renvoyées au back-end. Par exemple, pas de texte dans les champs date ;

  • une page de confirmation de commande, remerciant l'utilisateur pour sa commande, et indiquant le prix total et l'identifiant de commande envoyé par le serveur.

Planification de tests unitaires

Planifiez une suite de tests unitaires pour couvrir au minimum 80 % de la base de code pour le front-end. Vous devrez formaliser un plan pour atteindre ce résultat, sans obligation d’écrire ces tests Expliquez quelles lignes seront testées, et quels “test cases” seront envisagés.

Informations complémentaires

Pour le MVP, la personnalisation du produit ne sera pas fonctionnelle : la page contenant un seul article aura un menu déroulant permettant à l'utilisateur de

choisir une option de personnalisation, mais celle-ci ne sera ni envoyée au serveur ni reflétée dans la réponse du serveur.

Le code source devra être indenté et utiliser des commentaires. Il devra également utiliser des fonctions globales.

Concernant l’API, des promesses devront être utilisées pour éviter les rappels. Les inputs des utilisateurs doivent être validés avant l’envoi à l’API.

Types de données


Tous les produits possèdent les attributs suivants :


CHAMP TYPE
id ObjectID
name string
price number
description string
imageUrl string

Chaque type de produit comporte un tableau contenant les strings correspondant aux options de personnalisation :


Type de produit Tableau de personnalisation
Caméras lentilles
Ours en peluche couleurs
Meubles en chêne vernis

Technologies a utilisées

HTML, CSS, JavaScript.

URL des API

Paramètres des API


Chaque API contient 3 paramètres :


verb Paramètre Corps de la demande prévue Réponse
GET / - Retourne un tableau de tous les éléments
GET /:_id - Renvoie l'élément correspondant à identifiant given_id
POST /order Requête JSON contenant un objet de contact et un tableau de produits Retourne l'objet contact, le tableau produits et orderId (string)

Technoligies utilisées :

HTML5 CSS3 JAVASCRIPT GIT

Validation des données

Pour les routes POST, l’objet contact envoyé au serveur doit contenir les champs firstName, lastName, address, city et email. Le tableau des produits envoyé au backend doit être un array de strings products. Les types de ces champs et leur présence doivent être validés avant l’envoi des données au serveur.

Installation :

Cloner le repo de l'API

git clone https://github.com/OpenClassrooms-Student-Center/JWDP5.git

Lancer

nmp install

Demarrez le serveur

node server.js

Cloner ce repo

git clone https://github.com/Hilali34/HilaliAbdelali_05_21012021

Lancer le live server.

DEMO:

https://orinoco-hilali.netlify.app

hilaliabdelali_05_21012021's People

Contributors

hilali34 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.