Давно пользовался расширением The Great Suspender для приостановки вкладок, но оно давно заброшено и обновлений не планируется, а найти полноценную замену с Manifest V3 не удалось.
Тем временем Chrome окончательно отключает поддержку Manifest V2 для расширений начиная с версии 139, которая выйдет на днях (30 июля - Early Stable Release, 5 августа - Stable Release) и вопрос замены стал очень актуальным.
Посмотрел на исходный код The Great Suspender и решил, что проще написать с нуля, чем исправить. Изучил на API для расширений, всё должно быть просто: по таймеру проверяем вкладки, приостанавливаем (переадресовываем на страницу расширения) давно не использующиеся вкладки (определяем по свойству вкладки lastAccessed
), по клику на приостановленной страницы возвращаем обратно на оригинальную страницу. Казалось бы, какие тут могут быть проблемы...

Google Chrome
Браузер от Gooogle
Новости
Большинству людей плевать на качество софта

На Хабре иногда слышны жалобы на деградацию веб-дизайна и интерфейсов для более «примитивных» юзеров, дерьмофикацию хостингов кода, ожирение софта и прочие признаки ухудшения мира. Кажется, что каждый полезный сайт в интернете со временем превращается в шлак с бесконечным скроллингом, дофаминовой иглой и монетизацией.
Но у этой деградации есть естественная причина, и она очень простая. Дело в том, что большинству людей по большому счёту наплевать.
Я сделал это за Google

Google Photos — отличный сервис для хранения фотографий, но у него есть одна проблема: он не умеет находить дубликаты. Вернее может, но 100% одинаковые - даже разные EXIF данные - и все - давай, до свидания! За годы использования в моей библиотеке накопились тысячи похожих фотографий, и удалять их вручную — задача на десятки часов.
Особенно, когда тебя предупреждают, что 80% места занято - купи еще!
Я решил создать расширение для Chrome, которое автоматически найдет дубликаты. Казалось бы, простая задача: скачать фотографии, сравнить их с помощью нейросети, готово! Но оказалось, что браузерные расширения — это совершенно особый мир со своими ограничениями, и привычные подходы здесь не работают.
Новый способ стилизации отступов в CSS

Попрощайтесь с хаками в виде бордеров и псевдоэлементов и поздоровайтесь с CSS gap decorations.
Команда разработчиков Microsoft Edge рада сообщить, что CSS gap decorations - новый способ стилизации отступов между элементами flex, grid и многоколоночных макетах - теперь доступны для пробного использования разработчиками в Chrome и Edge 139!
Попробуйте его и поделитесь своими отзывами, чтобы помочь сформировать будущее этого API.
Монополия на рекламу под видом приватности или как Google Privacy Sandbox способствует еще более агрессивной слежке

Реклама является основой монетизации цифрового контента в Интернете. Однако, с целью подбора более релевантной рекламы рекламные сети вынуждены собирать о пользователях как можно больше информации, и это тесно сопряжено с нарушением приватности. Все становится еще интереснее, когда крупнейшие представители рекламного бизнеса начинают продвигать идею конфиденциальности.
В статье повествуется интригующая история о том, как Alphabet (Google), владеющая одной из крупнейших рекламных сетей AdSense, самым популярным браузером Chrome и огромным влиянием на рынок мобильных устройств, попыталась бросить вызов самой себе, одним глазом подглядывая за пользователем, а другим надзирая, чтобы не подглядывал никто другой.
Данный материал подойдет тем, кто работает в сфере цифровой рекламы или вебе, тем, кто хочет разобраться, как работает современная реклама в Интернете, тем, кто борется за анонимность в сети, и тем, кто любит холивары, какие браузеры безопаснее и лучше. Автор старался не затрагивать сложные технические аспекты с целью адаптировать материал для новичков.
Что происходит с вашим JavaScript-кодом внутри V8. Часть 1

