## Inspiration

What if you could automate one of the most creative performances that combine music and spoken word? Everyone's watched those viral videos of insanely talented rappers online but what if you could get that level of skill? Enter **ghostwriter**, freestyling reimagined.

## What it does

**ghostwriter** allows you to skip through pre-selected beats where it will then listen to your bars, suggesting possible rhymes to help you freestyle. With the 'record' option, you can listen back to your freestyles and even upload them to share with your friends and listen to your friend's freestyles.

## How we built it

In order to build **ghostwriter** we used Google Cloud Services for speech-to-text transcription, the Cohere API for rhyming suggestions, Socket.io for reload time communication between frontend and backend, Express.js for backend, and the CockroachDB distributed SQL database to store transcription as well as the audio files. We used React for the fronted and styled with the Material UI library.

## Challenges we ran into

We had some challenges detecting when the end of a bar might be as different rhyming schemes and flows will have varying pauses. Instead, we decided to display rhyming suggestions for each word as the user then has the freedom to determine when they want to end their bar and start another. Another issue we had was figuring out the latency of the API calls to make sure the data was retrieved in time for the user to think of another bar. Finally, we also had some trouble using audio media players to record the user's freestyle along with the background music, however, we were able to find a solution in the end.

## Accomplishments that we're proud of

We are really proud to say that what we created during the past 36 hours is meeting its intended purpose. We were able to put all the components of this project in motion for the software to successfully hear our words and to generate rhyming suggestions in time for the user to think of another line and continue their freestyle. Additionally, using technologies that were new to us and coding away until it reached our goal expanded our technological expertise.

## What we learned

