Об этом проекте
Smokey представляет собой статический однофайловый дашборд для разработчиков, предназначенный для отслеживания состояния репозиториев GitHub. Вы открываете index.html в браузере, вводите имя пользователя или организации GitHub, перечисляете репозитории в формате owner/repo, и страница отображает их текущее состояние в одной сортируемой таблице. Заявленная цель — видеть состояние репозиториев без необходимости постоянных переходов по страницам GitHub.
Что отображает таблица
- Последний пуш для каждого репозитория (по умолчанию первым идет самый старый); любой заголовок столбца (репозиторий, последний пуш, PR, issue) можно нажать для повторной сортировки.
- Версия последнего релиза и дата выпуска, отображаемые под названием репозитория.
- Количество открытых pull request и открытых issue; нажатие на число открывает отфильтрованную страницу GitHub для этого репозитория.
- Бейджи внимания: одна строка для открытых PR и одна для открытых issue, которые появляются только для репозиториев с активностью внешних контрибьюторов; каждый бейдж ведет на отфильтрованный вид GitHub. PR, созданные ботами (например, github-actions[bot]), отфильтровываются автоматически.
Аутентификация
Публичные репозитории загружаются без входа в систему. В панели настроек можно опционально добавить персональный токен доступа GitHub (PAT), чтобы открыть доступ к приватным репозиториям и столбцу статуса CI; токен также обязателен для репозиториев организаций, защищенных SAML SSO, если токен авторизован для этой организации. Поскольку неавторизованный доступ к API ограничен 60 запросами в час, а каждый репозиторий требует четырех запросов, токен становится необходимым при мониторинге примерно пятнадцати публичных репозиториев; авторизованный токен увеличивает лимит до 5 000 запросов в час. В README указано, что токен хранится только в localStorage браузера и отправляется только на api.github.com. Описаны как классические токены (scope repo), так и fine-grained токены (Contents: Read, Metadata: Read, Actions: Read для статуса CI).
График трафика
Вместо API живого трафика GitHub дашборд строит график области с полной историей трафика, используя ежедневные снимки, хранящиеся в ветке traffic-log и накапливаемые отдельным еженедельным рабочим процессом GitHub Actions (log-traffic.yml). График использует логарифмическую ось времени, которая расширяет последние дни, и квадратный корень для шкалы значений. Этот вид не требует токена. Если ветка или записанные строки еще не существуют, график сообщает об отсутствии истории трафика.
Хостинг и настройка
Этап сборки, установка зависимостей и сервер не требуются. Доступна версия на GitHub Pages, поэтому дашбордом можно пользоваться без установки чего-либо; в противном случае вы скачиваете index.html и открываете его локально. Чтобы запустить собственный экземпляр, сделайте форк репозитория и включите GitHub Pages из корневой папки основной ветки. Макет описывается как компактный и адаптированный для мобильных устройств, без боковых панелей.
В README также задокументированы случаи устранения неполадок: устаревшая кэшированная страница, вызывающая постоянное сообщение «add a PAT» (решается жесткой перезагрузкой, при этом отмечается, что localStorage очищается в приватных окнах), ошибки 403, вызванные лимитами неавторизованных запросов или отсутствием авторизации SAML, а также пустой график трафика до тех пор, пока рабочий процесс логирования не будет запущен хотя бы один раз после добавления репозиториев.
Лицензия и контакты: Лицензия MIT, авторское право 2025 Scott Kirvan. Приглашаются вклады через issue, форки и pull request; перечисленные каналы связи включают LinkedIn и сервер Discord, а репозиторий содержит CHANGELOG и TODO в папке notes.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.