Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

For the best experience please use the latest Chrome, Safari or Firefox browser.

Make maps better, together.

Collaborative mapping the GitHub Way™

A Brief History Of The Internet

  • Everything → HTTP
  • XML → JSON
  • Adobe PDF, Microsoft Word → Markdown
  • ESRI Shapefile, Google KML →
    GeoJSON, TopoJSON

The Lesson

  • :computer: ≠ :globe_with_meridians:
  • :unlock: > :lock:
  • Simple > Complex
  • Pragmatic > Perfect
  • Dumb format, smart tools
  • Easier to upgrade a tool than a standard
  • Experimentation is key

Why GeoJSON?

  • No API to learn
  • No SDK to install
  • No license to :moneybag:
  • Open & Interoperable
  • It’s the Internet

But first, a story

:beers: screenshot

When I first opened a Shapefile

Shapefile screenshot

When I first opened a KML file

KML screenshot

Down the :rabbit: Hole…

KMZ Screenshot

When I First Opened a GeoJSON file

GeoJSON Screenshot

The Process

  1. Commit a .geojson file to GitHub
  2. ??? 
  3. Profit

The Result

What about our License Map?


But will it Scale?

What about Embeds?

<script src=""></script>

GeoJSON on GitHub

  • .geojson, .topojson, .json files
  • Points, lines, and polygons, oh my!
    (the entire GeoJSON spec)
  • Clustering over ~1000 markers
  • Custom markers
  • Identify popups
  • Stupid simple embeds
  • Gists

But wait, there’s more

  • Treat data as code
  • Version control baked in
  • Fork, branch, pull request, issues
  • Open source, collaborative maps

Collaborative Mapping

Pull Request

Have you ever diff’d a map before?


Who made what change, when?

Revision History

What’s the velocity of your data?


 Under The Hood



Why GitHub?

  • Liberating data
  • Democratizing mapping
  • Treat data as code

What's next?

  • Browse DC Maps at
  • Just go make a map, srsly.
  • DC, NY, VA, Philly, San Antonio open data
  • Create, edit, diff
  • Train government
  • Open source data