I am creating a simple webmap that should be able to:
- Display external maptiles (any of the following: Cloudmade, Mapquest, Google).
- Overlay additional static layer in Geojson or KML format, that can show a popup box on a mouse-click.
- Use a search box for geocoding that is limited only to towns and cities. And then zoom in to the geocoded location at a specific zoom level (z8-12 in webmap speak).
I'm looking at several webmapping framework like Openlayers, Leaflet, Polymaps. So far, I was able to do 1 and 2.
I'm having difficulty integrating the third feature. There are several geocoding APIs available (OSM's Nominatim, Geonames and Google's geocoder). However, I can't find any that limits geocoding to towns/cities.
A major challenge is to do this purely on the browser/javascript, no server side processing since the webserver is only limited to static htmls.