Git Product home page Git Product logo

groupomania's Introduction

Projet 7 : Créez un réseau social d'entreprise

Parcours Developpeur Web par OpenClassrooms

Compétences évaluées

    Personnaliser le contenu envoyé à un clien web
    Authentifier un utilisateur et maintenir sa session
    Gérer un stockage de données à l'aide de SQL
    Implémenter un stockage de données sécurisé en utilisant SQL

Scénario

Vous êtes développeur depuis plus d'un an chez CONNECT-E, une petite agence web regroupant une douzaine d'employés.
Votre directrice, Stéphanie, invite toute l'agence à prendre un verre pour célébrer une bonne nouvelle ! Elle vient de signer un contrat pour un nouveau projet ambitieux ! 🥂.
Le client en question est Groupomania, un groupe spécialisé dans la grande distribution et l'un des plus fidèles clients de l'agence.
Le projet consiste à construire un réseau social interne pour les employés de Groupomania. Le but de cet outil est de faciliter les interactions entre collègues. Le département RH de Groupomania a laissé libre cours à son imagination pour les fonctionnalités du réseau et a imaginé plusieurs briques pour favoriser les échanges entre collègues.
Stéphanie vous envoie un message via l’outil de messagerie instantanée de l’entreprise.

Stéphanie : Hello, comme tu le sais, nous démarrons un très beau projet avec Groupomania et j'aimerais que ce soit toi qui gères la partie développement.
Groupomania a déjà régléchi aux fonctionnalités à intégrer dans le réseau social. Il s'agit en fait de produits déjà existants: 9GAG - ils veulent que les employés partagent et commentent les gifs avec d'autres collègues; Reddit - ils veulent que les employés écrivent et/ou partagent des articles avec leurs collègues sur des sujets qui les intéressent.

Vous : Super, je prends note. Est-ce qu'ils t'ont fourni les spécifications fonctionnelles ?

Sophie : Oui, je te les envoie par mail tout de suite.

Quelques minutes plus tard, vous recevez un mail de Stéphanie.

Bonjour,
Comme convenu, voici les spécifications fonctionnelles. Tu trouveras également les logos de l’organisation pour l’habillage du site.

Par ailleurs, Groupomania et moi avons convenu que l’un des employés du groupe testera un MVP du produit, avec une seule des deux fonctionnalités proposées.

Cela nous permettra de nous assurer que nous répondons à leurs attentes.

Après plusieurs réunions avec Groupomania, il semble que les paramètres du projet changent régulièrement, je pense qu’une organisation “agile” serait plus adaptée pour s’adapter aux besoins du client au fur et à mesure des commentaires et affiner l’application au fil de l’eau.

Je suis à ta disposition pour toute question.
Stéphanie
Merci Stéphanie pour toutes ces informations !
Si je comprends bien, je dois fournir une première version d’une des fonctionnalités proposées par Groupomania et j’ai carte blanche concernant la forme que cela va prendre ?
Merci pour ces précisions.
Oui, c’est ça !
La seule contrainte est que le client utilise une base de données relationnelles qui se manipule avec le langage SQL pour le stockage de données. Il faudra donc en tenir compte lorsque tu construiras ton application. Tu devras t’assurer que l’utilisateur puisse requêter les données requises depuis SQL et puisse soumettre ces changements à la base de données SQL. Les données de connexion doivent également être sécurisées.
Merci.
Ah oui, je vois ! Peux-tu me préciser quelles tâches entrent dans le périmètre de ma mission ?
Merci
Bien sûr. Tu vas devoir :
    choisir la fonctionnalité que tu vas développer,
    estimer le temps que tu passeras sur le développement de chaque fonctionnalité,
    développer la première version de l'application.
Deux dernières choses, tu devras faire en sorte que la web app puisse se connecter et se déconnecter à l’application et que la session de l’utilisateur persiste pendant qu’il est connecté.

Tu peux utiliser le framework Front-End de ton choix (React, Vue, Angular, Ember, Meteor, Aurelia...). Par contre, le projet doit être codé en Javascript, donc n'utilise pas le framework Symfony. Enfin, tes pages devront respecter les standards WCAG.

Bon courage et à dispo si besoin :)
Stéphanie

L'affichage nécessite diverses manipulations :

Créer une base de données avec la commande CREATE DATABASE name_database; Modifier les informations contenues dans le fichier .env_ex et le renommer en .env
Effectuer les commandes :
npm install -g @angular/cli
npm install
ng serve
dans le dossier front/groupomania.
Effectuer les commandes :
npm install
nodemon server
dans le dossier back.

Rendez vous sur http://localhost:4200 pour accéder au projet.

Packages utilisés :

npm install --save dotenv
npm install --save bcrypt
npm install --save jsonwebtoken
npm install --save multer
npm install --save helmet
npm install --save express-rate-limit
npm install --save password-validator
npm install --save crypto-js
npm install --save body-parser

groupomania's People

Contributors

coleenep 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.