## Inspiration

As avid cyclists who are interested in wearable tech, this idea came naturally to us. After stumbling upon a news article, we were shocked to discover that nearly 8000 canadian cyclists are seriously injured each year. 1 in 3 of all cyclist deaths occur in poor lighting conditions. We knew that we could create a product that could help mitigate the amount of cycling injuries. From there, we thought of Helmetx and many more features that could optimize the cycling experience.

## What it does

Helmetx is a multifunctional cycling helmet with many safety features. The helmet’s main feature is a stunning LCD screen, which allows cyclists to view biking metrics, such as speed and acceleration. Cyclists can cycle through the metrics by pressing the button at the side of the helmet. The helmet uses an accelerometer to measure the acceleration and from there, the speed was able to be derived and displayed. Additionally, if the helmet’s ultrasonic detects an oncoming vehicle, the LCD will display a warning message with the vehicle's proximity to the user. The lights around the helmet will also flash to alert the vehicle. To manually control the lights, cyclists simply have to press one of the side buttons on the helmet. The LCD can also display directions to the cyclist’s location on the screen.

## How we built it

We divided our team into two separate teams: hardware and software. The hardware team was responsible for all electronics related aspects of the project and the software team worked on our code and the Google Maps direction API. On the hardware side, after brainstorming our idea, we did a lot of research into what features this helmet should have and which devices would be best for the task at hand. Then, we got started by testing out different sensors individually and then combined them into our main program. We did a lot of tests along the way and once all our features worked, we assembled the electronics onto the helmet. On the software side, we researched the Google Maps API and how to use it. We wrote code which extracts the directions and then outputs an integer representing the type of turn. Then, the code on the helmet converts the integer back to the appropriate direction and displays it on the LCD screen.

## Challenges we ran into

Building Helmetx came with many challenges, but we were always able to solve them! Our biggest challenge as a group was learning how to use the Raspberry Pi and the Google Maps API, which was new to each member in the group. As such, we had to do an immense amount of research. On the hardware side, we had an issue with the LCD screens. When we first started to prototype with the hardware, we attempted to use 128x128 pixel LCD screens. After researching troubleshooting methods to fix the screens, we swapped to using a 16x2 LCD screen. On the software side, we had many technical issues with using certain APIs. After much trial and error, we switched to using the Google Maps API.

## Accomplishments that we’re proud of

Overall, we are proud of how we were able to take on a project that was out of our comfort zones, face the challenges that we approached, and create a working end product. As a team, we entered the project with many uncertainties but we were able to come out victorious. We are most proud of how well we all worked together and how our skills complemented one another.

## What we learned

Our team learned how to use the Google Maps API to direct the Raspberry Pi. Both of these systems were quite new to us, and required a significant amount of research before we could start playing around with them. At the end, we were able to develop a method which involved extracting directions and outputting them as an integer which represented a specific type of turn. We also learnt how to incorporate different sensors into our main program.

## What’s next

Going forward with this project, we would like to improve on the screen and look into the possibilities of incorporating a transparent display. We definitely want to incorporate additional sensors to provide the cyclists with more metrics and explore the possibility of having an onboard camera to record rides. We would also make use of a 3D printer to print a proper casing for our electronic components. In the future, we will make use of bluetooth or internet connectivity with the phone and Raspberry Pi to have accurate and updated directions based on GPS data.
## Inspiration

Parker was riding his bike down Commonwealth Avenue on his way to work this summer when a car pulled out of nowhere and hit his front tire. Lucky, he wasn't hurt, he saw his life flash before his eyes in that moment and it really left an impression on him. (His bike made it out okay as well, other than a bit of tire misalignment!)

As bikes become more and more ubiquitous as a mode of transportation in big cities with the growth of rental services and bike lanes, bike safety is more prevalent than ever.

## What it does

We designed \_ Bikeable \_ - a Boston directions app for bicyclists that uses machine learning to generate directions for users based on prior bike accidents in police reports. You simply enter your origin and destination, and Bikeable creates a path for you to follow that balances efficiency with safety. While it's comforting to know that you're on a safe path, we also incorporated heat maps, so you can see where the hotspots of bicycle theft and accidents occur, so you can be more well-informed in the future!

## How we built it

Bikeable is built in Google Cloud Platform's App Engine (GAE) and utilizes the best features three mapping apis: Google Maps, Here.com, and Leaflet to deliver directions in one seamless experience. Being build in GAE, Flask served as a solid bridge between a Python backend with machine learning algorithms and a HTML/JS frontend. Domain.com allowed us to get a cool domain name for our site and GCP allowed us to connect many small features quickly as well as host our database.

## Challenges we ran into

We ran into several challenges.

Right off the bat we were incredibly productive, and got a snappy UI up and running immediately through the accessible Google Maps API. We were off to an incredible start, but soon realized that the only effective way to best account for safety while maintaining maximum efficiency in travel time would be by highlighting clusters to steer waypoints away from. We realized that the Google Maps API would not be ideal for the ML in the back-end, simply because our avoidance algorithm did not work well with how the API is set up. We then decided on the HERE Maps API because of its unique ability to avoid areas in the algorithm. Once the front end for HERE Maps was developed, we soon attempted to deploy to Flask, only to find that JQuery somehow hindered our ability to view the physical map on our website. After hours of working through App Engine and Flask, we found a third map API/JS library called Leaflet that had much of the visual features we wanted. We ended up combining the best components of all three APIs to develop Bikeable over the past two days.

