
Introduction
This project was originally created by former TA Alan Yao (now at AirBNB). It is a web mapping application inspired by Alan’s time on the Google Maps team and the OpenStreetMap project, from which the tile images and map feature data was downloaded.
In this project, you’ll build the “smart” pieces of a web-browser based Google Maps clone. This is typical in real world programming, where you don’t have the luxury and freedom that comes with starting from totally blank files. As a result, you’ll need to spend some time getting to know the provided code, so that you can complete the parts that need completing. The map should have these functions:
- Zoom in and zoom out the map.
- Autocomplete the search input. Prefix is the partial query string. The prefix will be a cleaned name for search that is: (1) everything except characters A through Z and spaces removed, and (2) everything is lowercased. The method will return a list containing the full names of all locations whose cleaned names share the cleaned query string prefix, without duplicates.
- Search. The user should also be able to search for places of interest. Implementing this method correctly will allow the web application to draw red dot markers on each of the matching locations.
- Turn-by-turn navigation. As an extra-challanging feature, you can use your A* search route to generate a sequence of navigation instructions that the server will then be able to display when you create a route.
By the end of this project, with some extra work, you can even host your application as a publicly available web app. More details will be provided at the end of this spec.
More details about the project can be found: https://sp19.datastructur.es/materials/proj/proj2c/proj2c#introduction
My Publicly Available Web App on Heroku
http://bearmaps-cs61b-sp19-hedy.herokuapp.com/map.html#lat=37.871826&lon=-122.260086&depth=3