Сервис для отслеживания доступности сетевых ресурсов.

Использование
Пользователь создает новый проект, состояние которого будет отслеживаться, указав адрес сетевого ресурса — URL определенной страницы.
Сервис каждую минуту отправляет запрос на этот адрес, изучает полученный ответ (код, размер и время) и записывает результаты в базу данных.
Код ответа необходимо сравнить с 200. Во всех остальных случаях необходимо подготовить отчет-уведомление и отправить его на email или любой endpoint для уведомлений. Например, можно получить веб-хук для отправки сообщений в Telegram от имени @codex_bot.
По размерам ответов можно построить график и обнаружить нестандартное поведение сервера. Например, могли возникнуть проблемы с подключением к базе данных.

Также можно изучать время ответов сервера, как и значения размера страницы-ответа. Если сайт начал беспричинно дольше отвечать, то можно сделать вывод, что что-то не так.
Дополнительно
При желании можно позволить пользователю самому задавать параметры запросов к проектам.
- Выбрать интервал проверки доступности проекта.
- Ожидать иной код ответа (не 200, а 403, например).
- Добавить к запросу определенные заголовки и куки.
- Отправлять не GET, а POST запрос.
Также можно проверять ещё и валидность и срок действия SSL-сертификата и, например, за неделю до окончания его действия, оповестить администратора об этом.
Требования к проекту
- Репозиторий с проектом должен содержать README файл с описанием проекта, инструкцией по работе с ним, документацией по разработке и запуску.
- Старайтесь избегать использования фреймворков.
- UI должен быть максимально простым и интуитивно понятным, минимализм в дизайне.
Во время разработки записывайте в заметку все сложности, с которыми вы столкнулись, и их решения. Не стесняйтесь записывать туда чуть ли не каждый этап разработки. По итогу работы над проектом вы сможете без труда написать статью и поделиться опытом.
Как оформить результат
- Опубликуйте код проекта на GitHub или подобном сервисе.
- Создайте доступную для тестирования демо-версию проекта.