Skip to content

Useful modules

Node

  • process: Get argv value
  • fs: Input/Output from files
  • http: HTTP requests
  • path: Manipulate string paths
  • crypto: randomBytes generate random numbers

Global dependencies

  • npm: Node package manager
  • typescript: Type system
  • ts-node: Compile and execute TS with one command

Dev dependencies

  • nodemon: Instant changes in the terminal
  • eslint: Find problems in the JS code
  • jshint: Code syntax analysis
  • env-cmd: Load environment variables
  • del-cli: Delete files in the project. Useful to clean the build folder before rebuilding

Standard dependencies

  • validator: Validate strings (emails, urls, etc)
  • chalk: Customize colors
  • yargs: Extract Argument vectors
  • postman-request: HTTP request
  • axios: HTTP request
  • express: Create web application APIs
  • express-validator: validate data
  • express-async-errors: allow normal throw new Error() for async functions, instead of next(new Error())
  • handlebars: Dynamic webpages
  • hbs: Handlebars integrated to express
  • mongodb: MongoDB connection
  • mongoose: MongoDB manipulation
  • mongoose-update-if-current: Update a record only if it has the highest version
  • bcryptjs or bcrypt: Work with passwords
  • jsonwebtoken: Create authentication tokens
  • multer: form-data file upload (e.g. images)
  • sharp: Image handling. Crop, convert.
  • @sendgrid/mail: Send emails
  • socket.io: Communication via WebSockets
  • ejs: Embedded JS
  • mustache: Render html templates
  • moment: Manipulate dates
  • qs: Parse query strings
  • cors: Allow in server requests from different domains
  • json-server: minimal server to serve a json
  • cookie-session: Handle cookies and encryption of content (not necessary for jwt content)
  • body-parser: Parse body of requests into json
  • bull: Handle processes in Workers
  • stripe: Handle credit card payment
  • react-stripe-checkout: React component for stripe
  • uuid: Unique Identification
  • typeorm: ORM for database manipulation

Testing dependencies

  • jest: Testing framework
  • supertest: Testing with Express
  • ts-jest: Allow jest to use TS files
  • mongodb-memory-server-core: In memory mongodb for testing

CSS frameworks

  • bootstrap

Bundlers

  • Webpack

  • webpack

  • webpack-cli
  • html-webpack-plugin
  • html-loader
  • webpack-dev-server

  • Parcel

  • parcel-bundler