hilsetapp/samp-pulse
Пульс САМП: живой онлайн 1200+ серверов SA-MP и open.mp. Фильтры, история за сутки, поиск, без регистрации. Live server list and online monitor for SA-MP / open.mp, open data, no login.
README.md
Русский | English | Español | Português
Пульс САМП
Живой онлайн серверов SA-MP и open.mp - в браузере, без лаунчеров и регистраций.
Открыл страницу - сразу видно: сколько людей играет во всём САМП прямо сейчас, где именно (топ серверов), как менялся онлайн за сутки и где сидят русскоязычные игроки. Есть поиск, фильтры по языку и режиму, избранное и кнопка «Играть», которая открывает клиент прямо на сервере.
Живая версия: https://hilsetapp.github.io/samp-pulse/
Что умеет
- Живой онлайн - список серверов тянется прямо из браузера посетителя, всегда свежие цифры
- Топ сейчас - пятёрка самых людных серверов с заполненностью
- График за сутки - общий онлайн и отдельно русскоязычный сегмент
- История по серверам - средний онлайн и пик по часам, неделя назад тоже видна
- Поиск и фильтры - по названию, IP, режиму; язык, РП/ДМ/стант/дрифт, open.mp или SA-MP, только живые, без пароля
- Избранное - звёздочка на сервер, список хранится в браузере
- Ссылка на сервер -
#s=IP:порт, можно кинуть другу в дискорд - Свой IP: кнопка «скопировать» рядом с каждым сервером
- Русский интерфейс, работает на телефоне, тёмная тема как в старом браузере серверов (но по-человечески)
Как это работает
Никакого сервера и базы данных. Всё держится на трёх публичных кусках:
- Живой список -
https://api.open.mp/servers(открытый список серверов open.mp, отдаёт онлайн, режим, язык и версию). Сайт дёргает его прямо из браузера игрока. - История - маленький скрипт
tools/snapshot.pyраз в 15 минут снимает список и складывает историю в веткуdataэтого же репозитория через GitHub Actions. - GitHub Pages - отдаёт сам сайт.
Если API open.mp недоступен, сайт тихо показывает последний снимок и честно об этом пишет.
Гайд для чайников: как поднять своё такое же
-
Форкни репозиторий. Нажми кнопку Fork справа сверху на странице GitHub.
-
Включи GitHub Pages. В своём форке:
Settings→ слеваPages→ в разделе Build and deployment выбери Source: Deploy from a branch, ветку main, папку / (root) →Save. Через пару минут сайт будет доступен по адресуhttps://ТВОЙ_НИК.github.io/samp-pulse/. -
Включи сбор истории. Опять
Settings→ слеваActions→General→ пролистай до Workflow permissions → выбери Read and write permissions →Save. Это нужно, чтобы сборщик мог писать в веткуdata. -
Запусти сборщик в первый раз. Вкладка
Actions→ слева workflow snapshot → кнопкаRun workflow→Run workflow. Через минуту появится веткаdataс первыми файлами. Дальше он будет работать сам по расписанию каждые 15 минут. -
Зайди на свой сайт и убедись, что цифры живые. Всё, готово.
Хочешь погонять локально - нужен только Python:
git clone https://github.com/ТВОЙ_НИК/samp-pulse.git
cd samp-pulse
python3 -m http.server 8000 # и открыть http://localhost:8000
Первый снимок истории руками:
cd tools && python3 snapshot.py # положит файлы в текущую папку
Структура
index.html # страница (шапка, график, фильтры, таблица, карточка сервера)
styles.css # тёмная тема
js/app.js # вся логика: данные, фильтры, графики (чистый SVG, без библиотек)
tools/snapshot.py # снимок списка серверов и история (гоняется из GitHub Actions)
tools/demo_seed.py # демо-история для локального просмотра
.github/workflows/ # расписание: снимок каждые 15 минут + пуша Pages
data/ # ветка с историей (в main её нет)
Данные и приватность
- Ничего не логируем, не собираем и не отправляем на свои серверы: у проекта их просто нет.
- Избранное и прочие настройки хранятся в
localStorageтвоего браузера. - История онлайна - открытые данные, лежат в ветке
dataэтого репозитория, бери и пользуйся. - Проект не связан с open.mp и командой SA-MP. Ссылки на API - публичные.
Лицензия
MIT. Делай что хочешь, только не выдавай за своё авторство кода без упоминания.
game-servergaminggithub-pagesgta-san-andreasjavascriptmonitoringmultiplayerno-loginopen-mpopenmprussiansa-mpsampsamp-serversserver-listserver-monitorvanilla-jswebapp
Esta página se genera con lo que GitHub publica sobre el repositorio. samp.directory no aloja el código. Informar de un problema con esta ficha