## Inspiration

No matter where our families go, whether it be the supermarket or the next state over, they always insist on taking the most beautiful route. Driving by breathtaking scenery is one of life's finest pleasures, yet it is near impossible to find the prettiest route to take. Google Maps can get you from point A to point B the fastest, but it falls short when asked to give you a scenic route. This inspired us to build Sceniq—an app that will point you towards the most beautiful route for your journey.

## What it does

Sceniq will take in a starting location and a destination, and will return back to you the most scenic route between those two points.

## How we built it

Our algorithm identifies all of the key routes between two points and retrieves image data of those routes through Google Maps. This information is fed into a neural network that was trained on over 6,000 images to distinguish between scenic and non-scenic imagery. Using the network's output, a score is assigned to each route indicating how scenic it is. This data is returned to the user.

## Challenges we ran into

We ran into several challenges. While working on the neural network, Adith struggled with optimizing the prediction speed. After he got around this, he realized that there was a fundamental flaw in how he was labeling the data, which took a while to fix.

Adam had his own set of problems. He had to reverse engineer the Unsplash API because it wasn't well formed. Additionally, he was getting timeout errors because he was making simultaneous requests, which he got around by implementing a randomized incremental back-off algorithm. Finally, he was very proud of the fact that he created a recursive generator algorithm that was able to divide a geographic polyline into n equal parts.

## Accomplishments that we're proud of

We're proud of the project as a whole. Not only did we train, test, and fine-tune a neural network, but we also were able to implement an algorithm that interfaces with Google Maps to get image data for routes.

## What we learned

1) How to break down a problem into smaller chunks that are later combined into a cohesive solution.
2) How to use CNNs to differentiate between various types of images.
3) How to interface with Google's various map/direction APIs.

## What's next for Sceniq

We need a better front-end interface. Additionally, we could also improve our route visualization. These changes would make our program more user-friendly.
## Inspiration

Considering our generation is more affected by the consequences of climate change than any other, our team was extremely motivated to follow the sustainability track. We firmly believe that things cannot carry on as they are now because if they do, we will leave nothing for our future generations. Since methane is emitted during the breakdown of waste, waste creation has a significant impact on climate change. We saw this as a chance to assist not just today but also tomorrow's community. Today's technology has a lot of possibilities. As it affects everyone, whether directly or indirectly, we decided to use technology to help tackle this issue.

## What it does

The user can use RecycleBot to either write in a material or take a picture of an object to find out whether it is recyclable or not. A Google Maps API connection is another feature that shows recycling facilities close to the user's current location.

## How we built it

Initially, we began by watching a ton of YouTube videos that supported our main concept. Afterward, we made the choice to adopt Appery.io as a tool for mobile app development. We were able to create an application that works with both Android and iOS thanks to the use of this platform. This enabled us to expand the audience for our software and increase usability. To complete the effective functioning of our program, we additionally established databases, Google Vision API, and RESTful services.

## Challenges we ran into

The Google Vision API integration was one of our challenges. The intention was to use it to identify objects in a picture taken from the user's photo. We wanted to establish whether or not it was recyclable from the labels that the API would return. It was challenging to receive the right answer from the API request. After extensive investigation and reviewing the instructions, we eventually succeeded in getting it to work, but we still received a blank answer. Perhaps if we had more time, we could resolve this problem.

## Accomplishments that we're proud of

We take pride in our ability to collaborate and enhance our knowledge of mobile development. For several of our team members, this was their first hackathon, and we were pleased of ourselves for making it to Stanford and completing our project. In order to make the most of our limited time here, we also used the chance to attend a ton of workshops.

## What we learned

We discovered new recycling techniques that we were ignorant of during the research and development phase. It revealed to us how ignorant we are of the various ways an object may be recycled and transformed into something new, and of greater worth to the present or other users. We also learned about how technology can best serve humanity when used wisely, and actually enable us to have better lives.

## What's next for RecycleBot

We want to improve the Interface to give it a more polished and coherent appearance. In order to accomplish more functionality, we'd also like to fix a few problems with the API integration. In order to have a more complete list, it would be nice to store recyclable materials in a database. We want to add a payment interface to the app.
## Inspiration

