0.5.0 • Published 6 years ago

@yaakadev/node-scripts v0.5.0

Weekly downloads
99
License
MIT
Repository
gitlab
Last release
6 years ago

node-scripts

Boîte à outils versatile pour moderniser facilement des application NodeJS.

  • Empêche les erreurs simples et/ou d'inattention d'arriver jusqu'au client (utilisation de variable non définie, variable non utilisée, etc.) (grâce à ESLint & AirBnB)
  • Formatte automatiquement le code avec Prettier

Installation

$ npm install --save @yaakadev/node-scripts

Ouvrez ensuite le fichier package.json de votre projet avec votre éditeur favori et modifiez la section scripts comme ci-dessous:

{
  "main": "./dist/index.js",
  "scripts": {
    "dev": "node-scripts watch",
    "build": "node-scripts build",
    "build-debug": "node-scripts build-debug",
    "test": "node-scripts test"
  }
}

Voilà ! Vous pouvez désormais tirer parti des toutes dernières fonctionnalités & technologies de l'écosystème JavaScript.

Structure de votre projet

node-scripts impose les contraintes suivantes sur votre application:

  • Chacun des fichiers présents dans bin/ (sauf index.js) et ne commencant ni par un point ni par un tiret bas sont exportées vers dist/
  • Le point d'entrée de votre application est src/index.js, ensuite exporté vers dist/index.js
$ tree
├── bin/  # Les différents binaires de votre application
│   ├── create-super-user.js  # Créé un utilisateur disposant des droits admin
│   └── www.js  # Lance le serveur HTTP servant l'API
├── src/
│   └── index.js  # Le point d'entrée de votre application
├── package.json
└── package-lock.json

Intégration avec VS Code

Lors de son installation, node-scripts copie plusieurs fichiers dans le dossier de votre projet:

  • .eslintrc.js: Un fichier de configuration ESLint pointant vers la configuration incluse dans le paquet node-scripts, permet d'utiliser ESLint sans avoir conscience de node-scripts
  • tsconfig.json: Un fichier de configuratoin Typescript pointant vers la configuration incluse dans le paquet node-scripts, permet d'utiliser Typescript sans avoir conscience de node-scritps
  • .vscode/tasks.json: Un fichier de configuration associant automatiquement le raccourci clavier Ctrl + Shift + B à la commande npm run dev
  • .vscode/launch.json: Un fichier de configuration pour pouvoir déboguer votre projet sans avoir à quitter VS Code. Il est probable que vous ayez à modifier ce fichier pour ajuster la configuration : le fichier pointé par la clé program est par défaut dist/index.js, mais il est possible que votre application utilise un autre point d'entrée (ex: dist/www.js). Une fois configuré, il vous suffit de presser la touche F5 pour commencer le débogage et poser vos points d'arrêt !

Utilisation en ligne de commande

node-scripts watch

C'est la commande recommandée lorsque vous travaillez sur votre application. Cette commande compile l'ensemble de votre projet puis continue de tourner et recompile incrémentalement votre projet à chaque changement détecté.

La commande watch se charge aussi de lancer votre application en appelant le script start de votre package.json, et redémarre automatiquement votre application après chaque changement.

Les fichiers de l'application sont automatiquement formatés à l'aide de Prettier, à chaque changement.

Cette étape n'active pas d'optimisations particulières sur votre code (pas de minification, etc.).

Les source-maps sont activées et embarquées dans les sources compilées.

node-scripts build-debug

Cette commande permet de compiler les différents points d'entrées de l'application, sans utiliser d'optimisations particulières et sans échouer si jamais les linters remontent des erreurs.

Les source-maps sont activées et embarquées dans les sources compilées.

node-scripts build

C'est la commande recommandée lorsque vous voulez exporter votre application et l'exposer sur les interwebs mondiaux. Cette commande minifie le code source, supprime le code non utilisé et échoue en cas d'erreur remontées par les linters.

Les source-maps sont activées et embarquées dans les sources compilées.

node-scripts test

TODO: Doc

0.5.0

6 years ago

0.5.0-beta.13

6 years ago

0.5.0-beta.12

6 years ago

0.5.0-beta.11

6 years ago

0.5.0-beta.10

6 years ago

0.5.0-beta.9

6 years ago

0.5.0-beta.8

6 years ago

0.5.0-beta.7

6 years ago

0.5.0-beta.6

6 years ago

0.5.0-beta.5

6 years ago

0.5.0-beta.4

6 years ago

0.5.0-beta.3

6 years ago

0.5.0-beta.2

6 years ago

0.5.0-beta.1

6 years ago

0.5.0-alpha.24

6 years ago

0.5.0-alpha.23

6 years ago

0.5.0-alpha.22

6 years ago

0.5.0-alpha.21

6 years ago

0.5.0-alpha.20

6 years ago

0.5.0-alpha.19

6 years ago

0.5.0-alpha.18

6 years ago

0.5.0-alpha.17

6 years ago

0.5.0-alpha.16

6 years ago

0.5.0-alpha.15

6 years ago

0.5.0-alpha.14

6 years ago

0.5.0-alpha.13

6 years ago

0.5.0-alpha.12

6 years ago

0.5.0-alpha.11

6 years ago

0.5.0-alpha.10

6 years ago

0.5.0-alpha.9

6 years ago

0.5.0-alpha.8

6 years ago

0.5.0-alpha.7

6 years ago

0.5.0-alpha.6

6 years ago

0.5.0-alpha.5

6 years ago

0.5.0-alpha.4

6 years ago

0.5.0-alpha.3

6 years ago

0.5.0-alpha.2

6 years ago

0.5.0-alpha.1

6 years ago

0.4.7

7 years ago

0.4.6

7 years ago

0.4.5

7 years ago

0.4.4

7 years ago

0.4.3

7 years ago

0.4.2

7 years ago

0.4.1

7 years ago

0.4.0

7 years ago

0.3.0

8 years ago

0.2.3

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago