Обновить
32K+

Расширения для браузеров

Экстеншены и плагины

32,06
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Написал расширение, которое качает статьи Хабра в Markdown — и не долбит сервер

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели9.6K

В прошлых двух статьях я разбирал DNS-трафик домашней сети и анализировал 1233 публикации Хабра, чтобы понять, за что площадка даёт рейтинг. И там, и там был вопрос, который я обходил: чем, собственно, я выгрузил эту тысячу статей?

Не руками копировал и не скриптом на Python, который на двухсотом запросе получил бы 429 и бан по IP. Я написал расширение для Chrome, которое сохраняет статьи Хабра в Markdown — по одной, пакетом или автоматически по расписанию, — и делает это достаточно вежливо, чтобы сервер не считал его атакой.

Главная мысль статьи оказалась не про парсинг HTML, а про хорошие манеры к серверу. Наивный качатель на голом fetch пишется за пять минут и получает бан на десятой. Инструмент, которым можно пользоваться постоянно, отличается тремя вещами:

— держит принудительный интервал между запросами (1.5 секунды, гарантированно); — слушает 429 и при перегрузке сервера замолкает на три минуты целиком (паттерн circuit breaker), а не долбит сквозь ограничение; — работает с открытыми статьями для личного архива, а не сливает базу.

Внутри: разбор вежливого граббера с кодом, почему парсинг чужой вёрстки ломается на каждом редизайне и как от этого защищаться фолбэками, формат Markdown с YAML-метаданными (тот самый, что сделал возможным анализ тысячи статей) и правовая рамка — где граница между «сохранил для себя» и «спарсил».

Расширение с открытым кодом под MIT, ставится из Chrome Web Store в один клик.

Читать далее

Новости

Chrome скачавает 4 Гб локальной Gemini Nano: нужно ли, и как отключить

Время на прочтение14 мин
Охват и читатели17K

В настройках Chrome появился переключатель «ИИ на устройстве». Он относится к моделям, которые запускаются прямо на компьютере, причем, для целей довольно разнообразных (в частности, даже для обнаружения мошеннических сайтов). В каталоге профиля браузера при этом действительно лежат несколько гигабайт весов Gemini Nano. Хочется сказать: раз модель уже скачана, то встроенный Gemini должен работать локально - например, читать и пересказывать открытую страницу без обращения в облако!

Увы, для Google это оказалось не самым логичным решением. Более того, они даже с неймингом не справились до конца, чем здорово всех запутали.

Под словом Gemini у компании скрываются две принципиально разные системы.

Ask Gemini / Gemini in Chrome — облачный сервис. Когда вы просите его пересказать страницу или ответить на вопрос по открытым вкладкам, их содержимое передаётся в инфраструктуру Google.

Gemini Nano — локальная модель. Chrome скачивает её на компьютер и запускает на CPU или GPU. Отдельной кнопки «спросить Gemini Nano» у пользователя нет. Этой моделью пользуются сайты и расширения через специальные API Chrome, а также сам браузер — например, при первичной проверке подозрительных страниц.

Читать далее

Как я воевал с Яндексом и решил проблему «мертвых душ» на диске

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели53K

Статья посвящается недавнему сомнительному решению Яндекса уменьшить объём своего диска и жестоко покарать всех, кто посмел: впихнуть невпихуемое, не удалить старые файлы или просто не суметь разобраться в их «гениальном» интерфейсе и удалить снимки, которые не подчиняются абстракции файлов вообще. Ваш покорный слуга создаёт расширение, которое позволяет решить проблему. На превью то, кем он себя видит: грозным защитником угнетённых бабуль из бухгалтерии, в клетчатой рубашке инженера и с волшебным мечом.

Читать далее

Можно ли измерить смысл

Уровень сложностиСредний
Время на прочтение24 мин
Охват и читатели9.4K

Дисклеймер: текущие LLM‑возможности позволяют детектировать «жирный» слоп. Но оценка может быть субъективной, и возможны ошибки, никогда не доверяйте оценке слепо: это обоюдоострый меч. Оценить точно не всегда могут сами люди, кроме совсем очевидных примеров, и даже там среднестатистический житель планеты напряжётся. Этот метод — инструмент, призванный экономить время, необходимое для диагностики человеком. Именно эту плоскость и будет раскрывать статья.

Дегустировать

Кнопка «К началу ответа» для ChatGPT, Qwen, DeepSeek, Claude, Gemini, Grok и Perplexity: как я победил скролл и AI‑мысли

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели7.2K

Спойлер: коды готовы — вставьте и пользуйтесь.

