0Pricing
Angular Academy · Урок

Публикация в npm

Версионируйте и публикуйте свою библиотеку

«Публикация в npm» — бесплатный урок Angular Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Angular Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Angular Academy содержит 4 уроков всего.

Как поделиться библиотекой с миром

После сборки в Angular Package Format библиотека публикуется в реестре, обычно npm, чтобы любой проект мог установить её с помощью npm install. В этом уроке рассматриваются версионирование и процесс публикации.

Публикуйте результат dist, а не исходный код

Публикуйте собранный пакет из dist/<lib>, где находятся созданный package.json и скомпилированные пакеты, а не исходный проект. Именно этап сборки делает пакет пригодным для использования.

ng build ui-kit --configuration production
cd dist/ui-kit

Семантическое версионирование

Пакеты npm используют semver: MAJOR.MINOR.PATCH. Увеличивайте PATCH для исправлений, MINOR — для обратно совместимых возможностей, MAJOR — для нарушающих совместимость изменений. Благодаря этому потребители могут безопасно обновляться.

0.0.1 -> 0.1.0   # new feature, no breaks (minor)
0.1.0 -> 0.1.1   # bug fix (patch)
0.1.1 -> 1.0.0   # breaking change (major)

Настройка версии

Версия берётся из собственного package.json библиотеки. Обновите её перед сборкой или используйте npm version, чтобы последовательно увеличить номер версии.

# inside projects/ui-kit (or use the field directly)
npm version minor   # bumps and tags the version

Вход в npm

Перед публикацией пройдите проверку подлинности в реестре. npm login сохраняет токен, благодаря чему команда публикации получает необходимые права.

npm login
# enter username, password / token, email

Публикация

Выполните npm publish из каталога собранного пакета. npm загрузит пакет и сделает его доступным для установки по имени и версии.

cd dist/ui-kit
npm publish

Пакеты с областью действия

Пакеты организаций используют область действия, например @myorg/ui-kit. По умолчанию пакеты с областью действия в npm являются закрытыми; передайте --access public, чтобы опубликовать их открыто.

npm publish --access public

Установка опубликованной библиотеки

Затем потребители добавляют её как любую зависимость и импортируют из её общедоступного API. Angular находит пакет FESM и типы через созданный package.json.

npm install ui-kit
// then:
import { ButtonComponent } from 'ui-kit';

Предварительные версии и метки

Публикуйте нестабильные сборки под меткой дистрибутива, например next, чтобы они не становились версией по умолчанию latest. Потребители явно выбирают их.

npm publish --tag next
npm install ui-kit@next

Закрытые реестры

Для библиотек, предназначенных только для внутреннего использования, публикуйте их в закрытом реестре (закрытые пакеты npm, GitHub Packages или Verdaccio), настроив .npmrc. Процесс публикации тот же, отличаются только URL реестра и данные аутентификации.

Автоматизация в CI

Зрелые команды публикуют пакеты из CI при выпуске с меткой: конвейер собирает библиотеку, запускает тесты и выполняет npm publish с сохранённым токеном. Это предотвращает ручные ошибки и связывает версии с коммитами.

Быстрая проверка

Что публикуется в npm?

Итоги

Публикуйте собранный результат dist/<lib>, версионируемый с помощью semver. Увеличьте версию, выполните npm login, а затем npm publish (добавьте --access public для пакетов с областью действия и --tag next для предварительных версий). Потребители выполняют npm install и импортируют из общедоступного API. Для надёжности автоматизируйте публикацию в CI.

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

Урок «Публикация в npm» бесплатный?

Да — полный текст урока «Публикация в npm» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Angular Academy, подпишись на CoddyKit PRO. Курс Angular Academy содержит 4 уроков всего.

Чему я научусь в уроке «Публикация в npm»?

Версионируйте и публикуйте свою библиотеку Ты практикуешь Angular Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Angular Academy?

Предыдущий опыт не требуется. Angular Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Публикация в npm»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Angular Academy?

Да. Каждый урок Angular Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Создание библиотеки с помощью ng generate
  2. Публичный API и точки входа
  3. Сборка с помощью ng-packagr
  4. Публикация в npm
← Назад к Angular Academy