Hoy voy a recopilar 3 herramientas gratis para publicar GeoJSON en la web que no son demasiado conocidas pero que te pueden ahorrar algo de tiempo.
geojson.io: Un editor completo de GeoJSON en la web
geojson.io es una especie de “producto mínimo viable” de la gente de Mapbox (concretamente su creador es Tom McWright). A grandes rasgos lo que permite es:
- Cargar un GeoJSON o CSV
- Editar o crearlo
- Guardar y compartir una visualización a través de un mapa con Leaflet en bl.ocks.org
Además es software libre
¿Cómo publicar un GeoJSON en Github?
Hace unos meses que Github añadió una “feature” interesante. No hay que hacer nada, básicamente Github renderiza cualquier archivo GeoJSON que tengas en un repositorio utilizando (otra vez) Leaflet.
¿Cómo publicar una API de un GeoJSON en Github?
Bien hasta ahora las dos soluciones previas sirven para crear o importar datos geo y tener una visualización en un mapa interactivo en la web.
Hace poco he descubierto otra herramienta: gitspatial.com
Este servicio, te permite conectar con uno de tus repositorios Github que contenga un GeoJSON y automáticamente te proporciona una API para hacer filtros tanto espaciales como alfanuméricos.
Gitspatial gitspatial también es software libre
Un ejemplo completo: Utilizando herramientas gratis para publicar un GeoJSON en la web
Lo primero que vamos a hacer es obtener un GeoJSON, para ello voy a utilizar POIProxy:
curl "https://app.prodevelop.es/poiproxy/browse?service=panoramio&z=0&y=0&x=0" -o test.geojson
Pues bien este archivo, puedo arrastrarlo a geojson.io y utilizando el botón share, obtengo esto:
¿Fácil no?
Para el segundo ejemplo me he creado un repositorio en Github: https://github.com/admin/geojson-playground.git
Y he subido el archivo de la siguiente manera, partiendo de la carpeta donde está el archivo GeoJSON:
git init
git add test.geojson
git commit -m "first commit"
git remote add origin https://github.com/admin/geojson-playground.git
git push -u origin master
Con esto hemos subido el archivo a Github y ahora haciendo clic en el archivo obtenemos una visualización como esta
También podemos incluir el mapa en un iframe así:
La tercera parte sería obtener una API a través de gitspatial, esto lo dejo como ejercicio :P. Aquí puedes encontrar una entrada de blog de Jason Saford y aquí el repo Github con más documentación