03-npm-dependencies.md 5.2 KB

npm dependencies

This wiki page details the npm dependencies. These dependencies are located in dependencies and devDependenciescategories of /package.json.

Summary


Production dependencies

These dependencies are mostly used by the server.

Name Link Description
@hapi/boom npm Better API HTTP errors
body-parser npm Parse HTTP request body
compression npm Turn HTTP server's gzip compression on
core-js npm Dependency of Babel (in @vue/cli-service)
cors npm Turn Cross-Origin Resource Sharing (CORS) HTTP header on
cron npm Cron integrated in Node.js, used for the extracts remover service
esm npm Node.js JavaScript module loader. Used for the server
express npm API framework
helmet npm Turn security-related HTTP headers on
mongoose npm MongoDB database driver
morgan npm API logger
serve-static npm Serve and cache images
sharp npm Node.js image processing library
ua-parser-js npm Parse User Agent strings
winston npm Server logger
ws npm Node.js WebSockets server

Development dependencies

These dependencies are here for developers only. They contain the web application setup, optimized builders and API automated tests. It also contains API documentation generator and ESLint with its plugins.

When the web application files are builded, Vue.js and its plugins are not necessary. In fact, the build output will contain portable HTML, CSS and JavaScript.

Name Link Description
@vue/cli-plugin-babel npm Just a plugin to use ESLint with latest JavaScript features
@vue/cli-plugin-eslint npm Just a plugin to use ESLint with Vue.js
@vue/cli-service npm Hot-reload development Vue.js development server. Builds and optimize files for production
@vue/eslint-config-standard npm A base configuration for ESLint
apidoc npm API documentation generator
ava npm Automated tests
babel-eslint npm Just a plugin to use ESLint with latest JavaScript features
deepmerge npm Merge JavaScript objects into one unique object. Used for the configuration system
eslint npm JavaScript code linter. Will warn you for syntax misuse, indentation errors or such
eslint-plugin-vue npm Just a plugin to use ESLint with Vue.js
fs-extra npm Better file system library than Node.js native one. Used in automated tests
material-design-icons-iconfont npm Web application icons
stylus npm Scriptable CSS, used by Vuetify
stylus-loader npm Build stylus-styles files, used by Vuetify
supertest npm HTTP requests test library
vue npm Vue.js JavaScript framework
vue-cli-plugin-vuetify npm Just a plugin to use Vuetify in Vue.js
vue-native-websocket npm WebSockets client library, plugged to Vuex
vue-router npm Web application routing system
vue-template-compiler npm Build Vue.js .vue files
vuetify npm Vue.js specific CSS framework
vuetify-loader npm Load Vuetify
vuex npm Vue.js global store
vuex-persist npm Persist global store in browser's cache, used to save configuration and progression data