19 пакетов Node.js, которые нужно знать разработчику JavaScript для продуктивной и легкой жизни
Опубликовано: 2022-09-14Вы тратите слишком много времени на создание кода JavaScript? Читайте дальше, чтобы узнать о различных пакетах Node.js, которые могут сделать жизнь разработчика JavaScript продуктивной и легкой.
JavaScript — это синхронный однопоточный язык. Это наиболее широко используемый язык программирования для разработки программного обеспечения и приложений. Многие фреймворки, такие как Reactjs, Angularjs, Vuejs, Expressjs и Node.js, были разработаны с использованием их базового языка — JavaScript.

Многие разработчики сталкиваются с проблемами при написании кода на JavaScript из-за различных сложных концепций, таких как промисы, цикл событий, обратные вызовы, подъем, замыкания и т. д.
Чтобы упростить разработку на JavaScript, доступно множество пакетов Node.js, которые помогают обрабатывать ошибки, форматировать код, удалять файлы, отлаживать код, обеспечивать безопасность и т. д. Некоторые также предоставляют интерактивные пользовательские интерфейсы командной строки для лучшего визуального представления мощности ЦП, производительность обработки, серьезность ошибок и т. д.
Retire.js
Retire.js — это библиотека Javascript, которая предоставляет список уязвимостей, связанных с другими версиями библиотеки Javascript.

Его можно использовать как расширение Chrome, расширение Firefox, сканер командной строки, плагин Grunt и т. д. Его можно установить с помощью следующей команды:
$ npm install -g retire
Retire.js имеет различные команды для сканирования файлов JavaScript и узлов. Он сканирует веб-сайты JavaScript и регистрирует предупреждения в консоли разработчика. Retire.js генерирует код выхода 13 при обнаружении уязвимостей. Задача Gulp автоматически сканирует файлы и сообщает об уязвимостях.
Нп
Np — это пакет JavaScript, который предоставляет различные функции, такие как очистка кода, установка зависимостей, публикация пакетов и тегов и т. д. Он обеспечивает отправку кода в главную ветку и предоставляет интерактивный пользовательский интерфейс.
Двухфакторная аутентификация используется для обеспечения безопасности новых репозиториев. Это гарантирует, что работа выполняется с последней версией, переустанавливая зависимости. Последняя версия помещается в npm. Его можно установить с помощью следующей команды:
$ npm install --global np
Его различные функции включают публикацию кода из любой ветки, создание подкаталогов для публикации, пропуск очистки кода и тестирования и т. д. Конфигурация np может выполняться глобально и локально с помощью флагов CLI в файлах конфигурации np, таких как np-config.js, и нет. -config.json.
ESLint
ESLint — это пакетный инструмент JavaScript, который анализирует JavaScript и выявляет шаблоны в коде ECMA/JavaScript. Он оценивает шаблоны в коде с помощью AST. Все правила инструмента определены в виде плагинов, и их можно добавлять динамически во время выполнения. ESLint можно установить с помощью следующей команды:
$ npm init @eslint/config
После его установки с помощью приведенной выше команды создается файл .eslintrc с набором правил с определениями ошибок и их соответствующими условиями. ESLint позволяет определять все зависимости в файле .lock пользователя и не использует собственный файл .lock. Это также очень безопасно.
Шеллджс
Shelljs — это среда, в которой команды UNIX могут выполняться в любой операционной системе через API Node.js. Shelljs является переносимым и поддерживает сторонние плагины. Можно использовать различные команды: echo, exec, chmod, pushd, popd, cd, cat и т. д. Для установки Shelljs можно использовать следующую команду.
$ npm install [-g] shelljs

Он был протестирован в различных проектах, таких как Firefox, JSHint, ESLint, Zepto и т. д. Локальный импорт пакетов Shelljs предпочтительнее глобального импорта. Его также можно настроить как тихий, фатальный, подробный и т. д.
Омлет
Omelette предоставляет шаблон для автоматического завершения кода для проектов Node и Deno. Он использует очень простой API, а также поддерживает Async API и Tree API. Пример фрагмента кода для реализации Omelette показан ниже:
import * as omelette from 'omelette'; const firstArgument = ({ reply }) => { reply([ 'beautiful', 'cruel', 'far' ]) } const planet = ({ reply }) => { reply([ 'world', 'mars', 'pluto' ]) } omelette`hello|hi ${firstArgument} ${planet}`.init()
После импорта Omelette необходимо создать объект Omelette. Затем для объекта омлета можно вызвать различные функции для автоматического завершения кода, такие как setupShellInitFile() для настройки, cleanupShellInitFile() для очистки, для автоматического завершения кода. Он также поддерживает использование функций Lambda для создания сложных литеральных API шаблонов.
красивее
Prettier используется для форматирования кода. Это помогает в предоставлении пробелов табуляции, отслеживает максимальное содержимое в одной строке и обеспечивает правильный отступ в условных операторах и операторах цикла. Он преобразует код в аккуратный и читаемый формат. Например:
Фрагмент кода приведен ниже,
foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne());
преобразуется в приведенное ниже, когда используется расширение Prettier:
foo( reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne() );
Он может работать в средах CI, интегрированных средах разработки (IDE) и т. д.
jscpd
jscpd — это служба технического управления долгом. Это пакет JavaScript, который помогает находить повторяющиеся фрагменты кода в различных кодах и цифровых документах. Он использует алгоритм сопоставления строк под названием Rabin-Karp для поиска дубликатов кода.