We learned how to use react and move the text around to match our desired styling. Next, we learned how to interact with numerous APIs (including Cohere's) in order to get the data we want to be organized in the way most efficient for us to display to the user. Finally, we learned how to freestyle better a bit ourselves.

## What's next for Ghostwriter

For **ghostwriter**, we aim to have a higher curation for freestyle beats and to build a social community to highlight the most fire freestyles. Our goal is to turn today's rappers into tomorrow's Hip-Hop legends!
## Inspiration

Public speaking is a critical skill in our lives. The ability to communicate effectively and efficiently is a very crucial, yet difficult skill to hone. For a few of us on the team, having grown up competing in public speaking competitions, we understand too well the challenges that individuals looking to improve their public speaking and presentation skills face. Building off of our experience of effective techniques and best practices and through analyzing the speech patterns of very well-known public speakers, we have designed a web app that will target weaker points in your speech and identify your strengths to make us all better and more effective communicators.

## What it does

By analyzing speaking data from many successful public speakers from a variety industries and backgrounds, we have established relatively robust standards for optimal speed, energy levels and pausing frequency during a speech. Taking into consideration the overall tone of the speech, as selected by the user, we are able to tailor our analyses to the user's needs. This simple and easy to use web application will offer users insight into their overall accuracy, enunciation, WPM, pause frequency, energy levels throughout the speech, error frequency per interval and summarize some helpful tips to improve their performance the next time around.

## How we built it

For the backend, we built a centralized RESTful Flask API to fetch all backend data from one endpoint. We used Google Cloud Storage to store files greater than 30 seconds as we found that locally saved audio files could only retain about 20-30 seconds of audio. We also used Google Cloud App Engine to deploy our Flask API as well as Google Cloud Speech To Text to transcribe the audio. Various python libraries were used for the analysis of voice data, and the resulting response returns within 5-10 seconds. The web application user interface was built using React, HTML and CSS and focused on displaying analyses in a clear and concise manner. We had two members of the team in charge of designing and developing the front end and two working on the back end functionality.

## Challenges we ran into

This hackathon, our team wanted to focus on creating a really good user interface to accompany the functionality. In our planning stages, we started looking into way more features than the time frame could accommodate, so a big challenge we faced was firstly, dealing with the time pressure and secondly, having to revisit our ideas many times and changing or removing functionality.

## Accomplishments that we're proud of

Our team is really proud of how well we worked together this hackathon, both in terms of team-wide discussions as well as efficient delegation of tasks for individual work. We leveraged many new technologies and learned so much in the process! Finally, we were able to create a good user interface to use as a platform to deliver our intended functionality.

## What we learned

Following the challenge that we faced during this hackathon, we were able to learn the importance of iteration within the design process and how helpful it is to revisit ideas and questions to see if they are still realistic and/or relevant. We also learned a lot about the great functionality that Google Cloud provides and how to leverage that in order to make our application better.

## What's next for Talko

In the future, we plan on continuing to develop the UI as well as add more functionality such as support for different languages. We are also considering creating a mobile app to make it more accessible to users on their phones.
## Inspiration

Video Games are one of the most immersive forms of art. With Virtual Reality, the escapism gets amplified, so VR is a great tool to deliver a fantasy experience to the player. Thus we decided to simulate the Omni Directional Movement (or ODM) Gear from the immensely popular Japanese Manga and Anime 'Attack on Titan' ('Shingeki no Kyojin').

The ODM Gear has quite exceptional movement mechanism, and it was a challenge implementing the physics behind this technique. We managed to create a demo of the player wearing the shoes of a Scout Regiment cadet whose task is to navigate a breached city using the ODM Gear and defeat the titan by slicing the nape of its neck!

We also added an extra touch to it not just by making the game in VR, but also by adding the Human Touch (quite literally). We used an Arduino Nano-powered glove with which the player can control the movement and fighting. We aimed to deliver the closest experience a player can have becoming a scout and defeating Titans!

## What it does

The ODM Gear in Attack on Titan is a specialized device used by soldiers to navigate and fight against giant humanoid creatures called Titans. It consists of gas-powered thrusters and retractable grappling hooks attached to a harness. By firing the thrusters and deploying the hooks, users can swing through the air with incredible speed and precision, allowing them to effectively engage Titans by targeting their weak spots while avoiding the Titans' deadly attacks. There are two thrusters attached to the left and right waist of the player.

The objective of the Game is simple. Navigate the city under siege using the ODM Gear and cross the Walls to defeat the Titan before it completely breaks down the city wall! The user needs to be agile and think fast so that they can navigate with ease and make it to the wall quickly before the Titan destroys it.

## How we built it

Our game was made in the Unity game engine. We implemented VR by using the Google Cardboard SDK to create a mobile app that is compatible with the Google Cardboard VR headset. The player controls the VR character through an Arduino controller reading button input and accelerometer values to track the orientation of the Arduino. The Arduino Nano comes with integrated motion sensors and Bluetooth which makes it the perfect device for a VR controller. We have modeled some assets ourselves using Solidworks and Blender but most of them have been found on the internet due to the scale of our project. The main feature of our app is the player's movement which was created with lots of calculations including physics

## Challenges we ran into

The most difficult part of the project lay in effectively simulating the Physics of the ODM's grapple and thruster. We had to tweak it a lot to optimize it and implement it. There was also some critical thinking and game design that went into designing the city in a non-linear fashion with its streets and buildings so that the player always feels the need to look around and find the perfect spot to grapple to.

## Accomplishments that we're proud of

We are proud that we made a scalable game that can be played effectively with just a piece of cardboard and an Arduino chip. We had a lot of fun playing the game after it was made, and it was hard to put down. We are glad we could integrate the hardware with the software aspect of this project.

## What we learned

We learned a lot more about VR. For all the team members, it was the first time making a game in VR. This project also made us confident and excited about making more VR Games in the future and engaging with players in new unconventional ways!

## What's next for VR Omni Directional Movement Gear

We have planned the following for the project:

* Combine with VR devices and dual triggers for greater control
* Integration of Haptics so that people with disabilities can also play and enjoy the game
* Bigger Levels simulating the best battles from the anime and manga
* Complex maneuvers to simulate the swordfight
* Multiplayer component involving PvP as well as PvE modes