The second large challenge we ran into was the Cross-Origin Resource Sharing (CORS) errors that seemed to never end. In the final stretch of the hackathon we were getting ready to link our front and back end with json files, but we kept getting blocked by the CORS errors. After several hours of troubleshooting we realized our mistake of crossing through localhost and public domain, and kept deploying to test rather than running locally through flask.

## Accomplishments that we're proud of

We are incredibly proud of two things in particular.

Primarily, all of us worked on technologies and languages we had never touched before. This was an insanely productive hackathon, in that we honestly got to experience things that we never would have the confidence to even consider if we were not in such an environment. We're proud that we all stepped out of our comfort zone and developed something worthy of a pin on github.

We also were pretty impressed with what we were able to accomplish in the 36 hours. We set up multiple front ends, developed a full ML model complete with incredible data visualizations, and hosted on multiple different services. We also did not all know each other and the team chemistry that we had off the bat was astounding given that fact!

## What we learned

We learned BigQuery, NumPy, Scikit-learn, Google App Engine, Firebase, and Flask.

## What's next for Bikeable

Stay tuned! Or invest in us that works too :)

**Features that are to be implemented shortly and fairly easily given the current framework:**

* User reported incidents - like Waze for safe biking!
* Bike parking recommendations based on theft reports
* Large altitude increase avoidance to balance comfort with safety and efficiency.
### 🌟 Inspiration

We're inspired by the idea that emotions run deeper than a simple 'sad' or 'uplifting.' Our project was born from the realization that personalization is the key to managing emotional states effectively.

### 🤯🔍 What it does?

Our solution is an innovative platform that harnesses the power of AI and emotion recognition to create personalized Spotify playlists. It begins by analyzing a user's emotions, both from facial expressions and text input, to understand their current state of mind. We then use this emotional data, along with the user's music preferences, to curate a Spotify playlist that's tailored to their unique emotional needs.

What sets our solution apart is its ability to go beyond simplistic mood categorizations like 'happy' or 'sad.' We understand that emotions are nuanced, and our deep-thought algorithms ensure that the playlist doesn't worsen the user's emotional state but, rather, optimizes it. This means the music is not just a random collection; it's a therapeutic selection that can help users manage their emotions more effectively.

It's music therapy reimagined for the digital age, offering a new and more profound dimension in emotional support.

### 💡🛠💎 How we built it?

We crafted our project by combining advanced technologies and teamwork. We used Flask, Python, React, and TypeScript for the backend and frontend, alongside the Spotify and OpenAI APIs.

Our biggest challenge was integrating the Spotify API. When we faced issues with an existing wrapper, we created a custom solution to overcome the hurdle.

Throughout the process, our close collaboration allowed us to seamlessly blend emotion recognition, music curation, and user-friendly design, resulting in a platform that enhances emotional well-being through personalized music.

### 🧩🤔💡 Challenges we ran into

🔌 API Integration Complexities: We grappled with integrating and harmonizing multiple APIs.

🎭 Emotion Recognition Precision: Achieving high accuracy in emotion recognition was demanding.

📚 Algorithm Development: Crafting deep-thought algorithms required continuous refinement.

🌐 Cross-Platform Compatibility: Ensuring seamless functionality across devices was a technical challenge.

🔑 Custom Authorization Wrapper: Building a custom solution for Spotify API's authorization proved to be a major hurdle.

### 🏆🥇🎉 Accomplishments that we're proud of

#### Competition Win: 🥇

```
Our victory validates the effectiveness of our innovative project.

```

#### Functional Success: ✔️

```
The platform works seamlessly, delivering on its promise.

```

#### Overcoming Challenges: 🚀

```
Resilience in tackling API complexities and refining algorithms.

```

#### Cross-Platform Success: 🌐

```
Ensured a consistent experience across diverse devices.

```

#### Innovative Solutions: 🚧

```
Developed custom solutions, showcasing adaptability.

```

#### Positive User Impact: 🌟

```
Affirmed our platform's genuine enhancement of emotional well-being.

```

### 🧐📈🔎 What we learned

🛠 Tech Skills: We deepened our technical proficiency.

🤝 Teamwork: Collaboration and communication were key.

🚧 Problem Solving: Challenges pushed us to find innovative solutions.

🌟 User Focus: User feedback guided our development.

🚀 Innovation: We embraced creative thinking.

🌐 Global Impact: Technology can positively impact lives worldwide.

### 🌟👥🚀 What's next for Look 'n Listen

🚀 Scaling Up: Making our platform accessible to more users.

🔄 User Feedback: Continuous improvement based on user input.

🧠 Advanced AI: Integrating more advanced AI for better emotion understanding.

🎵 Enhanced Personalization: Tailoring the music therapy experience even more.

🤝 Partnerships: Collaborating with mental health professionals.

💻 Accessibility: Extending our platform to various devices and platforms.