jscpd/core имеет возможность обнаруживать дублирование кода в различных средах, а jspd/tokenizer используется для токенизации исходного кода программы. Помимо этого, есть много других пакетов, таких как html-reporter, badge-reporter, leveldb-store и т. д. Команда для установки jscpd:
$ npm install -g jscpd
jscpd используется GitHub Super Linter, Code-Inspector, Mega-Linter, Codacy и т. д. Каждый из них использует jscpd для разных целей. Они используют его для обработки естественного языка, агрегаторов строк, анализа кода и т.д.
Vтоп
Vtop — это монитор, который дает графическое представление активности командной строки. Он предоставляет информацию об использовании ЦП, анализируя различные запущенные потоки и процессы и представляя их графически с помощью диаграмм, всплесков и т. д. Он был разработан с использованием JavaScript, Makefile и Shell. Команда для установки Vtop:
$ npm install -g vtop
Можно использовать различные темы и цветовые коды, чтобы сделать графический интерфейс более привлекательным в соответствии с требованиями. Различные сочетания клавиш, такие как «u» для обновления, «g» для перехода к верхнему процессу в списке, «G» для перехода в конец списка, «dd» для уничтожения процессов, принадлежащих определенной группе, и т. д. может быть использован.
Стандарты
Standardjs — это библиотека JavaScript, которая автоматизирует настройку файлов, форматирует код и быстро находит проблемы с обработкой исключений программистов. Команда для установки Standardjs приведена ниже:
$ npm install standard --global
После его установки вы можете запустить его над фрагментом файла/кода, используя «стандартную» команду в интерфейсе командной строки. Все зависимости Standardjs можно добавить, определив «standard: «*» в объекте зависимостей файла package.json.
Его также можно установить в качестве плагина для различных текстовых редакторов, таких как Visual Studio Code, Sublime Text, Atom, Vim, Brackets и т. д. Node.js, Expressjs, npm, Brave и GoDaddy используют Standardjs для удовлетворения своих бизнес-требований.
NodeJsScan
NodeJsScan — это сканер статического кода безопасности для приложений Node.js. Он информирует о состоянии безопасности приложения через интерактивный пользовательский интерфейс. Его можно интегрировать с различными приложениями, такими как Slack для оповещений/уведомлений, оповещений по электронной почте, путем настройки параметров SMTP в файле settings.py NodeJsScan, конвейера CI/CD и т. д. Это также помогает создавать образы докеров.

Он регистрирует ошибки, информацию и предупреждающие сообщения. Подробное описание ошибки, например, причина ее возникновения, ее серьезность, номера строк, в которых произошли ошибки, количество просканированных файлов и найденных проблем и т. д. Графики и диаграммы также построены для удобства чтения и анализа.
Мусор
Корзина — это библиотека JavaScript, которая перемещает удаленные файлы в корзину, а не удаляет их навсегда. Он поддерживает Mac, Linux и Windows. Команда, используемая для установки Trash:
$ npm install trash
Корзина — это API, который принимает входные данные и параметры в качестве параметров функции при вызове функции корзины(). Входными данными могут быть строка или массив строк. Опции могут быть объектом. Функция корзины возвращает обещание. В разных операционных системах используются разные команды. macOS-trash используется в MacOs, XDG Spec в Linux и корзина в Windows.
Хо
Xo — это оболочка JavaScript и TypeScript, в основе которой лежит ESLint. Это помогает создавать читаемый код, добавляя отступы к коду, добавляя точки с запятой, одинарные кавычки, запятые и т. д., где это необходимо. Многие плагины ESLint, такие как unicorn, import, ava, n и т. д., можно использовать с Xo. Команда, используемая для установки xo:
$ npm install xo --save-dev
Проблемы могут быть исправлены автоматически с помощью команды $xo –fix. Xo можно настроить с помощью свойства xo в файле package.json. Его можно установить как плагин для различных редакторов, таких как Vim, Visual Studio Code, Atom, Sublime Text, Emacs и т. д.
diff2html
diff2html расшифровывается как «анализатор различий и красивый генератор HTML». Он выделяет изменения в коде текущей версии по сравнению с предыдущей версией. Это помогает разработчикам легко определить и понять, какие изменения были внесены. Это делается с помощью цветовых кодов.
Он делает это, выделяя построчные и параллельные изменения. Он выделяет изменения синтаксиса кода и группирует похожие строки вместе, чтобы легко отслеживать изменения кода. Команда для установки diff2html выглядит следующим образом:
$ npm install diff2html

