GeoTools is a library and Web service written in Go that creates a singular interface to geo-location data via the Google Maps/Location APIs.
Geo data comes in many forms:
In order to query or convert between structures, the data must be in a normalized form.
Geoy should transform between:
Point (lat,lng) -> Place, City or Address
Place, City, or Address -> Point (lat, lng)
..and I wonder where point + radius fits in?
Pressly also queries a lot of social data from specifically, Twitter, Instagram and Facebook. Each of these networks return a different geo-type or locality (radius).
Check out the Twitter and Instagram APIs with their sample consoles, and lets make sure for a tweet or a post, we can map the geo-data that they return to the same form we need so we can find all the tweets that match "food" in "Liberty Village" (a place, which is a neighbourhood in Toronto).
Pressly hubs, posts, and users can all be geo-spaced.
For example:
.. all of those are optional, where a hub can have a beacon point with radius 5km(?), or perhaps city / place bound, and the posts made to the hub don't require a geo-point. But, the post would show up if a user in the hub's beacon was exploring the area, or searching for a matching tag in the post.
The point of a hub is to anchor a community and allow the posts or users to be discovered that would like it, but still create connections among the things around us.
-------- -------- -------
| Hub |---------*| Post |*---------| User |
-------- -------- -------