Расширение Chrome, которое находит на страницах ссылки на GitHub (как обычные ссылки, так и URL, написанные текстом) и добавляет рядом маленькую кнопку с самолётиком. Один клик — и ссылка опубликована в вашем Telegram-канале через вашего бота.
- Находит ссылки на
github.comв элементах<a>и в обычном тексте. - Работает со ссылками-переходниками, например
t.coв Twitter/X: если в видимом тексте ссылки виденgithub.com, расширение развернёт редирект и опубликует конечный GitHub-URL. - Следит за динамически подгружаемым контентом (SPA, бесконечные ленты)
через
MutationObserver, с защитой от конфликтов с другими расширениями (например, переводчиками страниц). - Кнопка становится зелёной при успехе и красной при ошибке (текст ошибки — во всплывающей подсказке кнопки).
- Переключатель включения/отключения в попапе — применяется мгновенно во всех открытых вкладках.
- На самом github.com кнопки не добавляются (иначе они были бы у каждой внутренней ссылки).
- Создайте бота у @BotFather и скопируйте токен.
- Добавьте бота в канал администратором с правом публиковать сообщения.
- Задайте токен бота и ID канала:
- либо в файле
config.js(поляBOT_TOKENиCHANNEL_ID), - либо кликнув по иконке расширения — в попапе можно задать оба значения
(они имеют приоритет над
config.js). Если нужно скопировать токен из другой программы, используйте «Открыть в отдельной вкладке»: в отличие от попапа, вкладка не закрывается при потере фокуса.
- либо в файле
ID приватного канала выглядит примерно так: -1001234567890.
- Откройте
chrome://extensions. - Включите Режим разработчика (переключатель справа сверху).
- Нажмите Загрузить распакованное расширение и выберите эту папку.
Откройте любую страницу со ссылками на github.com — рядом с каждой появится
маленькая круглая голубая кнопка с самолётиком. Клик — и ссылка опубликована
в канале (в сообщении только сама ссылка).
manifest.json— манифест расширения (Manifest V3)config.js— файл настроек: токен бота и ID каналаcontent.js/content.css— поиск ссылок и кнопки на страницахbackground.js— разворачивание переходников и отправка в Telegram Bot APIpopup.html— всплывающее окно настроек (клик по иконке расширения)options.html/options.js— страница настроек расширенияicons/— иконки расширения