В этой серии статей мы пройдемся по каждому этапу работы V8: лексическому и синтаксическому анализу, построению AST, интерпретации и оптимизациям. Затронем Ignition, Sparkplug, Maglev и Turbofan; разберемся с hidden classes, байт-кодом, и много чем еще. Углубимся во все этапы достаточно, чтобы понимать, за что отвечает каждый из них.
В этой части посмотрим на лексический и синтаксический анализ.
Google Project Management: Professional Certificate, все самое главное из курса для начинающих, часть 5
Недавно я завершила обучение на курсе от Google по программе Управление проектами Поэтому я решила подготовить цикл из шести статей, в которых постараюсь передать ключевые идеи курса для русскоязычной аудитории.
Курс состоит из шести разделов, и каждая статья будет охватывать один раздел. Вот их список:
Google Project Management: Professional Certificate, все самое главное из курса для начинающих

Недавно я завершила обучение на курсе от Google по программе «Продакт-менеджмент». Поэтому я решила подготовить цикл из шести статей, в которых постараюсь передать ключевые идеи курса для русскоязычной аудитории.
Курс состоит из шести разделов, и каждая статья будет охватывать один раздел. Вот их список:
Что можно делать в Google AI Studio для начинающих, краткий обзор

Краткий обзор на последние обновления Google ai studio.
Google AI Studio - это не просто песочница для ИИ, а полноценная среда для разработки прототипов, интеграции генеративного ИИ в бизнес-процессы, учебных целей и исследований. С учетом растущей популярности моделей Gemini и глубокой интеграции с Google Cloud, AI Studio становится ключевым инструментом для всех.
Как я разработал расширение для браузера за 3 дня — и получил первого платного пользователя уже на следующий день
Около месяца назад я принял решение, которое теперь считаю абсолютно правильным — я начал разрабатывать расширение для браузера.
Но самое удивительное произошло уже на второй день после публикации расширения в Chrome Web Store — я получил первую платную подписку.
Я был одновременно в восторге и немного взволнован. Восторг — потому что кто-то действительно готов платить за мой продукт. Волнение — потому что я не был уверен, как справлюсь с возможным ростом пользователей.
С момента появления идеи до выпуска первой рабочей версии прошло всего 3 дня. Сейчас, оглядываясь назад, я понимаю: я получил гораздо больше, чем потратил.
Как мы перевели аналитику внутренних сервисов Авито на собственное решение

Привет всем! Меня зовут Антон Галич, я фронтенд-инженер в департаменте разработки Analytics Platform в Авито. В этой статье я рассказываю историю о том, как мы перевели аналитику для внутренних сервисов компании на нашу собственную платформу, отказавшись от стороннего решения Amplitude.
Честная цена за кг/литр

Всем привет! Меня зовут Паша и возможно вы уже пользуетесь моим расширением Ave blacklist для блокировки продавцов спамеров на авито. Но сегодня не об этом.
Больше года назад Кабинет министров не поддержал законопроект с ценой за килограмм или литр, новость была на Пикабу в том числе
Что ж, Кабинет министров не поддержал, а я поддерживаю двумя руками!
И написал расширение для браузеров для расчета цена за единицу измерения на сайтах доставок еды - заКило (chrome, firefox)
Мог бы научить и в офлайн магазинах цену за единицу измерения считать, но кто бы меня спрашивал :D
От клика до железа: хроника одного запроса. Часть 1

Увлекались ли вы когда-нибудь задачей так сильно, что полностью выпадали из жизни? Я — да. Писал код, разбирался с нюансами, тестировал, переделывал, снова тестировал… В какой-то момент мой друг, давно не слышавший обо мне, решил узнать, куда я пропал. Мы созвонились, и я рассказал, чем занимаюсь. Он послушал, усмехнулся: «Как же хорошо, что я выбрал бэкенд-разработку».
На самом деле ничего сверхъестественного в этой задаче не было. Но и простой её тоже не назовёшь — архитектура сложилась под влиянием множества ограничений: браузер не может напрямую запускать exe-файл, бэкенд не имеет доступа к локальному оборудованию, а взаимодействие между всеми этими частями нужно было выстроить чётко и последовательно.
Всё это заставляет внимательнее смотреть на возможности, которые предоставляет среда браузера. Chrome-расширения работают в строго изолированном контексте, JavaScript не имеет доступа к файловой системе или системным вызовам, и для связи с нативным приложением приходится учитывать ряд особенностей: протокол обмена, формат сообщений, правила безопасности и другие детали, которые легко упустить, если не сталкивался с этим раньше.
В этой статье я расскажу, как построить такую связку с помощью механизма Native Messaging: от интерфейса в браузере до запуска локального exe. Разберём архитектуру, покажу, какие задачи решает этот подход, и напишем рабочий пример — расширение, которое сможет общаться с программой на C.
Так что устраивайтесь поудобнее и давайте разбираться.
Ближайшие события
Топ 3 расширения Chrome для автоматизированного тестирования

