Я создаю инструменты, которым люди доверяют своё экранное время.
ResistGate и Amethyst опубликованы в Chrome Web Store, и оба расширения хранят всё, что записывают, в вашем браузере. Я сделал оба в одиночку: от первого коммита и проверки в магазине до каждого обновления после.
Недавно

Нужно расширение для Chrome или приложение? Проекты от $2 000, отвечаю в течение 24 часов. Отправить описание проекта
Три проекта и решения, которые за ними стоят
ResistGate
Вы открываете сайт «на секунду» и теряете час. ResistGate просит набрать короткий отрывок текста, прежде чем сайт загрузится, и рефлекс превращается в решение.
- Мой вклад
- Сделал в одиночку: service worker, правила блокировки, задание на набор текста и локальные настройки.
- Самое сложное
- Сохраняю время окончания каждого окна доступа и сверяю с ним будильники Chrome, поэтому блокировка восстанавливается после перезапуска service worker.
12 пользователей в неделю, в основном из Индии, Бразилии и США · оценка 5★ в Chrome Web Store
Amethyst
Восемь часов в браузере, и непонятно, куда они ушли. Amethyst считает только время, которое вы активно проводите на каждом сайте, и хранит всю историю на вашем компьютере.
- Мой вклад
- Сделал в одиночку: учёт активного времени, локальное хранилище данных, панель статистики и экспорт в CSV.
- Самое сложное
- В macOS Chrome может пропустить событие потери фокуса при переключении приложений, поэтому каждое сохранение заново проверяет, какое окно в фокусе, прежде чем записать время.
Учитывает только активное время. Ничего не покидает ваш браузер.
Real-Time Chess
Для команд, которые ищут инженеров по realtime и бэкенду. Два браузера должны согласовать каждый ход, даже если один отстаёт, поэтому сервер проверяет каждый ход перед рассылкой, и доски никогда не расходятся.
- Мой вклад
- Разработал React-клиент, протокол Socket.IO и хранение состояния комнат в PostgreSQL.
- Самое сложное
- Комментарий ИИ запускается только после того, как сервер принял ход, поэтому медленная модель никогда не задерживает игру.
Другие продукты, которыми можно пользоваться уже сейчас
Заметки о том, что я строю и что ломается
- Distribution
ChatGPT Sends ResistGate More Visitors Than Social Media Does
AI assistants sent ResistGate four times more store visitors than social media. My other two extensions got almost none. - Chrome extensions
Chrome Can Miss the Focus-Lost Event on macOS
Chrome can miss the focus-lost event when you switch apps on macOS, so Amethyst asks which window has focus before every save. - Chrome extensions
How ResistGate Keeps Sites Blocked When Chrome Stops Its Service Worker
ResistGate saves when each access window ends and rebuilds its alarms from that, so a stopped service worker can't leave a site open.

