Node JS Experience
I have over 4+ years of experience with NodeJS and have been involved in building various complex projects such as:
- large ecommerce systems
- electric car management software
- web2 and web3 applications and solidity
- presentation websites
- portals
- banking systems
- and more
Experience with main packages:
- ExpressJS Framework
- NestJS Framework
- Mongoose Object Data Modeling - ODM
And many JS Dependencies like:
- argon2: Argon2 is a password hashing algorithm that is widely recognized for its security and efficiency. It was chosen as the winner of the Password Hashing Competition in 2015, a contest aimed at identifying a new standard for hashing passwords securely.
- dompurify: Is a JS library that sanitizes HTML and prevents XSS (cross-site scripting) attacks by cleaning and sanitizing user-generated content in web applications.
- jsdom: Is a JS implementation of the DOM (Document Object Model) that enables server-side manipulation and parsing of HTML and XML documents in Node.js.
- dotenv: Is a zero-dependency module that loads environment variables from a .env file into process.env, allowing you to manage sensitive configuration data separately from your codebase.
- express-rate-limit: Is a middleware for ExpressJS that helps to limit repeated requests to public APIs and/or endpoints, protecting against brute-force attacks.
- http-status-codes: Is a Node.js module that provides a comprehensive list of HTTP status codes and their associated messages for easy use in web applications.
- log4js: Is a logging library for Node.js, inspired by Apache Log4j, that provides a flexible and powerful logging framework to capture, format, and manage log messages.
- nodemon: Is a development tool that automatically restarts your Node.js application when it detects file changes, enhancing the development workflow.
- Lodash: utility library that provides a wide range of functions for common programming tasks such as manipulating arrays, objects, and strings, making code more concise and readable.
- Compression: dependency in JavaScript is a middleware for Express that enables gzip compression of HTTP responses to improve the performance and speed of your web application by reducing the size of the response body.
- Jsonwebtoken JWT: is a JavaScript library used to create, sign, and verify JSON Web Tokens (JWTs) for authentication and secure data exchange in web applications.
- Joi: is a JavaScript library used for data validation and schema description, allowing developers to define and validate object structures easily.
- Helmet: is a middleware for Express.js that helps secure your application by setting various HTTP headers to mitigate common web vulnerabilities.
- Csurf: is a Node.js middleware for Express that provides Cross-Site Request Forgery (CSRF) protection by creating and validating CSRF tokens.
- Apollo-server: is a community-driven, open-source GraphQL server that enables you to build a GraphQL API with ease, supporting various data sources and integrating seamlessly with any JavaScript or Node.js backend.
- Body-parser: is a Node.js middleware that parses incoming request bodies in a middleware before your handlers, making the req.body property available for use.
- Cookie-parser: is a middleware for Express.js that parses and populates cookies sent in HTTP requests, allowing easy access and manipulation of cookie data.
- CORS: is a middleware in Node.js that enables controlled access to resources on a web server from a different origin, enhancing security by defining which domains are permitted to access the server's resources.
- Express-session: is a middleware for Express.js that enables session management, allowing you to create and maintain user sessions across HTTP requests.
- Passport: is an authentication middleware for Node.js that simplifies the implementation of various authentication strategies, such as username and password, OAuth, and social logins.
- Multer: is a middleware for handling multipart/form-data in Node.js, which is primarily used for uploading files.
- Express-validator: is a middleware for Express.js that provides a set of functions for validating and sanitizing user input.