Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
September 11, 2022 12:43 pm GMT

Dvelopper une API Rest avec NodeJS, Express et MongoDB: 1 Configuration du projet

Configuration de ma machine

Trucs installer avant de dmarrer

Vrification des installations

Jouvre mon terminal.
En tant qu'utilisateur Windows, j'ouvre GitBash. Jarrte dutiliser le Shell de windows ou loutil de commande integr et je lance.

node --version# v16.17.0npm --version# 8.15.0git --version# git version 2.32.1 ou 3

Initialisation de mon projet

Mon dossier de travail

  • Jouvre mon terminal (GitBash si je suis sur Windows. Terminal, iTerm2 si je suis sur Macetc)
  • Je cre un nouveau dossier, il faut que je sache facilement le retrouver
mkdir blitz-nodecd blitz-node

Jinitialise mon projet code

# 1. Je m'assure que je suis dans le bon dossierpwd# /Users/sidali/Development/clones/blitz-express# 2. J'initialise un projet Nodenpm init -y

Je peux ouvrir mon Visual Studio Code

J'ouvre mon projet sous Visual Studio Code 1
J'ouvre mon projet sous Visual Studio Code 1

Je fais attention bien ouvrir mon dossier dont le nom est blitz-node, pas le dossier le contenant, ni celui davant, mais le dossier exact: blitz-node

Si jai fait les choses correctement, je devrait voir un fichier package.json.

Rappel: Je nhsite pas interrompre le professeur dire quand quelque chose ne fonctionne pas comme prvu. Il se fera plaisir de maider

Jinstalle ce dont jai besoin

npm i express mongoose nodemon dotenv

Explications

express

Framework de dveloppement Node, permet de faire facilement les chose que fait Node aussi mais en moins compliqu.

mongoose

Nous permet de me connecter et dinteragir avec une base de donne MongoDB

nodemon

Simplifie le dveloppement en rechargeant mon serveur automatiquement lors de changement niveau code.
a va plus vite que quand jteint et rallume le serveur manuellement chaque fois que je fais un changement.

dotenv

Me permets dajouter des variables denvironnement, mon code ne doit pas faire les memes chose en dveloppement vs en prod.

Par exemple, je me connecte au serveur de Spotify de test pour rcuprer des musiques.
Mais en production je me connecte leur serveur de prod, plus rapide et plus scuris.

.gitignore

Afin dviter que je pollue mon repo Git, je cre un fichier la racine du projet: .gitignore et je copie le code suivant:

# Logslogs*.lognpm-debug.log*yarn-debug.log*yarn-error.log*lerna-debug.log*.pnpm-debug.log*# Diagnostic reports (https://nodejs.org/api/report.html)report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json# Runtime datapids*.pid*.seed*.pid.lock# Directory for instrumented libs generated by jscoverage/JSCoverlib-cov# Coverage directory used by tools like istanbulcoverage*.lcov# nyc test coverage.nyc_output# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files).grunt# Bower dependency directory (https://bower.io/)bower_components# node-waf configuration.lock-wscript# Compiled binary addons (https://nodejs.org/api/addons.html)build/Release# Dependency directoriesnode_modules/jspm_packages/# Snowpack dependency directory (https://snowpack.dev/)web_modules/# TypeScript cache*.tsbuildinfo# Optional npm cache directory.npm# Optional eslint cache.eslintcache# Optional stylelint cache.stylelintcache# Microbundle cache.rpt2_cache/.rts2_cache_cjs/.rts2_cache_es/.rts2_cache_umd/# Optional REPL history.node_repl_history# Output of 'npm pack'*.tgz# Yarn Integrity file.yarn-integrity# dotenv environment variable files.env.env.development.local.env.test.local.env.production.local.env.local# parcel-bundler cache (https://parceljs.org/).cache.parcel-cache# Next.js build output.nextout# Nuxt.js build / generate output.nuxtdist# Gatsby files.cache/# Comment in the public line in if your project uses Gatsby and not Next.js# https://nextjs.org/blog/next-9-1#public-directory-support# public# vuepress build output.vuepress/dist# vuepress v2.x temp and cache directory.temp.cache# Docusaurus cache and generated files.docusaurus# Serverless directories.serverless/# FuseBox cache.fusebox/# DynamoDB Local files.dynamodb/# TernJS port file.tern-port# Stores VSCode versions used for testing VSCode extensions.vscode-test# yarn v2.yarn/cache.yarn/unplugged.yarn/build-state.yml.yarn/install-state.gz.pnp.*

Ce fichier permettra Git dignorer ce que je spcifie dedans. Dont le dossier node_modules qui va contenir tous les modules installs 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 collgues de pouvoir faire un simple:

npm install

Et rcuprer toutes les dpendances qui permettront de lancer le projet


Original Link: https://dev.to/sidali/developper-une-api-rest-avec-nodejs-express-et-mongodb-1-configuration-du-projet-421k

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To