Aller au contenu

JavaScript

Quelques notes

NodeJS

Pour installer NodeJS, voir :

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe powershell.exe -NoExit -ExecutionPolicy Bypass -File "C:\...\toolbox\js\nodejs-startup.ps1"

Gestion de dépendances

  • npm assure le téléchargement des dépendances et l'exécution des scripts définis dans le fichier package.json.
  • yarn est une alternative possible à npm
  • www.npmjs.com est le principal dépôt public.
  • npm-check-updates facilite la mise à jour des dépendances :
# Pour identifier les mises à jour possibles
npx npm-check-updates
# Pour mettre à jour les dépendances sans modifier la version majeure :
npx npm-check-updates -u -t minor

Bundlers

# Pour un projet React+TypeScript
npm create vite@latest demo-vite-ts -- --template react-ts
cd demo-vite-ts
npm run dev

Création d'API WEB

Création d'API CLI

  • commander simplifie la gestion des paramètres passés en ligne de commande et la mise en oeuvre d'un --help.

Frameworks

Tests unitaires et fonctionnels

  • Mocha pour l'exécution des tests unitaires + Chai supportant différents styles d'assertions (should, expect et assert)
  • Jest est une alternative qui inclue les assertions.
    • ts-jest assure la transpilation pour TypeScript et ES6
  • supertest permet de tester un service HTTP

Cartographie WEB

  • leaflet est une bibliothèque de cartographie web simple d'utilisation.
  • OpenLayers est une bibliothèque de cartographie web disposant de fonctionnalités avancées.
    • ol-ext propose un ensemble d'extensions pour OpenLayers.

Manipulation de données géographiques

  • proj4js permet de transformer des coordonnées géographiques
  • jsts est portage en JavaScript de la bibliotheque java JTS (portée en C++ sous le nom GEOS pour PostGIS) permettant d'effectuer des calculs géométriques tels des calculs de zones tampons.
  • turfjs permet elle aussi de réaliser de calculs géométriques avec des données GeoJSON et des coordonnées en longitude et latitude.
  • mapshaper est un utilitaire proposant entre autre des fonctionnalités de simplification géométrique conservant la topologie à l'échelle d'une couche.
  • topojson-simplify est lui aussi un utilitaire de simplification des géométries conservant la topologie.
  • node-gdal est un binding NodeJS de la bibliothèque GDAL supportant de nombreux formats vecteurs et images.

Rendu 3D

Markdown

  • marked.js pour la conversion de markdown en HTML.
  • marpit pour la convertion de markdown en présentation HTML.
  • remarkjs pour la convertion de markdown en présentation HTML.

Divers

Ressources

Les bases :

NodeJS et npm :

Deno (alternative à NodeJS) :