Генератор package.json

ДанныеРазработчик
Реклама · УДАЛИТЬ?
Прописные, дефисы/подчёркивания; может быть ограничен (scope/name).
Семантическая версия (MAJOR.MINOR.PATCH).
ESM устанавливает type=module и использует входные точки .mjs; CJS использует CommonJS.
Используется для поля main / module.
Устанавливает engines.node. Оставьте пустым, чтобы исключить.
Запятая-разделённые.
Опционально. Устанавливает репозиторий, ошибки и домашнюю страницу.

Скрипты

Зависимости

Используйте синтаксис name@range. Диапазон по умолчанию — последняя версия, если не указан.
То же самое, что выше.

Опции вывода

Реклама · УДАЛИТЬ?

Гид

Генератор package.json

Генератор package.json

Создать действительный package.json из структурированной формы вместо запоминания каждого поля. Установите имя пакета, версию, лицензию, систему модулей (ESM или CommonJS), движок Node, скрипты и зависимости, и инструмент создаст чистый, правильно упорядоченный манифест, который можно сразу вставить в проект.

В отличие от форматера, который перестраивает существующий файл, этот генератор создаёт манифест с нуля и пропускает пустые поля, поэтому вы получаете минимальный, публикуемый файл, который уже соответствует конвенциям, используемым npm для npm init.

Как использовать

  1. Введите имя пакета, версию и (опционально) описание и автора.
  2. Выберите лицензию и выберите ES Модули или CommonJS для системы модулей.
  3. Установите входной файл (например, index.js) и диапазон engines.node, такой как >=18.
  4. Заполните скрипты, которые вы действительно используете (dev, build, test, start) — оставьте поля пустыми, чтобы исключить их.
  5. Добавьте зависимости и devDependencies в формате name@range, один на строку или запятая-разделённые.
  6. Выберите отступ (2 пробела, 4 пробела или табу) и скопируйте или загрузите сгенерированный package.json.

Возможности

  • Форма-ориентированный – Не нужно запоминать точные названия полей или порядок; распространённые ключи заполняются для вас.
  • ESM или CommonJS – Переключите систему модулей и инструмент установит "type": "module" и module входной файл соответственно.
  • Умные скрипты – Пустые поля скриптов удаляются, вместо того чтобы оставаться как "" заполнители.
  • Парсинг зависимостей – Вставьте список package@^1.2.3 входов и они станут аккуратным dependencies объектом.
  • Помощь с репозиторием – Вставьте URL GitHub и генератор заполнит repository, bugsи homepage для вас.
  • Флаг частного – Один клик отмечает пакет как частный, чтобы предотвратить случайное npm publish.
  • Отступайте по своему усмотрению – Вывод в формате 2 пробела, 4 пробела или таба, чтобы соответствовать стилю вашего репозитория.
  • Копирование или загрузка – Получите результат как текст или загрузите package.json непосредственно.

Реклама · УДАЛИТЬ?

Часто задаваемые вопросы

  1. Какова разница между зависимостями и devDependencies?

    dependencies — пакеты, которые ваш код импортирует во время выполнения, и которые также устанавливаются потребителями вашего пакета. devDependencies — инструменты, которые вы используете только при разработке или сборке проекта — например, сборщики, запуск тестов, проверка типов — и они не устанавливаются, когда кто-то добавляет ваш пакет в свой собственный проект.

  2. Что делает установка type в module на самом деле?

    Параметр "type": "module" указывает Node.js, чтобы рассматривать .js файлы в пакете как ES модули, поэтому import и export работают нативно. Без этого Node рассматривает .js как CommonJS и вам нужно использовать require/module.exports. ES Модули также позволяют использовать верхний уровень await и строгую разрешающую систему файлов.

  3. Почему package.json использует семантическую версию?

    Семантическая версия (MAJOR.MINOR.PATCH) даёт потребителям договор: увеличение PATCH должно быть безопасным исправлением ошибок, увеличение MINOR добавляет функции, совместимые с обратной совместимостью, а увеличение MAJOR сигнализирует о разрушающих изменениях. Операторы диапазона, такие как ^ и ~ полагаются на этот договор, чтобы npm мог устанавливать совместимые обновления без нарушения вашей сборки.

  4. Какова цель поля engines?

    The engines поле объявляет, какие версии Node.js (или других сред выполнения) поддерживаются вашим пакетом. npm и многие инструменты показывают предупреждение при установке на несовместимой версии, и некоторые платформы отказываются устанавливать полностью. Установка явного node диапазона предотвращает скрытые ошибки, вызванные API, существующими только в новых версиях Node.

Хотите убрать рекламу? Откажитесь от рекламы сегодня

Установите наши расширения

Добавьте инструменты ввода-вывода в свой любимый браузер для мгновенного доступа и более быстрого поиска

в Расширение Chrome в Расширение края в Расширение Firefox в Расширение Opera

Табло результатов прибыло!

Табло результатов — это интересный способ следить за вашими играми, все данные хранятся в вашем браузере. Скоро появятся новые функции!

Реклама · УДАЛИТЬ?
Реклама · УДАЛИТЬ?
Реклама · УДАЛИТЬ?

новости с техническими моментами

Примите участие

Помогите нам продолжать предоставлять ценные бесплатные инструменты

Купи мне кофе
Реклама · УДАЛИТЬ?