Як я за два вечори створив медичний дашборд для здоров’я Інтернету
Привіт, я Андрій Ткаченко, Engineering Manager в MacPaw. Вже два тижні як я в сабатикалі (це така довга відпустка після
Але сабатикалити нудно, коли світ навколо такий динамічний і буремний. Тож я відкинув ідеї піти в гори чи писати електронну музику, яку ніхто не почує. Натомість вирішив витрачати частину часу на створення проєктів від ідеї до релізу разом зі штучним інтелектом подивитись, наскільки швидко зараз можна пройти весь шлях: ідея → дизайн → код → продакшн.
Момент, який все запустив
Думаю, всі стикались із ситуацією, коли падає якийсь сервіс рівня AWS us-east-1 — і половина інтернету починає поводитись як Ланос, у якого тролить двигун після 300 000 км пробігу в таксі.
Одного вечора, коли впав Anthropic Claude, я задумався: а що, якщо подивитись на Інтернет як на пацієнта в лікарні? Сервіси в ньому — це різні органи (за аналогією з людським тілом), які теж можна моніторити й видавати швидкий вердикт: наскільки стан пацієнта критичний, чи варто випити півтаблетки парацетамолу, чи просто перечекати, поки пройде той даунтайм — як нежить.
Так і народилась ідея InternetVitals.
Це не стартап. Це фан
Чесно — грошей на такому не заробиш це не стартап повноцінний. StatusGator, Downdetector та аналоги вже давно існують, інженери їх знають і, можливо, навіть люблять. Конкурувати з ними сенсу нема.
Тому InternetVitals — це суто фановий проєкт. Концепція: замість сухого списку статусів сервісів — повноцінний «медичний монітор» пацієнта на ім’я Internet. Пульс (BPM), температура (°C), тиск (CDN/DNS навантаження), сатурація SpO2 (рівень резервування інфраструктури) — і один загальний Health Score, який зважено агрегує статус 41 ключового сервісу: Cloudflare, AWS, Azure, GCP, GitHub, Stripe, DNS-провайдери та інші.
А щоб фану було ще більше, я додав другу тему оформлення — Console: чорний фон, зелений монохром, ASCII-прогресбари і навіть живий tail -f /var/log/vitals.log з реальними інцидентами в стилі syslog. Це маленький easter egg спеціально для термінальних естетів.
Технічна частина: все на Cloudflare
Проєкт повністю побудований на інфраструктурі Cloudflare:
- Workers основний рантайм, на TypeScript з Hono.js як легким роутером
- Workers Cron Triggers кожні 5 хвилин паралельно перевіряють всі 41 сервіс
- D1 (SQLite) зберігає історію перевірок і розрахованих vitals
- KV кеш поточного стану для миттєвої віддачі на фронтенд (TTL 10 хв)
Для перевірки самих сервісів я зробив кілька типів «чекерів»: більшість великих гравців використовують стандартний statuspage.io JSON API, тому це уніфікований підхід. Для AWS, Azure, GCP та Apple довелось писати окремі парсери — у них немає єдиного публічного API, тому хто HTML-сторінку парсить, хто RSS-фід.
Формула самого Health Score — це зважена сума: кожен сервіс має вагу залежно від оціночного впливу на глобальний трафік (наприклад, Cloudflare CDN — 16%, AWS — 14%, дрібніші сервіси —
Як проходила розробка з Claude
При роботі над проєктом я майже не заходив у код руками — весь процес зайняв десь 8 годин за два вечори, і виглядав так:
- Ідея і фундамент. Спочатку в чаті з Claude ми проговорили концепцію, обрали домен (internetvitals.com), список ключових сервісів та їхні ваги — намагаючись витратити мінімум часу на ранній стадії.
- PRD.md. Далі сформували повноцінний продуктовий документ- все, що потрібно для Claude Code, щоб реалізувати проєкт без зайвих уточнень.
- Дизайн. Тут на сцену вийшов Claude Design. Десь з четвертої спроби він таки вловив мій вибагливий естетичний смак і зробив той самий «ICU monitor» вигляд, який я мав на увазі.
- Реалізація. Маючи готовий дизайн і PRD, Claude Code зробив основну частину імплементації — від чекерів до cron-логіки і фронтенду. Моя робота звелась здебільшого до рев’ю і то поверхневого та деплою.
Чому це теж відпочинок
Розумію, що багато хто скаже: навіщо в сабатикалі займатись тим самим програмуванням, краще перемкнутись на щось геть не пов’язане з буденною роботою. Але для мене такі експерименти — це і є форма відпочинку. Коли немає дедлайнів, немає команди, яку треба чекати, і можна за вечір пройти весь шлях від жарту в голові до робочого продакшн-сайту — це інший вид енергії, ніж щоденна робота інжинера.
Спробуйте і ви
AI зараз справді демократизував побудову проєктів. Те, на що раніше йшли тижні, тепер займає вечори. Якщо у вас є фанова ідея, яку ви відкладали «бо нема часу» — можливо, часу насправді вистачить більше, ніж здається.
Подивитись на стан здоров’я Інтернету просто зараз можна тут: internetvitals.com
Буду радий фідбеку — і на медичну метафору, і на саму ідею.
2 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарівЧому у дашборді нема DOU?)
Про те що на ДОУ тримается весь інтернет — в інтернеті писати заборонено )
Це ж секретне правило клуба