Он также интегрирован с командной строкой. Некоторые проекты, использующие diff2html, — это Jenkins, Codacy, Ungit, git-explorer, code-annotation и т. д.
Мел
Chalk — это модуль Node.js, который помогает форматировать и стилизовать код. Это также помогает в создании и добавлении цветовых тем к тексту. Это выразительный API, и его производительность превосходна. Он вкладывает стили и не имеет зависимостей. Использование Chalk можно увидеть в фрагменте кода ниже:
import chalk from 'chalk'; console.log(chalk.blue('Hello world!'));
chalk.level определяет цвета, которые поддерживаются на каждом уровне. «0» означает, что все цвета отключены, «1» — базовая поддержка цветов, «2» — поддержка 256 цветов, «3» — поддержка Truecolor. Мелом поддерживаются различные модификаторы стиля для форматирования текста: инверсный, скрытый, видимый, зачеркнутый, полужирный, сброшенный, курсивный, подчеркнутый, надчеркнутый, затемненный и т. д.
NpKill
Npkill — это инструмент, который удаляет старые и тяжелые папки узловых модулей. Это помогает очень быстро удалить модули узлов и освободить место в вашей системе. Он был разработан с использованием TypeScript, JavaScript и Go. Он не имеет никаких зависимостей и прост в использовании. Команда, используемая для установки Npkill:
$ npm i -g npkill
Все модули узлов, указанные в пути с помощью команды npkill, будут удалены. Однако нужно быть осторожным при удалении узловых модулей, потому что это необратимо. Если в процессе удаляются модули какого-либо активного проекта, файлы повреждаются, и модули узлов необходимо устанавливать заново.
fkill-кли
fkill-cli — это интерактивный инструмент командной строки с открытым исходным кодом, который убивает процессы и порты Linux. Он был разработан с использованием Node.js. Это просто, бесплатно, безопасно и кроссплатформенно. Он работает на Windows, Linux и macOS. Команда, используемая для установки fkill-cli:
$ npm install --global fkill-cli
Имя и идентификатор процесса необходимы для завершения процесса. «-f» заставляет операцию выполняться, в то время как команда «-v» отображает аргументы процесса. API fkill принимает входные данные и параметры в качестве аргументов и возвращает объект обещания. Некоторые параметры — принудительное, тихое, ignoreCase, дерево и forceAfterTimeout.
Локальный туннель
Localtunnel — это платформа, которая позволяет совместно использовать веб-службы из внешней среды с локальной средой компьютера без изменения настроек DNS и брандмауэра системы.
Запросы передаются через Localtunnel и передаются на локально развернутый сервер после назначения ему общедоступного URL-адреса. Команда, используемая для установки Localtunnel, выглядит следующим образом:
$ npm install -g localtunnel
Это безопасно и использует HTTPS-запросы. Эти API можно использовать для тестирования веб-перехватчиков. Пользовательский интерфейс можно протестировать в облачных браузерах с помощью Localtunnel.
Inquirer.js
Inquirer.js — это интерактивный пользовательский интерфейс командной строки для приложений Node.js. Это упрощает процесс поиска ошибок, анализа ввода, проверки ответов и управления иерархическими подсказками. Он использует собственные модули ESM для реализации своих функций. Команда, используемая для установки Inquirer.js:
$ npm install --save inquirer
Различные используемые методы включают приглашение, registerPrompt, createPromptModule и т. д. prompt() — это функция, которая принимает вопрос и ответ в качестве входных данных и возвращает обещание при вызове.
Вопрос — это объект, представляющий собой хешированную версию связанных с вопросом значений, таких как тип, сообщение, значение по умолчанию, выбор, фильтр и т. д. Пара объектов «ключ-значение» ответа содержит хешированную версию ответов клиента. Ключ — это свойство вопроса, а значение может содержать подтверждение, ввод, число, необработанный список и т. д.
http-сервер
http-сервер — это статический http-сервер командной строки. Это просто и не требует никаких настроек. Он состоит из 2-х файлов: index.html и 404.html. index.html — это файл по умолчанию, который будет отображаться по запросам. 404.html отображается, когда файл не найден. Команда, используемая для установки http-сервера, показана ниже:
$ npm install --global http-server
Он был разработан с использованием HTML и JavaScript. Он обеспечивает безопасность с помощью сертификатов TLS/SSL. Он использует алгоритм RSA для шифрования и дешифрования ключей. Это также позволяет определить парольную фразу вместе с закрытым ключом в целях безопасности.
Заключительные слова
JavaScript является наиболее широко используемым языком программирования для разработки программного обеспечения. Чтобы облегчить жизнь разработчикам, были разработаны различные пакеты Node.js.
Пакеты Node.js, такие как Retire.js, Localtunnel, Xo, Inquirer.js, Shelljs, fpkill, NodeJsScan, Prettier и т. д., можно использовать для форматирования кода, обеспечения безопасности, выделения изменений кода, удаления тяжелых и нежелательных узловых модулей и т. д. Это помогает разработчикам эффективно отлаживать, писать и управлять своим кодом.
Вы также можете прочитать о том, как установить Node.js и NPM в Windows и macOS.