Sightline
Plataforma de inteligencia de infraestructura geoespacial para descubrir y analizar activos del mundo físico utilizando datos de OpenStreetMap.

Resumen
Sightline permite buscar, monitorear y analizar infraestructura del mundo real, incluyendo:
- Torres de telecomunicaciones y centros de datos
- Plantas de energía, subestaciones y almacenamiento de energía
- Aeropuertos, helipuertos y transporte por cable (teleféricos, funiculares)
- Puertos, bahías, muelles e instalaciones marítimas
- Almacenes e instalaciones industriales
- Oleoductos, refinerías e infraestructura energética
- Instalaciones militares
- Hospitales, prisiones, embajadas e instalaciones gubernamentales
- Cámaras de vigilancia e infraestructura de emergencia
- Centros de transporte (estaciones de tren, estaciones de autobús, paradas de taxi)
Y muchos más tipos de activos en más de 30 categorías con más de 200 tipos de infraestructura buscables.
Arquitectura
flowchart TB
classDef frontend fill:#6366f1,stroke:#4338ca,color:#fff
classDef backend fill:#0ea5e9,stroke:#0284c7,color:#fff
classDef external fill:#f59e0b,stroke:#d97706,color:#fff
subgraph FE["Frontend"]
SearchBar["SearchBar"]
Filters["Filters"]
ResultList["ResultList"]
MapView["MapView — Leaflet.js"]
end
subgraph BE["Backend"]
route["route.ts — Request Handler"]
parser["parser.ts — NLP Engine"]
geo["geo.ts — Geocoding"]
overpass["overpass.ts — OSM Query Builder"]
cache["cache.ts — Cache Layer"]
end
subgraph EX["External APIs"]
Nominatim["Nominatim — Geocoding API"]
OverpassAPI["Overpass API — OSM Data"]
end
SearchBar & Filters & ResultList & MapView -->|"POST /api/search"| route
route -->|"parse query"| parser
route -->|"resolve location"| geo
route -->|"fetch POIs"| overpass
route <-->|"read / write"| cache
geo -->|"geocode"| Nominatim
overpass -->|"QL query"| OverpassAPI
class SearchBar,Filters,ResultList,MapView frontend
class route,parser,geo,overpass,cache backend
class Nominatim,OverpassAPI external
Fuentes de datos
OpenStreetMap
Todos los datos de infraestructura provienen de OpenStreetMap, un proyecto de mapeo colaborativo. Los datos de OSM son generados por la comunidad y pueden contener imprecisiones o lagunas.
Nominatim
La resolución geográfica utiliza el servicio de geocodificación Nominatim para convertir nombres de lugares en cuadros delimitadores y coordenadas.
Overpass API
Las consultas de infraestructura se ejecutan contra la Overpass API, que proporciona acceso de solo lectura a los datos de OSM.
Sintaxis de consulta
Lenguaje natural
telecom towers in karnataka
power plants near mumbai
data centers in california
airports in germany
Consultas estructuradas
type:telecom operator:airtel region:karnataka
type:data_center operator:google
type:substation region:texas
type:airport country:france
Parámetros admitidos
Tipos de activos admitidos
Energía y electricidad
Telecomunicaciones
Petróleo, gas y minería
Agua y servicios públicos
Aviación
Marítimo
Ferrocarril y tránsito
Estructuras
Industrial y comercial
Militar y defensa
Gobierno y seguridad pública
Educación e investigación
Salud
Cultura y entretenimiento
Turismo y ocio
Religioso
Histórico
Agricultura
Servicios
Servicios públicos
Transporte por cable
Infraestructura de emergencia (adicional)
Comercial y minorista
| Tipo | Alias | Descripción |
|---|
supermarket | - | Supermercados |
mall |
Movilidad compartida
| Tipo | Alias | Descripción |
|---|
bicycle_rental | - | Estaciones de bicicletas compartidas |
car_sharing | - | Ubicaciones de coches compartidos |
Ciencia e investigación (adicional)
| Tipo | Alias | Descripción |
|---|
planetarium | - | Planetarios |
laboratory | - | Laboratorios |
Construcción
| Tipo | Alias | Descripción |
|---|
construction_site | - | Obras de construcción |
Producción de alimentos y bebidas
| Tipo | Alias | Descripción |
|---|
winery | - | Bodegas |
bakery | - | Panaderías |
Servicios de alimentación
| Tipo | Alias | Descripción |
|---|
restaurant | - | Restaurantes |
cafe |
Recreación
| Tipo | Alias | Descripción |
|---|
playground | - | Parques infantiles |
park |
Elementos acuáticos
| Tipo | Alias | Descripción |
|---|
fountain | - | Fuentes |
waterfall | - |
Monitoreo y meteorología
| Tipo | Alias | Descripción |
|---|
monitoring_station | - | Estaciones de monitoreo ambiental |
weather_station | - | Estaciones meteorológicas |
Instalaciones comunitarias
| Tipo | Alias | Descripción |
|---|
community_centre | - | Centros comunitarios |
|
Desarrollo
Requisitos previos
Configuración
Abre http://localhost:3000.
Estructura del proyecto
app/
├── page.tsx # Página principal de la aplicación
├── layout.tsx # Diseño raíz
├── globals.css # Estilos globales
└── api/
└── search/
└── route.ts # Endpoint de la API de búsqueda
components/
├── SearchBar.tsx # Entrada de consultas
├── Filters.tsx # Panel lateral de filtros
├── ResultList.tsx # Visualización de resultados
├── MapView.tsx # Mapa Leaflet
├── ShareButton.tsx # Funcionalidad de compartir
└── ui/
└── scroll-area.tsx # Componentes de interfaz
lib/
├── types.ts # Definiciones de tipos
├── parser.ts # Análisis de consultas y NLP
├── geo.ts # Integración con Nominatim
├── overpass.ts # Consultas a la API de Overpass
├── cache.ts # Caché en memoria
├── search-index.ts # Indexación de búsqueda
Despliegue
Vercel
npm install -g vercel
vercel
Variables de entorno
No se requieren variables de entorno. La aplicación utiliza APIs públicas de OpenStreetMap.
Límites de tasa de la API
- Nominatim: 1 solicitud/segundo (impuesto por la política de uso de Nominatim)
- Overpass API: Uso justo, evitar consultas pesadas
Uso responsable
Esta herramienta accede a datos de OpenStreetMap disponibles públicamente. Los usuarios deben:
- Respetar la política de uso de tiles de OpenStreetMap
- Respetar la política de uso de Nominatim
- Respetar la política de uso de Overpass API
- No utilizar esta herramienta para vigilancia ilegal o fines perjudiciales
- Reconocer que los datos de OSM pueden ser incompletos o inexactos
- No realizar consultas automatizadas masivas que sobrecarguen la infraestructura pública
- Para problemas relacionados con el mapa, consulte https://www.openstreetmap.org/fixthemap
La presencia o ausencia de infraestructura en OSM no debe considerarse como autoritativa. Siempre verifique la información crítica a través de fuentes oficiales.
Licencia
MIT