GeoFire

What is GeoFire?

GeoFire
is a set of open-source libraries for JavaScript, Objective-C, and Java that
allow you to store and query a set of items based on their geographic location.
GeoFire uses the Firebase
database for data storage, allowing query results to be updated in realtime as they
change. GeoFire does more than just measure the distance between locations;
it selectively loads only the data near certain locations, keeping your
applications light and responsive, even with extremely large datasets.

About the demo

Firebase provides a Transit Open Data Set
which contains the realtime locations of public transit vehicles in several major US cities, including
San Francisco MUNI. The data set also contains GeoFire data for each vehicle which we used to create this
demo. Drag around the purple circle to the left to see
the vehicles which are currently within its radius. The results update in realtime as you move the circle
and as vehicles travel around the city. GeoFire handles all of the hard work, telling you exactly
when vehicles enter and exit the circle. It also selectively loads only the data geographically close to
the circle, meaning GeoFire data for buses in New York or Chicago are not loaded into memory unnecessarily.

Download GeoFire

GeoFire is ready for your production apps and plays nicely with the full suite of products offered by
Firebase. Read our
blog
post on GeoFire to get started and then head over to
GitHub
to read the full API reference, view example code, and find download instructions for all of the
GeoFire clients.