Знаете, что меня расстраивало больше всего в чатах с нейросетями? Сидишь, читаешь длинный ответ в момент генерации. Дошёл до середины, понял, что упустил какую-то деталь в начале, крутишь скролл вверх. А бот в этот момент дописывает новый абзац, и весь текст уезжает обратно вниз.

Штатная стрелочка «наверх» тут не спасает. Она кидает к шапке сайта, а не к началу конкретного сообщения ассистента. Приходится ловить текст вручную. Сейчас стали выкатывать что-то вроде истории запросов справа от чата, похожее на закладки, но мне они не нравятся по той же причине: надо приглядываться и целиться в анимированный интерфейс.

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

Читать далее

Мой опыт запуска продукта на Product Hunt

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели6.7K

Привет, коллеги! Хотел бы поделиться с вами своим опытом запуска моего расширения для браузера Mobile View, которое позволяет проверять адаптив непосредственно поверх десктопа, на такой площадке, как Product Hunt. Ссылки на приложение оставлять не буду — это не реклама, а скорее пост на подумать и обменяться опытом взаимодействия с этой платформой.

Читать далее

Как превратить ChatGPT.com в Codex (но без лимитов)

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели25K

Codex это прекрасно, но лимиты все меньше, а цена все выше. Но ведь под капотом просто gpt-5.5(вот промпт)?

Один диалог слева пишет код, справа другой проверял результат, третий держал контекст, а я в это время мог накидать очередь следующих шагов и уйти пить чай. Если задача закончилась — пусть прилетит сообщение в Telegram.

Так появился экспериментальный Chrome-плагин ChatGPT Multi Pane: GitHub

Читать далее

Ограничения Manifest V3 в расширении EasyProxy для управления прокси

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7.2K

Как перестать искать подходящее расширение и написать его самому. Отличия API Firefox и Chrome Extensions.

Читать далее

Браузерные расширения от А до П, где П — публикация в Google Store

Уровень сложностиСредний
Время на прочтение28 мин
Охват и читатели11K

Всем привет! Меня зовут Александр, я продуктовый инженер в KTS.

Недавно мы разрабатывали AI-копайлот для сервис-деска в виде расширения на Chrome. Копайлот подсказывал оператору ответы для клиента на основе контекста диалога, истории обращений и базы знаний компании. Уже на старте стало понятно, что разработка расширений сильно отличается от привычной фронтенд-разработки.

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

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

Сразу задам фрейм: в статье речь пойдет именно о расширениях для Chrome (Manifest V3), хотя многие подходы будут применимы и к другим браузерам на базе Chromium.

Читать далее

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

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели14K

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

Готовые мобильные симуляторы это не закрывали: они хорошо делают своё дело, но не дают посмотреть адаптив прямо на вкладке, поверх десктопа. Я сделал свой инструмент — и в статье разбираю, как это устроено технически.

Читать разбор

Использование Blob API для обработки файлов, их загрузки и создания клиентских приложений без утечек памяти

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели9.7K

Современные фронтенд-приложения постоянно взаимодействуют с файлами.

Пользователи загружают аватары, перетаскивают видео в дашборды, экспортируют CSV-отчеты, просматривают PDF-файлы, скачивают сгенерированные конфигурационные файлы и работают с медиаконтентом прямо в браузере. На первый взгляд все это выглядит довольно просто: поле загрузки файла, элемент предпросмотра, возможно, кнопка скачивания — и задача решена.

Но именно здесь начинаются настоящие проблемы.

Читать далее

Виртуальная АТС для бизнеса: от архитектуры до выбора провайдера

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели7.9K

У бизнеса часто возникает закономерный вопрос: зачем нужна ВАТС, если уже есть мобильная связь и городская линия. Разница становится очевидной при масштабировании. Cуть в тщательно контролируемой модели коммуникаций, где всё имеет значение: кто принимает вызов, где фиксируется история звонков, как система работает при увеличении нагрузки, и как все эти данные использовать для контроля и анализа? Свежий обзор провайдеров ВАТС с актуальными ценами для увлечённых специалистов и рациональных руководителей - в материале о виртуальных АТС. 

Узнаём всё про АТС для бизнеса

Можно ли поймать вайб-кодера без нейросети? Сделал расширение для GitHub — рассказываю

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели10K

В 2026 году уже не нужно гадать, человек писал GitHub-репозиторий или AI. Я сделал Chrome-расширение, которое оценивает репозиторий по прозрачным эвристикам: README, коммиты, структуру файлов и метаданные. Без нейросети, без чёрного ящика — только понятные правила и объяснимый вердикт.

