Обновить
32K+

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

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

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

Как я искал продукты без сахара при помощи ИИ

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

Disclaimer. Текст данной статьи написан автором-человеком (во всяком случае он себя таковым считает), но речь пойдёт о создании текстов и кода, которые можно (с полным на то основанием!) причислить к категории "нейрослоп". Если у вас имеется аллергия на нейрослоп - лучше не читайте дальше.

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

И вот тут начинается самое интересное.

Читать далее

Новости

Как я подавал шахматное расширение в Chrome Web Store: разрешения, данные и отказ

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

Вторая часть истории о том, как моё шахматное расширение попадало в Chrome Web Store. Первая была про оплату аккаунта разработчика и мои ошибки, эта про саму подачу: что спрашивает форма, какие объяснения прошли проверку, где я чуть не написал неправду в разделе о данных и как получил отказ по своей же вине.

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

Читать далее

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

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

Уже примерно год я делаю приложение для изучения иностранных слов.

За это время оно довольно сильно изменилось: появились новые языки, подборки, рекомендации, игры, уроки и куча других вещей. Сейчас в приложении можно учить 12 языков.

Но основная идея все это время оставалась одной и той же: помочь человеку быстро находить любые слова и фразы, а потом давать ему возможность максимально эффективно запоминать их через интервальные повторения.

И забавно, что за год разработки я успел придумать довольно много способов, откуда эти слова брать.

Кроме самого очевидного.

Читать далее

Наводишь на слово в субтитрах — видишь перевод: расширение на встроенном ИИ Chrome

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

Я учу английский по сериалам. Смотрю с английскими субтитрами, и каждое незнакомое слово — это пауза, alt‑tab, переводчик, обратно. К десятой паузе за серию хочется просто включить русские сабы и сдаться.

Есть Language Reactor и похожие сервисы, но у них жёсткий список площадок: Netflix, YouTube — и всё. Каждый стриминг рисует субтитры своим способом, и под каждый нужен отдельный парсер. А я смотрю где придётся.

Так что я сделал своё. Получилось расширение, которое работает почти на любом сайте с HTML5-плеером: наводишь на слово в субтитрах — тултип с переводом, кликаешь — слово уходит в личный словарь и подчёркивается во всех следующих сериях, пока не выучишь. Перевод крутится прямо в браузере, без серверов.

Читать далее

Протез для силы воли или харнесс для думскроллинга

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

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

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

В десктопе с этим сложнее. Но когда я писал статью про харнесс, я подумал: вот бы собрать такой же структурный подход и для себя самого. Чтобы нарушения не возникали не потому, что у тебя такое соглашение, а потому, что сам путь к обходу закрыт. В той статье я разбирал Atomic Habits и его подходы к закреплению полезных привычек. Но там же есть и методы против вредных: как помогает даже самое простое «убрать с глаз долой». И самый полезный инструмент в этом наша лень.

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

Этим софтом стал Curfew, расширение для браузера, которое контролирует и лимитирует дневные бюджеты на «вредные» сайты.

Читать далее

Я просил ход, который сделал бы человек. Stockfish ответил правильным

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

С лета у меня в браузере рядом с доской работает локальный Stockfish и подсказывает стрелкой на лучшем ходу. Люди, которые начали пользоваться, выразили одну претензию: ход верный, но ход непонятный. Я бы так никогда не сыграл — покажи, что сыграл бы я.

Читать далее

Нашёл «VPN», который оказался обычным SOCKS5-прокси

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

Недавно я наткнулся на довольно интересный случай. На первый взгляд — обычное VPN-расширение для браузера: список стран, кнопка подключения, бесплатный сервер, платные серверы и подписка. Но мне стало интересно, что именно происходит после нажатия кнопки Connect. Я решил не ограничиваться интерфейсом и полез непосредственно в код расширения. И вот там уже стало интереснее.

Идём дальше

Как устроен локальный шахматный помощник в браузере: Stockfish 18, Manifest V3 и веб-доски

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

Stockfish умеет находить сильные ходы. Но браузерному расширению ещё нужно понять, какая из нескольких досок относится к текущей партии, дождаться стабильной позиции, пережить остановку service worker и не показать устаревший результат.

Дальше не про кнопки, а про проверки: какая доска настоящая, не протух ли ответ, пока считал движок, куда девать WASM, когда Chrome гасит service worker, и почему «сыграй как 1500» нельзя получить, урезав глубину. Отдельно, без эвфемизмов: подсказка в партии с человеком — это чит.

Читать далее

Маскируем чувствительные данные при отправке в ИИ‑чат. Бесплатное приложение

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

ИИ‑чаты стали рабочим инструментом наравне с почтой — а вместе с ними появился новый канал утечек, которого три года назад не существовало. Договоры, резюме, пароли и клиентские данные уезжают на чужие серверы не через взлом, а через обычное поле ввода. Блокировать доступ пробовали многие — люди просто уходят на личные устройства, и риск становится невидимым.

Мы решили задачу иначе: расширение для браузера в Chrome Web Store, которое перед отправкой заменяет чувствительные данные обезличенными метками, а ответ ИИ расшифровывает обратно — прямо на экране, незаметно для человека.

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

Читать далее

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

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

В прошлых двух статьях я разбирал 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 мин
Охват и читатели19K

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

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

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

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

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

Читать далее

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

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

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

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

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

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

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

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

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

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

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