Как сисадмин пытался впечатлить девушку, а в итоге завайбкодил сервис для разминки
Всем привет. Сразу скажу: я не тру-разработчик, который годами писал коммерческий код на продакшн. По профессии я системный администратор. Но сейчас, в эпоху нейросетей, появился классный тренд на вайбкодинг — когда ты пишешь код в обнимку с ИИ. Имея базовый технический багаж, правильно составить промпт и объяснить нейронке архитектуру приложения оказалось очень интересным квестом.
Недавно я познакомился с девушкой. Мы еще официально не встречаемся, но общаемся очень плотно. И вот в процессе очередного разговора по душам я спросил у нее: «Слушай, а какого сервиса или приложения тебе прямо не хватает в повседневной жизни?»
Она вздохнула и ответила:
Может быть какие-нибудь мини зарядки для зрения или спины ) а то целый день за компьютером ) а тут открыл программу и потренировался между делами )
И тут меня осенило. Я сам айтишник, сижу за монитором по 8-10 часов в сутки. Мои глаза к вечеру напоминают два помидора, а шея и поясница начинают издавать звуки старого дивана. Идея лежала на поверхности. Ну и, скрывать не буду, во мне тут же проснулся внутренний татарин, который быстро прикинул в уме потенциальную прибыль от контекстной рекламы на полезном трафике 😂
Я сел за комп, открыл ИИ и начал вайбкодить. Задача была сделать максимально легкий сайт без тонны регистраций, смс, подписок и прочего мусора, который бесит в современных приложениях. Только чистая польза. За вечер я собрал сервис, купил домен и выкатил всё это в сеть: отдохни-минуту.рф
Что внутри:
Простые разминки для глаз, шеи и спины прямо между делами.
Мировые практики: в основу заложил общеизвестные методы. Например, знаменитое правило «20-20-20» (каждые 20 минут смотрим 20 секунд вдаль) и пальминг для расслабления глазных мышц.
Добавил блок «Мысль дня» для вдохновения. Моя любимая: «Забота о себе не требует часа — иногда достаточно одной осознанной минуты».
Самое главное для пользователей:
Сервис полностью бесплатный — без регистраций, подтверждений по СМС, подписок и всплывающего мусора. Открыл, кликнул и размялся.
При желании его можно установить как полноценное приложение на телефон или рабочий стол компьютера (проект обернут в PWA).
Как это устроено под капотом (Техническая часть)
Для тех, кому интересен стек, под капотом развернулась архитектура: Vue 3 + TypeScript + Node.js/Express + SQLite.
Я добавил туда несколько интересных фишек:
Фоновый режим: Чтобы таймер не засыпал и не сбрасывался, когда вы сворачиваете вкладку или блокируете экран телефона, я вынес его работу в Web Workers.
Звук без файлов: Сигнал гонга для окончания таймера генерируется прямо в браузере «на лету» через Web Audio API (чистый аудиосинтез, никаких тяжелых MP3-файлов). Инструкции к упражнениям начитываются через встроенный Web Speech API.
Настоящий селф-хостинг и подготовка к «Пикабу-эффекту»
Поскольку админские привычки никуда не деть, к инфраструктуре я подошел аккуратно. Всё это добро поднято прямо на моем домашнем компьютере. Сервер крутится под столом: на входе куплен белый IP, стоит Nginx в роли обратного прокси, который принимает удар трафика, а сам проект развернут на отдельной изолированной виртуалке за NAT внутри локальной сети.
Я понимал, что если пост залетит, домашнее железо может лечь. Поэтому перед публикацией провел реальные нагрузочные тесты и поправил пару критичных багов:
SQLite и блокировки: При одновременной записи логов статистики база данных начинала падать из-за блокировок локов. Накатил PRAGMA busy_timeout = 5000. Теперь запросы просто ждут своей очереди в микросекундах, а не вылетают с ошибкой.
Кэширование Nginx: Всю тяжелую статику (код сайта, иконки) закэшировал агрессивно на 30 дней — Nginx отдает её моментально из оперативной памяти. А вот HTML главной страницы и запросы к бэкенду намеренно не кэшируются, чтобы динамическая «мысль дня» работала корректно.
Лимиты запросов: Чтобы пользователей мобильного интернета (сидящих за одним внешним IP оператора) случайно не забанило, поднял лимиты до 1200 запросов за 15 минут.
Итог тестов: Имитация живого всплеска в 300 одновременных запросов от 250 разных IP прошла на ура — все успешно записались в базу, 0 ошибок.
Девушке проект очень зашел, она теперь кликает его в перерывах между работой. Свою главную задачу я выполнил. Но подумал — почему бы не поделиться этим с вами? Ведь проблема затекших шевелюр и выгорающих глаз у нас у всех общая.
Если кому-то сайт поможет разгрузить спину во время тяжелого рабочего дня — я буду искренне рад.
Еще раз ссылка: отдохни-минуту.рф Буду рад вашему фидбеку и советам в комментариях!
Вдохновлено музой ♥ сделано для людей
























































































