Перейти до вмісту

NPM Guide

Цей посібник створено, щоб допомогти новачкам зрозуміти та ефективно використовувати NPM. Він охоплює все, від базових налаштувань до складніших завдань, таких як публікація пакунків та керування версіями.

Вступ до менеджерів пакунків

  • npm (Node Package Manager) - це менеджер пакунків за замовчуванням для Node.js. Він допомагає розробникам встановлювати, керувати та ділитися пакетами (модулями) JavaScript коду. Якщо ви створюєте проект на Node.js або працюєте з фронтенд-фреймворками на кшталт Next.js, ви, скоріш за все, будете використовувати NPM для роботи з вашими залежностями.
  • yarn - це менеджер пакунків, який виконує функції менеджера проектів. Незалежно від того, чи працюєте ви над простими проектами, чи галузевими монопроектами, чи ви розробник з відкритим вихідним кодом, чи корпоративний користувач, Yarn прикриє вашу спину.
  • pnpm - швидкий, економний на дисковому просторі менеджер пакунків для JavaScript. Він є альтернативою NPM та Yarn, пропонуючи унікальні можливості, такі як неплоска структура node_modules та зв’язані залежності, що робить його швидшим та надійнішим у роботі з великими проектами.
  • [bun ](https://bun .sh) - швидкий npm-сумісний менеджер пакунків JavaScript. Розробляйте, тестуйте, запускайте та компонуйте проекти на JavaScript та TypeScript - все це за допомогою bun . bun - це універсальне середовище виконання JavaScript та набір інструментів, розроблений для швидкості, з пакувальником, тестувальником та Node.js-сумісним менеджером пакунків.

Встановлення Node.js та NPM

Щоб почати роботу з NPM, вам потрібно встановити Node.js, який постачається разом з NPM за замовчуванням.

  • Windows/macOS: Завантажте та встановіть з офіційного сайту Node.js.
  • Linux: Дотримуйтесь інструкцій у цьому відео або встановіть за допомогою вашого менеджера пакунків. Після встановлення ви можете перевірити версії Node.js та NPM, встановлені у вашій системі:
Terminal window
node -v
npm -v

Ініціалізація нового проекту

Щоб розпочати новий проект за допомогою NPM, вам потрібно створити файл package.json, який містить метадані про ваш проект та його залежності.

Terminal window
npm init

Дотримуйтесь підказок, щоб налаштувати ваш package.json. Ви також можете використати прапорець -y, щоб пропустити підказки і використати значення за замовчуванням:

Terminal window
npm init -y

Встановлення пакунків

NPM спрощує встановлення пакунків, необхідних для вашого проекту.

  • Встановлення пакунка локально (для вашого проекту): *Встановлення пакунка локально (для вашого проекту):***Встановлення пакунка локально (для проекту)
Terminal window
npm install <ім'я_пакунка>

Це додасть пакунок до вашого каталогу node_modules і перелічить його як залежність у вашому package.json.

  • Встановлення пакунка глобально (доступно для всієї системи):
Terminal window
npm install -g <назва_пакунка>

Глобальне встановлення корисне для інструментів командного рядка, до яких ви хочете отримати доступ з будь-якого місця у вашій системі.

Керування залежностями

Додавання та вилучення пакунків

  • Додавання пакунків як залежних: *Додавання пакунків як залежних:*Додавання пакунків
Terminal window
npm install <назва_пакунка>
  • Додавання пакунка як залежність для розробки:
Terminal window
npm install <назва_пакунка> --save-dev
  • Видалити пакунок:
Terminal window
npm uninstall <ім'я_пакунка>

Оновлення пакунків

Щоб оновити всі пакунки до найновіших версій на основі діапазонів emver, вказаних у package.json, виконайте

Terminal window
npm update

Якщо ви хочете оновити конкретний пакунок:

Terminal window
npm install <назва_пакета>@latest

Публікація нового пакунка

Якщо ви створили пакунок, яким хочете поділитися з іншими, ви можете опублікувати його у реєстрі NPM.

Підготовка пакунка

Переконайтеся, що ваш package.json правильно налаштовано з необхідними даними, такими як name, version, description та main. Також переконайтеся, що у вас є файл .gitignore, щоб уникнути публікації непотрібних файлів.

Вхід до NPM

Спочатку увійдіть до свого облікового запису NPM:

Terminal window
npm login

Публікація вашого пакунка

Після входу ви можете опублікувати свій пакунок за допомогою:

Terminal window
npm publish
# Якщо ви хочете мати @scope/*, використовуйте:
npm publish --access public

Ваш пакунок буде доступний на npmjs.com і може бути встановлений іншими користувачами:

Terminal window
npm install <назва_пакунка>

Випуск нових версій

Коли ви вносите зміни до пакунка, вам потрібно випускати нові версії. Дотримуйтесь принципів семантичного керування версіями (MAJOR.MINOR.PATCH), щоб випускати версії вашого пакунка належним чином.

  • Оновлення версії патчу (наприклад, 1.0.0 -> 1.0.1):
Terminal window
npm версія патчу
  • Оновіть мінорну версію (наприклад, 1.0.0 -> 1.1.0):
Terminal window
npm версія minor
  • Оновлення основної версії (наприклад, 1.0.0 -> 2.0.0):
Terminal window
npm версії major

Після оновлення версії опублікуйте нову версію:

Terminal window
npm publish

Використання інструменту changeset для керування версіями

Changesets - це інструмент, який допомагає керувати версіями та публікувати пакунки у монорепо або багатопакункових сховищах.

Встановлення changeset (набору змін)

Встановіть інструмент changeset глобально або як залежність розробника:

Terminal window
npm install @changesets/cli --save-dev

Налаштування наборів змін

Ініціалізуйте набори змін у вашому проекті:

Terminal window
npx changeset init

Створення набору змін

Кожного разу, коли ви робите зміни, які потрібно випустити, створюйте набір змін:

Terminal window
npx changeset

Дотримуйтесь підказок, щоб описати зміни та версії бампів.

Випуск змін

Коли ви будете готові випустити зміни:

  • 1. Оновити версії: Запустіть наступну команду, щоб оновити версії та оновити журнали змін.

    Terminal window
    npx changeset версія
  • 2. Опублікуйте пакунки: Нарешті, опублікуйте оновлені пакунки:

    Terminal window
    npx changeset publish

Додаткові ресурси


Цей посібник має надати новачкам вичерпне уявлення про NPM, а також надати достатньо деталей для більш досвідчених користувачів для ефективного керування та публікації своїх пакунків. Ви можете продовжувати розширювати цей посібник, додаючи до нього нові розділи за потреби.