Développer une API Rest avec NodeJS, Express et MongoDB: #1 Configuration du projet
Sid Ali BENTIFRAOUINE
Posted on September 11, 2022
Configuration de ma machine
Trucs à installer avant de démarrer
- Node LTS (ce qui va automatiquement nous installer
npm
) Node.js - Visual Studio Code https://code.visualstudio.com
- Postman Download Postman | Get Started for Free
- (Utilisateurs Windows)
- Gitbash Git for Windows
Vérification des installations
J’ouvre mon terminal.
En tant qu'utilisateur Windows, j'ouvre GitBash. J’arrête d’utiliser le Shell de windows ou l’outil de commande integré et je lance.
node --version
# v16.17.0
npm --version
# 8.15.0
git --version
# git version 2.32.1 ou 3
Initialisation de mon projet
Mon dossier de travail
- J’ouvre mon terminal (GitBash si je suis sur Windows. Terminal, iTerm2 si je suis sur Mac…etc…)
- Je crée un nouveau dossier, il faut que je sache facilement le retrouver
mkdir blitz-node
cd blitz-node
J’initialise mon projet code
# 1. Je m'assure que je suis dans le bon dossier
pwd
# /Users/sidali/Development/clones/blitz-express
# 2. J'initialise un projet Node
npm init -y
Je peux ouvrir mon Visual Studio Code
Je fais attention à bien ouvrir mon dossier dont le nom est blitz-node
, pas le dossier le contenant, ni celui d’avant, mais le dossier exact: blitz-node
Si j’ai fait les choses correctement, je devrait voir un fichier package.json
.
Rappel: Je n’hésite pas à interrompre le professeur dire quand quelque chose ne fonctionne pas comme prévu. Il se fera plaisir de m’aider 🙂
J’installe ce dont j’ai besoin
npm i express mongoose nodemon dotenv
Explications
express
Framework de développement Node, permet de faire facilement les chose que fait Node aussi mais en moins compliqué.
mongoose
Nous permet de me connecter et d’interagir avec une base de donnée MongoDB
nodemon
Simplifie le développement en rechargeant mon serveur automatiquement lors de changement niveau code.
Ça va plus vite que quand j’éteint et rallume le serveur manuellement à chaque fois que je fais un changement.
dotenv
Me permets d’ajouter des variables d’environnement, mon code ne doit pas faire les memes chose en développement vs en prod.
Par exemple, je me connecte au serveur de Spotify de test pour récupérer des musiques.
Mais en production je me connecte à leur serveur de prod, plus rapide et plus sécurisé.
.gitignore
Afin d’éviter que je pollue mon repo Git, je crée un fichier à la racine du projet: .gitignore
et je copie le code suivant:
node_modules/
Ce fichier permettra à Git d’ignorer ce que je spécifie dedans. Dont le dossier node_modules qui va contenir tous les modules installés localement.
Il ne faut pas les partager mais seulement partager le fichier package.json
et package-lock.json
car ce sont eux qui permettront à mes collègues de pouvoir faire un simple:
npm install
Et récupérer toutes les dépendances qui permettront de lancer le projet.
On est prets pour la suite!
Posted on September 11, 2022
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.
Related
September 11, 2022