В статье рассказываю, как появился детектор, почему просто “число AI-похожести” оказалось недостаточно, как я перешёл к профилям вроде “AI-код”, “AI-документация” и “код человека”, и какие сигналы реально помогают отличать vibe-coded репозиторий от ручной работы.

Читать далее

Ближайшие события

Chrome-расширение для GitLab: от rebase до cherry-pick

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели9.3K

Работая с GitLab каждый день, повторяешь кучу одинаковых действий которые хотелось бы делать быстрее чем позволяет UI. Надоело, запилил Chrome-расширение.

В статье рассказываю как устроено внутри: авторизация через session cookies без токенов, цепочки действий в background worker, борьба с постоянно меняющимся DOM GitLab (Vue-миграция между версиями сломала все селекторы несколько раз).

Из фич: кнопки на MR странице (rebase, bump версии, auto-merge, ship), Jira-сайдбар прямо в GitLab, бейджи размера/конфликтов/тредов на списке MR, cherry-pick в несколько веток, command palette.

Читать далее

Navigation API теперь доступен в Baseline

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели9.8K

Navigation API предоставляет возможность инициировать (программно запускать), перехватывать и управлять навигацией в браузере. Он также позволяет исследовать (traverse) сущности истории (history entries) приложения. Это улучшенный вариант предыдущих возможностей веб-платформы, связанных с навигацией, таких как History API и window.location, который решает их проблемы и специально предназначен для одностраничных приложений (single-page applications, SPA).

Читать далее

Я выяснил, что Яндекс Музыка на треть состоит из нейрослопа

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели66K

Возможно вы уже знаете, что в чарт «Яндекс Музыки» залетают треки, сгенерированные ИИ. Например, перепевка стихотворения Есенина «Сыпь, гармоника», которая сейчас на 16 месте чарта. Или трек «Ярмарка судеб» исполнителя Alena, который был даже спет в эфире телеканала Россия 1.

Мне нравились алгоритмы «Яндекс Музыки». Благодаря им в своё время я открыл много малоизвестных артистов, которых слушаю до сих пор. Но с появлением Suno, Lyria, Udio, алгоритмами рекомендаций Яндекса пользоваться стало невозможно. Мне то и дело подсовывались низкокачественные ИИ-треки.

В какой-то момент меня это достало. Я провёл своё расследование и получил неутешительные результаты. В базе «Яндекс Музыки» сейчас как минимум 140 тысяч ИИ-исполнителей. Ежемесячно они загружают больше 100 тысяч ИИ-треков, что составляет примерно 40% от всех загружаемых треков. А каждый 10-й трек в чарте – сгенерирован ИИ. И «Яндекс» ничего с этим не делает.

Читать результаты расследования

Когда расширение делает больше, чем обещает: разбор Page Locker

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели8.9K

Недавно наткнулся на расширение Page Locker в Chrome Web Store. По описанию — всё безобидно: блокировка страниц, размытие контента, защита по PIN/таймеру. Типичный productivity/security тул.

Но при разборе кода оказалось, что внутри есть поведение, которое с заявленным функционалом вообще не связано.

Разберёмся.

Читать далее

Готовимся к отключению. Эффективные форматы для упаковки и раздачи HTML-страниц

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели22K

В 2026 году растёт риск перебоев и ограничений в работе интернета в РФ. В таких условиях имеет смысл заранее продумать, как сохранить привычное окружение при нестабильном доступе к сети.

Помимо личных файлов, кино и музыки, хочется сохранить архив сайтов и веб-страниц для чтения в будущем — на месяцы или даже годы вперёд. Но в каком формате это лучше делать?

Читать далее

Я установил все расширения Firefox

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели22K

Эпичная история установки всех* расширений для браузера Firefox. Это был непростой процесс, который-таки увенчался успехом. Не обошлось в нём и без некоторых любопытных поворотов, неразрешённых вопросов и помощи друга.

Как выяснилось, всего у Firefox 84 тысячи расширений. Вроде бы не особо много, и по факту даже меньше 50 ГБ. Так что приступим!

*Всех, кроме 8, которые мы не соскрейпили (или которые удалили в промежутке между моментом проверки их списка на сайте и запуском скрипта), и 42, которые отсутствовали в extensions.json.1 Так что чисто технически мы установили 99,94% всех расширений.

Читать далее

Необратимые изменения в мозгу вайбкодера

Время на прочтение3 мин
Охват и читатели22K

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

Самые значимые сдвиги я делю на 3 пункта:

1. Ощущение всемогущества

2. Желание ещё большего могущества

3. Сломанный стереотип: "не надо платить за то, что можешь сделать сам и бесплатно"

Читать далее
1
23 ...