[Перевод] 23 полезнейших Node.js-библиотеки, о которых стоит знать в 2020 году
Профессиональному Node.js-разработчику нужно быть в курсе того, что происходит в сфере пакетов, предназначенных для этой платформы. Ему нужно знать о том, что вышло свежего, и о том, какие пакеты, используемые для решения различных задач, пользуются популярностью. Дело тут в том, что разработка ПО в наши дни зависит от библиотек. Знание хороших библиотек способствует повышению производительности труда программиста и помогает ему разрабатывать качественные приложения. Сегодня мы поговорим о 23 полезных пакетах для Node.js.
1. Express
Express — это быстрый и минималистичный веб-фреймворк для Node.js, который даёт разработчику достаточно большой уровень свободы в деле создания веб-серверов.
2. Socket.io
Socket.io позволяет организовывать в приложениях двусторонние системы обмена данными, работающие в реальном времени и основанные на событиях.
3. Body-parser
Body-parser — это пакет, который позволяет разбирать тела запросов, хранящиеся в req.body
, выступая в роли ПО промежуточного слоя для серверов, основанных на Express. Он обрабатывает запросы до их попадания в соответствующие обработчики.
4. Cors
Cors — это пакет, содержащий реализацию ПО промежуточного слоя для Connect/Express, которое позволяет настраивать и использовать CORS.
5. Passport
Passport — это система аутентификации для Node.js, совместимая с Express.
Единственная задача, на решение которой нацелен пакет passport, заключается в аутентификации запросов. Обработка запросов выполняется с использованием настраиваемого набора плагинов, известных как «стратегии».
6. Multer
Multer — это ПО промежуточного слоя для Express, предназначенное для обработки данных типа multipart/form-data
. Такие данные, в основном, поступают на сервер при выгрузке файлов. Обратите внимание на то, что эта библиотека не обрабатывает данные, тип которых отличается от multipart/form-data
.
7. Axios
Axios — это HTTP-клиент, основанный на промисах и предназначенный для браузеров и для платформы Node.js.
8. Morgan
Morgan — это система логирования HTTP-запросов.
9. Http-errors
Http-errors — это библиотека, позволяющая генерировать HTTP-ошибки. Её можно использовать с различными веб-фреймворками, например — с Express, Koa, Connect.
10. Dotenv
Dotenv — это модуль, у которого нет зависимостей. Он предназначен для загрузки переменных окружения из .env-файла в process.env. Использование этого механизма позволяет хранить настройки приложений отдельно от их кода.
11. Faker
Faker — это библиотека, позволяющая генерировать большие объёмы фиктивных данных. Она подходит для браузеров и для Node.js.
12. Nodemailer
Nodemailer позволяет отправлять из среды Node.js электронные письма. Пользоваться этой библиотекой очень просто.
13. Sequelize
Sequelize — это ORM для СУБД Postgres, MySQL, MariaDB, SQLite и Microsoft SQL Server. Библиотека основана на промисах. При её использовании в распоряжении разработчика оказывается множество надёжных механизмов, упрощающих работу с базами данных.
14. Mongoose
Mongoose — это библиотека, упрощающая работу с СУБД MongoDB. Она поддерживает и промисы, и коллбэки.
15. Jest
Jest — это популярный и хорошо поддерживаемый фреймворк для тестирования JavaScript-проектов, созданный компанией Facebook.
16. Moment
Moment — это компактная JavaScript-библиотека, предназначенная для работы со значениями, представляющими даты. Она позволяет создавать, разбирать, проверять, форматировать подобные значения.
17. Lodash
Lodash — это библиотека, дающая в распоряжение разработчика множество вспомогательных методов, упрощающих работу с массивами, числами, объектами, строками. Эта библиотека имеет модульную структуру. Lodash можно, в частности, использовать для решения следующих задач:
- Обход массивов, объектов, строк.
- Манипулирование значениями различных типов и выяснение типов значений.
- Работа с функциями (например — каррирование и мемоизация).
18. Chalk
Chalk — это пакет, который позволяет стилизовать тексты, выводимые в консоль. Он обладает удобным API.
19. Validator
Validator — это библиотека, предназначенная для проверки и очистки строковых данных.
20. Cheerio
Cheerio позволяет разбирать материалы, представляющие собой HTML- и XML-разметку. Эта библиотека даёт разработчику API для работы с тем, что получилось в результате разбора таких материалов.
21. JSDoc
JSDoc — это система, которая предназначенная для автоматизации создания документации к JavaScript-коду.
22. Helmet
Helmet позволяет программистам защищать Express-приложения, помогая в деле настройки различных HTTP-заголовков.
23. Crypto-js
Crypto-js — это JavaScript-библиотека, содержащая реализации различных криптографических механизмов.
Какие библиотеки для Node.js вы считаете самыми полезными?