Почему одна папка весит больше вашей ОС
npm ставит все зависимости в локальный node_modules каждого проекта — без общего доступа и без дедупликации между проектами, по умолчанию так. Скромный веб-апп легко вытягивает 800 МБ — 2 ГБ на тысячу пакетов, а настоящий убийца — количество файлов: десятки тысяч мелочевки, которую сканирует Defender, ползают утилиты бэкапа и на которой OneDrive — если проекты живут в синхронизируемой папке — давится вечно. Именно поэтому установка на Windows идёт минутами, а на Linux секундами: накладные расходы на создание мелких файлов брутальны. Пять заброшенных экспериментов спустя вы имеете 10–15 ГБ, которые ничего активно не использует.
Удаляйте без страха: лок-файл — ваша гарантия
Контракт прост: package.json говорит, что нужно, package-lock.json — какие именно версии были, а node_modules — лишь распакованный результат этих двух. Удалили node_modules, запустили npm ci — и через несколько минут получили идентичное дерево; это не трюк восстановления, это задуманный рабочий процесс. Единственная непростительная ошибка — удалить лок-файл или позволить проекту гнить без закоммиченного лок-файла. Для поиска папок запустите npx npkill: он просканирует все диски, покажет каждый node_modules с размером и датой изменения и удалит отмеченные; WizTree делает ту же работу как общая карта диска, если нужна полная картина.
- Удаляйте node_modules — но никогда package.json и лок-файл
- Восстанавливайте через npm ci: он точно следует лок-файлу, в отличие от npm install
- Запустите npx npkill, чтобы найти и убить node_modules по всем дискам
- Держите активные проекты вне папок OneDrive и Dropbox — файлопоток убивает синхронизацию
- Проект мёртв? Заархивируйте в zip без node_modules, потом удалите папку
- Для новых проектов попробуйте pnpm: одно глобальное хранилище, проекты ссылаются на него
Кэши, стоящие за папкой
Даже когда все node_modules мертвы, npm держит второй склад: кэш в %LOCALAPPDATA%\npm-cache с копией каждой когда-либо установленной версии каждого пакета — гигабайты, которые растут годами без остановки. npm cache verify безопасно его прибирает, та же логика у pnpm store prune и yarn cache clean для их хранилищ. Сам кэш отключать не стоит: именно он делает переустановку проекта с пустым кэшем медленным путём, а не нормой. Периодическая зачистка в Kleaner PRO подхватывает эти девелоперские кэши вместе с обычными временными файлами — удобно, когда несколько инструментов тихо накопили на одной машине.
Вопросы и ответы
Можно ли безопасно удалить папку node_modules?
Да. Её полностью описывают package.json и лок-файл; npm ci соберёт идентичное дерево за минуты. Главное — не удалять эти два файла.
Как найти все папки node_modules на диске?
Запустите npx npkill — он просканирует все диски, покажет размеры и даты и удалит отмеченное. WizTree даст ту же картину как полную карту диска.
Понятно до покупки: что входит в лицензию
Разовый 30-минутный триал даёт доступ к базовым инструментам. Возможности с меткой PRO остаются закрыты до активации платной лицензии.
Читайте также
Написать нам: [email protected]