Опис проєкту
ПерекладЛогіка проста. Відвідувач заходить на сторінку, йому пропонується геолокація або він вводить адресу в поле пошуку — і відразу бачить найближчі точки на живій карті. Коли маркери стоять близько, вони повинні збиратися в кластер з числом, який розпадається при наближенні, щоб щільне місто не перетворювалося в купу нечитаних булавок. Фільтр за радіусом (наприклад, 5, 10, 25 км) звужує вибірку, а список результатів поряд з картою повинен бути синхронізований: клік по карточці підсвічує маркер і навпаки. Для кожної точки потрібна акуратна карточка з назвою, повною адресою, годинами роботи, телефоном і посиланням на побудову маршруту в карті користувача.
Дані надходитимуть з таблиці або невеликої адмін-панелі, яку ми зможемо змінювати самі без втручання в код, тому джерело точок повинно бути налаштовуваним, а не вбудованим у файли. Геокодування адрес можна робити заздалегідь і кешувати. Для мене важливі чуйність, швидкість та доступність, коректна робота на телефонах та розумні видатки квот API. Leaflet з відкритими тайлами цілком влаштує; якщо запропонуєте інший стек — поясніть чому.
— Вбудовуваний блок карти у стилі сайту, повністю адаптивний
— Пошук за адресою та опціональна геолокація браузера для центрування
— Фільтр за радіусом та список результатів у двосторонній синхронізації з маркерами
— Кластеризація маркерів з плавним розкриттям та схлопуванням при зуми
— Карточки точок: назва, адреса, години, телефон, посилання на маршрут
— Редагована джерела точок (таблиця або проста админка) з кешем геокодування