Descripción del proyecto
TraducidoLa lógica es simple. Un visitante llega a la página, se le ofrece geolocalización o escribe una dirección en el campo de búsqueda — y ve inmediatamente las ubicaciones más cercanas en un mapa en vivo. Cuando los marcadores están cerca uno del otro, deben agruparse en un grupo con un número que se descompone a medida que haces zoom, para que una ciudad densa no se convierta en un montón de pines ilegibles. Un filtro de radio (digamos, 5, 10, 25 km) reduce la selección, y la lista de resultados junto al mapa debe estar sincronizada: hacer clic en una tarjeta resalta el marcador y viceversa. Cada ubicación necesita una tarjeta ordenada con el nombre, dirección completa, horarios, teléfono y un enlace a direcciones en la aplicación de mapas del usuario.
Los datos provendrán de una tabla o un pequeño panel de administración que podemos editar nosotros mismos sin tocar el código, por lo que la fuente de ubicación debe ser configurable, no codificada en archivos. La geocodificación de direcciones se puede hacer por adelantado y almacenar en caché. La capacidad de respuesta, velocidad y accesibilidad son importantes para mí, el comportamiento móvil correcto y un uso razonable de la cuota de API. Leaflet con mosaicos abiertos está bien; si sugieres un stack diferente, explica por qué.
— Bloque de mapa incrustable estilizado para coincidir con el sitio, completamente responsivo
— Búsqueda de direcciones y geolocalización del navegador opcional para centrar
— Filtro de radio y lista de resultados en sincronización bidireccional con marcadores
— Agrupamiento de marcadores con expansión/colapso suave al hacer zoom
— Tarjetas de ubicación: nombre, dirección, horarios, teléfono, enlace de direcciones
— Fuente de ubicación editable (tabla o panel de administración simple) con caché de geocodificación