[Erreur]
[Erreur]
![]() | ![]() | ![]() |
Bienvenue,
Vous trouverez ci-dessous tout ce que vous devez savoir pour préparer votre projet final full-stack. Veuillez lire attentivement les règles ci-dessous, et lorsque vous êtes prêt à continuer, vous pouvez commencer à cocher les conditions de confirmation au fur et à mesure que vous avancez dans le développement.
Une fois toutes les conditions cochées, le bouton de validation sera disponible pour vous. En cliquant sur ce bouton de validation, vous confirmez que vous avez terminé votre projet et que vous êtes prêt à le présenter au jury.
Si vous avez des questions, n'hésitez pas à nous contacter et nous serons ravis de vous aider.
Bonne chance à toi!
Règles pour le développement du projet final full-stack
- Votre projet n'a pas besoin d'être une application e-commerce, bien qu'un e-commerce complet soit un projet parfaitement valable.
- Vous pouvez créer une application qui gère le workflow d'une entreprise (CRM ou alors ERP) tant que toutes les conditions sont remplies.
- Les jeux sont amusants et un excellent choix. Si vous suivez cette voie, vous devrez utiliser des WebSockets pour que 2 joueurs (ou plus) puissent jouer ensemble.
Encore une fois, assurez-vous que toutes les conditions ci-dessous sont remplies.
- Votre projet nécessite au moins 2 fonctionnalités majeures. Dans un e-commerce, il s'agirait d'acheter des articles (côté cient) et de gérer l'inventaire (côté administrateur).
- Votre projet nécessite au moins 5 fonctionnalités mineures. Cela comprend l'ajout d'une adresse de livraison différente de celle figurant dans le dossier, un coupon de réduction à la caisse, l'évaluation des articles achetés, la messagerie inter-organisations, la hiérarchisation des tâches, les images de profil, etc.
- L'utilisation d'Internet pour la recherche est encouragée et digne d'éloges. Veuillez utiliser Stackoverflow autant que vous le pouvez. Cependant, vous DEVEZ comprendre la solution avant de la mettre en œuvre dans votre projet.
- Lors de la structuration de vos bases de données, vous devez utiliser une méthode "primaire", par exemple MongoDB, et une méthode "secondaire", par exemple mySQL. La méthode secondaire de votre choix n'a besoin que d'une table/collection pour prouver vos connaissances en technologie.
- Votre application doit pouvoir effectuer une transaction monétaire. Si votre application n'est pas de nature payante, aucun problème, mais vous devrez quand même l'ajouter. Incluez, par exemple, un module de dons pour votre organisme de bienfaisance préféré. Dans les jeux, vous pouvez ajouter un système de jetons pour permettre aux utilisateurs de jouer. Exemple, 1000 jetons coûteront 5 $ et jouer à un jeu coûte 20 jetons. PayPal Sandbox est acceptable au moment de la présentation.
J'ai réalisé ce projet seul.
Tous les composants de mon projet sont prêts pour la production et entièrement fonctionnels.
Mon application n'a pas de bugs.
Je n'ai utilisé aucun template prédéfini (à part Bootstrap, Angular Materials, React Material-UI qui sont parfaitement acceptable et même encouragés)
Mon projet est responsif pour au moins 2 médias, tels que le desktop et le mobile.
Mon projet a au moins 2 interfaces utilisateur distinctes. L'un est côté client (boutique), l'autre est un back office administrateur (gérer les stocks, les commandes, etc.)
Mon projet contient un système d'enregistrement complet
Un seul utilisateur par e-mail. Lors de l'inscription, l'utilisateur est averti lors de la saisie de son email s'il existe.
Mon projet a une option de mot de passe oublié entièrement fonctionnelle
Les nouveaux utilisateurs de mon projet doivent confirmer leur adresse e-mail avant de pouvoir se connecter.
Les utilisateurs de mon projet peuvent modifier leurs informations personnelles.
Mon projet a une option de connexion par token (souvenez-vous de moi) pour l'accès à partir de navigateurs reconnus
Mon système de connexion reconnaît quel type d'utilisateur se connecte et peut rediriger vers la vue appropriée (client, administrateur).
La page d'accueil de mon projet est générée par une base de données (articles de la boutique, catégories, options de jeu)
J'ai au moins 2 fonctionnalités majeures sur mon projet.
J'ai au moins 5 fonctionnalités mineures sur mon projet.
Mon projet peut télécharger des fichiers (images, fichiers PDF, musique, etc.)
Un système de paiement est inclus et fonctionnel. (PayPal, Stripe, etc.)
Mon front-end est créé à l'aide d'un framework reconnu tel que (Angular, React, Vue) ou d'un modèle JavaScript basé sur des composants et un modèle de design-pattern.
Je comprends parfaitement chaque ligne de code que j'ai écrite et je peux l'expliquer au présentateur, si on me le demande.
J'ai utilisé au moins 1 API REST externe (Weather Network, OMDB, Stockmarket Watch, etc.)
Aucune donnée dynamique n'est "codée en dur" dans mes fichiers.
Mon back-end est entièrement basé sur du code. Aucune de mes API n'est basée sur du visuel.
J'ai utilisé à la fois une base de données relationnelle (mySQL) et non relationnelle (MongoDB).
Ma base de données principale comprend un minimum de 5 collections/tables
Les vérifications des regex des e-mails sont à la fois en front-end et back-end.
Les mots de passe doivent être forts et avoir une vérification regex à la fois dans le front-end et dans le back-end.
Tous mes API REST sont sécurisées (En plus des API d'affichage simples, telles que "getAllCategories").
Lors de la création d'un nouvel utilisateur, son email est entré dans la base de données en minuscules, et les adresses GMAIL ne contiennent aucun point.
Toutes mes requêtes de base de données sont à l'épreuve des injections.
En cas d'injections, je suis alerté par mail ou SMS
En cas d'erreurs, j'ai un journal des erreurs qui est mis à jour.
Maintenant que vous avez rempli la liste de contrôle, vous pouvez cliquer sur le bouton ci-dessous et nous vous reviendrons avec une date de présentation.
Si vous avez soumis le formulaire par erreur, veuillez nous contacter et nous annulerons la soumission.
Vous devez vous sentir au top, vous êtes maintenant prêt pour la présentation de votre projet !
Si vous avez soumis le formulaire par erreur, veuillez nous contacter et nous annulerons la soumission.