Шаг 1: авторизуйтесь через NPM
npm login --registry=https://npm.pkg.github.com
Укажите свой никнейм и пароль. Мой никнейм @qertis вместо него используйте ваш никнейм в гитхабе.
В качестве пароля используйте сгенерированный токен отсюда. Разрешите загрузать пакеты на GitHub Package Registry указав в scope — write:packages.
Шаг 2: исправьте package.json
Перейдите в package.json, где в свойстве name пакета добавьте свой никнейм, в моем случае будет так:
{
"name": "@qertis/franc-node"
}
Также в package.json укажите publishConfig, в моем случае выглядит так:
"publishConfig": {
"registry": "https://npm.pkg.github.com/@qertis"
}
Убедитесь, что в package.json указаны поля repository, license и др.
Шаг 3: измените .npmrc
Затем в корне проекта создайте файл .npmrc, указывая в _authToken ваш сгенерированный токен и в registry свой никнейм, в моем случае итоговый файл выглядит так:
//npm.pkg.github.com/:_authToken=ghp_KgZdpPnEQbrQXXQonOeuo7SpWJ84kM4eQvgp
@qertis:registry=https://npm.pkg.github.com
always-auth=true
Шаг 4: публикация пакета в регистр
Теперь все готово к публикации:
npm publish
Шаг 5: устанавливаем NPM пакета из GitHub packages
Для установки приватного пакета, в проекте где будете его использовать создайте и укажите .npmrc как в шаге 3.
Посмотреть итоговый пакет и исходный код репозитория.