Когда речь идет о браузерных расширениях для веб-тестирования, перед тестировщиком открывается огромное количество инструментов. Однако большинство из них (около 90%) предназначены исключительно для ручного тестирования. Лишь небольшая часть расширений помогает автоматизировать тестирование без навыков программирования, и совсем немногие действительно специализируются на поддержке автоматизированных тестов.
В этой статье я собрал лучшие расширения, которые будут полезны разработчикам автотестов для веб-приложений. Здесь не будет инструментов для нагрузочного тестирования, работы с API или узкоспециализированных расширений для конкретных фреймворков. Мы сосредоточимся только на тех, что максимально полезны широкому кругу специалистов по автоматизации тестирования.
ChromeOS или как сделать из вашего ПК подобие планшета с возможность запускать Linux и Adroid софт

Установка Chrome OS на обычный ПК с поддержкой Android Приложений, различия ChromeOS Flex и версии для Chromebook, Сравнение их, подробная установка каждой из них.
Загадочные проблемы браузинга: почему некоторые сайты не грузятся в Chrome?

Меня зовут Эрик, я инженер технической поддержки в компании Shortcut. Недавно я столкнулся с интересным тикетом: пользователи жаловались, что некоторые сайты не открываются в Google Chrome, но при этом прекрасно работают в других браузерах.
Кажется, что если сайт работает в одном браузере, он должен работать и в другом. Но это не всегда так. Иногда Chrome упорно отказывается загружать страницы, которые спокойно открываются в Firefox или Edge. Недавно я столкнулся с таким случаем в работе и хочу рассказать, как я разобралися с проблемой.
Пишем простое расширение для браузера

Всем привет! В этом туториале я хотел бы описать создание расширения для браузера на основе Chromium (Google Chrome, Brave, Яндекс Браузер и др.).
Расширения для браузеров создаются с использованием веб-технологий: HTML, CSS и JavaScript/TypeScript и все. Можно конечно еще использовать либы React, JQuery или фрейворки Vue например, но можно обойтись Vanilla JS.
Инструменты для анализа производительности сайта

В этой статье речь пойдет об инструментах, с помощью которых можно проанализировать качество спроектированного front-end разработчиком сайта. В качестве наглядного материала используется проект, реализованный на базе Next.js 14-й версии с app router.
Popover = hint

Chrome 133 развивает существующую функцию всплывающих подсказок, представляя новый режим: popover="hint". Этот режим, управляемый браузером, позволяет использовать новый контекст наложения, упрощающий создание всплывающих подсказок и подобных эфемерных плавающих элементов. Он снижает трудозатраты разработчиков, сохраняя гибкость дизайна.
Отладка JavaScript в Chrome DevTools для начинающих фронтендеров

Привет, Хабр! Я – Рома, front-end разработчик в компании «АйТи-Баланс». Мне не понаслышке известно, насколько ресурсозатраным (в плане времени и сил) может быть поиск и исправление ошибок в JS. Новичкам этот процесс может показаться неподъёмным камнем, но только до знакомства с отладкой в инструментах разработчика, встроенных в браузер. О ней я и расскажу, причём затрону не console.log, а куда более эффективную альтернативу.
Вклад авторов
alizar 2139.1Mairon 812.0Andrey2008 637.4aleksandrit 513.6marks 444.6tangro 362.0MaratMS 339.0shifttstas 323.0velon 282.0afan 274.0