Текст и данные · Инструкция
Как управлять файлами npm-пакета через поле files
Поле `files` работает как allowlist содержимого пакета и помогает не публиковать исходные тестовые данные, внутренние ск
Короткий ответ
Добавьте в `package.json` массив `files` с путями/шаблонами, которые должны попадать в публикуемый пакет, затем проверьте tarball перед publish.
Что делать
- 1. Определите публичные файлы: Обычно это собранный `dist/`, README, типы и нужные runtime assets.
- 2. Заполните `files`: Добавьте массив путей или шаблонов в `package.json`.
- 3. Проверьте результат: Соберите tarball через штатный npm pack workflow и посмотрите его содержимое.
- 4. Исправьте исключения: Если нужный runtime-файл не попал внутрь, скорректируйте allowlist до публикации.
Пример files
`"files": ["dist/", "README.md"]` ограничивает публикуемое содержимое; фактический список всё равно проверяйте через pack workflow.
Важно
Некоторые файлы npm включает или исключает по собственным правилам; всегда проверяйте фактический tarball перед publish.
Как понять, что всё сработало
- `npm pack --dry-run` или распакованный tarball содержит нужные runtime files и не содержит внутренних секретов/мусора.
- Изменение `files` проверено до `npm publish`, а не после публикации версии.
Что учитывать
Некоторые файлы npm включает или исключает по собственным правилам; всегда проверяйте фактический tarball перед publish.
Источники и проверка
Фактическая часть сверена по первичным источникам (в т.ч. package.json). Пример и формулировки — редакция N1RO на 2026-09-18.