I looked at the wide range of apis and tech available and the Here API's stood out, alongside the Google Cloud Platform. After many attempts at different ideas, I landed at this one and I am quite proud of it in the end, as much as it is nowhere near a complete app.
What it does
It starts by getting the users general town/city location, checking it is a valid location, although the API does accept certain countries generically. It then finds the average temperature and current state of weather and displays this at the bottom of the header bar. The main application then has 2 sections. GPS system, and a place search. The GPS takes a start and end point, finding the quickest road route and returns the time and distance. It then asks if the user would like to add a waypoint, which will crate a new set of routes via this waypoint, or just stick with the original start/end. The user then has the option of viewing the route as a set of directions, before being given a chance to view and print as a PDF. The Place search uses the coordinates generated from the initial location input. It takes a search term, like a fast food chain or 'museum', then looks for the most relevant points in the local area, displaying the name and approximate distance. Both options lead back to the homepage so they can utilise each option over and over again until they chose to exit the app.
How we built it
We started by looking at how the API's were queried, and found the both could be returned and parsed into JObjects, so we used the Newtonsoft.Json package to work through these to return the information we needed. Once we had this, integrating it into a console user interface was basic but effective and led to a fairly good, partial-complete application (for some sleep deprived first years)
Challenges we ran into
Mainly it was getting the correct format for the queries and the right indexing for the JObject pods.
Accomplishments that we're proud of
Coming out with a fully utilisable program (as long as your main intent isn't to break/crash it), but it is a good baseline for future improvements.
What we learned
API querying doesnt vary too much between different sources, however the compatibility with certain languages can be more complex than others. Also, not to trust 18-19 year olds to spell correctly at 2am after being awake for 18-19 hours
What's next for ConsoleGPS
There is alot of room for improvement and expansion, especially with the interface. Making a graphical interface to allow more customization of queries, and displaying maps for the route planning. Also, the expanding options of the API's can allow more detailed weather, mapping or even other Google features to be implemented.