title: How can I Implement Yelp's Map Search and Search by zip code or by city name
body: <p>How can I implement yelp like search?</p>
  
  <p>There are 2 types of searches on yelp.</p>
  
  <ol>
  <li><p>Simple search using the zip code, city and state in U.S.</p>
  
  <p>I'm using PostgreSQL and wonder if there is good dataset that I can use that has city, state and zip code. I was hoping to find a good geo shape file and use geoDjango where I can just use, say Store.objects.filter(coordinates__in=cityNameORZipCode).</p>
  
  <p>There seem to be some zip code database that I can use, but I really don't know where I can find a good city, state. The last option is to create my own cityname and state table and link to Stores, but not sure if this is smart thing to do.....hm.</p></li>
  <li><p>Yelp has map search. </p>
  
  <p>If you zoom in or out the google map, it searches local businesses according to the map area you are viewing. Think this is amazing. How can I do this?</p></li>
  </ol>
  
  <p>It's looking dark right now. Please shed me some light.</p>