С тех пор, как я начал веб-разработку, я устанавливал множество пакетов npm. Однажды, когда я отлаживал свой код, записывая данные в консоль Chrome, меня осенило, почему бы не сделать пакет npm, который позволит мне лучше печатать данные на консоли с более крупным шрифтом и другими цветами.

Поэтому я начал искать информацию о публикации пакетов npm и не мог поверить, насколько это просто. Поэтому я решил, почему бы не поделиться этими знаниями со всеми.

Прежде всего, вам необходимо установить Node в вашей системе. Тогда вам нужно иметь учетную запись npm. Создайте его здесь, если у вас его еще нет.

Теперь войдите в свою учетную запись npm через командную строку.

npm login

Введите имя пользователя, пароль и адрес электронной почты. Обратите внимание, что ваша электронная почта общедоступна.

Теперь, чтобы создать пакет, нам нужно создать папку с очень уникальным именем, потому что, если пакет npm с таким именем уже существует, npm не позволит вам его опубликовать.

mkdir logs-for-life
cd logs-for-life

Затем запустите команду инициализации npm.

npm init

Эта команда ответит на несколько вопросов и в конце создаст для вас файл package.json. Этот файл package.json содержит самое необходимое для публикации вашего проекта. (Не стесняйтесь пропускать вопросы, которые не имеют смысла).

Я добавил ссылку на репозиторий GitHub. Обратите внимание, что хорошей практикой является добавление README, содержащего информацию о вашем пакете и некоторые примеры использования.

Точка входа для вашего пакета начинается с index.js. Итак, давайте добавим в него немного кода. Я добавил эти две функции в index.js

const greet = (name) => {
console.log(name)
}
const helloWorld = () => {
console.log(“Hello World”)
}

Теперь вам нужно экспортировать эти функции, используя синтаксис module.exports.

module.exports = {
 greet,
 helloWorld,
};

Вы можете импортировать эти функции как

import { greet, helloWorld } from "logs-for-life";

Последний шаг — опубликовать пакет с помощью команды npm publish.

npm publish

Вот и все, ваш пакет теперь доступен на npm. Вы можете установить свой пакет, используя npm install

npm i logs-for-life

В моем пакете я добавил разные цвета для разных типов журналов, таких как ошибки, предупреждения и информация с увеличенным размером шрифта. Я также добавил возможность группировать строки под одним заголовком. Вы можете проверить этот пакет на github здесь.

Я надеюсь, что это вдохновит вас на создание и публикацию ваших собственных пакетов и развитие сообщества открытого исходного кода.