The other day when we were taking the train to get from New Jersey to New York City we started to talk about how much energy we are saving by taking the train rather than driving, and slowly we realized that a lot of people always default to driving as their only mode of transit. We realized that because of this there is a significant amount of CO2 emissions entering our atmosphere. We already have many map apps and websites out there, but none of them take eco-friendliness into account, EcoMaps on the other hand does.

## What it does

EcoMaps allows users to input an origin and destination and then gives them the most eco-friendly way to get from their origin to destination. It uses Google Maps API in order to get the directions for the 4 different ways of travel (walking, biking, public transportation, and driving). From those 4 ways of travel it then chooses what would be the most convenient and most eco friendly way to get from point A to point B. Additionally it tells users how to get to their destination. If the best form of transportation is not driving, EcoMaps tells the user how much carbon emissions they are saving, but if driving is the best form of transportation it will tell them approximately how much carbon emissions they are putting out into our atmosphere. Our website also gives users a random fun fact about going green!

## How we built it

We started this project by importing the Google Maps API into javascript and learning the basics of how the basics worked such as getting a map on screen and going to certain positions. After this, Dan was able to encode the API’s direction function by converting the text strings entered by users into latitude and longitude coordinates through a built-in function. Once the directions started working, Dan built another function which extracted the time it takes to go from one place to another based on all 4 of our different transportation options: walking, biking, driving, and using public transit. Dan then used all of the times and availability of certain methods to determine the optimal method which users should use to help reduce emissions. Obviously, walking or biking is always the optimal option for this, however, the algorithm took into account that many trips are far too long to walk or bike. In other words, it combines both logic and sustainability of our environment. While Dan worked on the backend Rumi created the user interface using Figma and then used HTML and CSS to create a website design based off of the Figma design. Once this was all done, Dan worked on ensuring that the integration of his code and Rumi’s front end display integrated properly.

## Challenges we ran into

One problem we ran into during our project was the fact that Javascript is a single-threaded language. This means that it can only process one thing at a time, which especially came into play when getting data on 4 different trips varying by travel method. This caused the problem of the code skipping certain functions as opposed to waiting and then proceeding. In order to solve this, we learned about the asynchronous option which Javascript allows for in order to await for certain functions to finish before progressing forward in the code. This process of learning included both a quick Stack Overflow question as well as some quick google scans.

Another problem that we faced was dealing with different screen sizes for our website. Throughout our testing, we were solely using devices of the same monitor size, so once we switched to testing on a larger screen all of the proportions were off. At first, we were very confused as to why this was the case, but we soon realized that it was due to our CSS being specific to only our initial screen size. We then had to go through all of our HTML and CSS and adjust the properties so that it was based on percentages of whichever screen size the user had. Although it was a painstaking process, it was worth it in our end product!

## Accomplishments that we're proud of

We are proud of coming up with a website that gives users the most eco-friendly way to travel. This will push individuals to be more conscious of their travel and what form of transportation they end up taking. This is also our second ever hackathon and we are happily surprised by the fact that we were able to make a functioning product in such a short time. EcoMaps also functions in real time meaning that it updates according to variables such as traffic, stations closing, and transit lines closing. This makes EcoMaps more useful in the real world as we all function in real time as well.

## What we learned

Throughout the creation of EcoMaps we learned a host of new skills and information. We learned just how much traveling via car actually pollutes the environment around us, and just how convenient other forms of transportation can be. On the more technical side, we learned how to use Figma to create a website design and then how to create a website with HTML, CSS, and JavaScript based on this framework. We also learned how to implement Google Maps API in our software, and just how useful it can be. Most importantly we learned how to effectively combine our expertise in frontend and backend to create our now functional website, EcoMaps!

## What's next for EcoMaps

In the future we hope to make the app take weather into account and how that may impact the different travel options that are available. Turning EcoMaps into an app that is supported by mobile devices is a major future goal of ours, as most people primarily use their phones to navigate.