1. A method for generating location-aware recommendations, the method comprising: receiving information specifying a current location of a user; calculating, on-the-fly, a place graph for the user based on the current location; traversing the place graph, using one or more processors, to identify one or more potential place recommendations within a pre-defined distance of the current location; selecting a local place recommendation for the user from the one or more potential place recommendations; and communicating the local place recommendation to the user.