Создание моего первого плагина для браузера

У меня такое чувство, что большинство моих подписчиков уже знают о XKCD, веб-комиксе, который стал основным продуктом ботанической культуры, и, если вы еще не знали, поздравляю! Вы один из сегодняшних 10 000 счастливчиков!

Я неукоснительно слежу за XKCD в течение многих лет, и мне очень понравился каждый из комиксов. Однако иногда бывает так, что я не получаю; Возможно, это была непонятная математическая справка или справка по программированию до того, как это стало моим любимым занятием. В такие дни я был благодарен за Explain XKCD, вики-сайт, на котором ботаники собираются вместе, чтобы объяснить все веб-комиксы.

Несколько дней назад я искал небольшой проект, который помог бы мне окунуться в мир плагинов для браузера, и мне пришла в голову идея добавить ссылку на каждый комикс XKCD, которая перенаправляла бы пользователя прямо на соответствующую страницу в Explain XKCD.

Когда я начинал, я не знал, что было задействовано в создании плагина для браузера, но я решил, что дам ему ночь, чтобы начать и, возможно, закончить его за выходные.

В конце концов я был удивлен, насколько это было легко: за 2 часа после того, как я сел за компьютер, я прочитал документацию, написал рабочий плагин, упаковал его и получил одобрение в магазине надстроек Mozilla!

У Mozilla есть отличная документация, которая описывает весь процесс от начала до конца, включая примеры плагинов, которые вы можете кодировать.

Сам процесс относительно прост. Как минимум, все, что содержится в подключаемом модуле браузера, - это manifest.json файл, содержащий информацию о подключаемом модуле (имя, версия, URL-адреса, с которыми он должен работать), и файл JavaScript с фактическим кодом.

Конечно, JavaScript может быть настолько сложным, насколько вы хотите, но в моем случае весь плагин содержал менее 20 строк кода.

Если вам так же нравится XKCD, как и мне, я был бы признателен, если бы вы скачали расширение (вы можете найти его здесь для Firefox и здесь для Chrome) и дайте мне знать, как оно работает для вас!

Обратная связь всегда приветствуется на странице проекта GitHub.