## Inspiration:

seeing and dealing with rude and toxic comments on popular forums like youtube, reddit, and being aware that sometimes it might be you who leaves that rude comment, and you may not even realize it.

## What it does:

This chrome extension warns you and reminds you not to be too heated if it finds that you are in the process of leaving a particularly rude or toxic comment using google's perspective api - an NLP algorithm for analyzing sentiment. It reads the users comment into an editable text box field in real time, and is able to inform them if their comment is above the threshold before it is posted.

## How I built it

* JS, POST requests to Perspective API, Local Node.js instance

## Challenges I ran into

* Found it difficult to figure out how to find when a user is typing a comment - what text fields are activated? When do we collect a users input? Also, sometimes we spent a lot of time on something just to find out that it was made by someone else already.

## Accomplishments that I'm proud of:

Was able to get a working extension running on localhost using js and node.js, none of us had substantial experience in either coming into this hackathon.

## What I learned Learned

a lot about javascript, how to build an extension, how frustrating creating an extension can be, but how fun hackathons are!

## What's next for TypeMeNot2

Improving the graphics - as of right now, we have a full on alert for toxicity above a certain threshold, but we want to make better representation such as a color fader with a multiplier based off of the toxicity score. Example: icon is bright red for extremely offensive comments, and dark blue for non offensive ones.
## Inspiration

Everyone can relate to the scene of staring at messages on your phone and wondering, "Was what I said toxic?", or "Did I seem offensive?". While we originally intended to create an app to help neurodivergent people better understand both others and themselves, we quickly realized that emotional intelligence support is a universally applicable concept.

After some research, we learned that neurodivergent individuals find it most helpful to have plain positive/negative annotations on sentences in a conversation. We also think this format leaves the most room for all users to reflect and interpret based on the context and their experiences. This way, we hope that our app provides both guidance and gentle mentorship for developing the users' social skills. Playing around with Co:here's sentiment classification demo, we immediately saw that it was the perfect tool for implementing our vision.

## What it does

IntelliVerse offers insight into the emotions of whomever you're texting. Users can enter their conversations either manually or by taking a screenshot. Our app automatically extracts the text from the image, allowing fast and easy access. Then, IntelliVerse presents the type of connotation that the messages convey. Currently, it shows either a positive, negative or neutral connotation to the messages. The interface is organized similarly to a texting app, ensuring that the user effortlessly understands the sentiment.

## How we built it

We used a microservice architecture to implement this idea
The technology stack includes React Native, while users' information is stored with MongoDB and queried using GraphQL. Apollo-server and Apollo-client are used to connect both the frontend and the backend.
The sentiment estimates are powered by custom Co:here's finetunes, trained using a public chatbot dataset found on Kaggle.
Text extraction from images is done using npm's text-from-image package.

## Challenges we ran into

We were unfamiliar with many of the APIs and dependencies that we used, and it took a long to time to understand how to get the different components to come together.
When working with images in the backend, we had to do a lot of parsing to convert between image files and strings.
When training the sentiment model, finding a good dataset to represent everyday conversations was difficult. We tried numerous options and eventually settled with a chatbot dataset.

## Accomplishments that we're proud of

We are very proud that we managed to build all the features that we wanted within the 36-hour time frame, given that many of the technologies that we used were completely new to us.

## What we learned

We learned a lot about working with React Native and how to connect it to a MongoDB backend. When assembling everyone's components together, we solved many problems regarding dependency conflicts and converting between data types/structures.

## What's next for IntelliVerse

In the short term, we would like to expand our app's accessibility by adding more interactable interfaces, such as audio inputs. We also believe that the technology of IntelliVerse has far-reaching possibilities in mental health by helping introspect upon their thoughts or supporting clinical diagnoses.
## Inspiration

We got inspired by an article \* from Plan international Canada that opened our eyes on the Cyberbullying problem. This problem continues to be a serious issue affecting our **social life** and the **mental health** of teens, young adults and especially girls. So, we thought it would be a great idea if there was an extension that reminds users to be mindful and reflective when they are about to send an insulting comment/message.

* <https://stories.plancanada.ca/data-reveals-impact-of-cyberbullying-on-girls-lives-in-canada/>

## What it does

Our project"Bully-in-spect" is a google chrome extension that gets what the user is currently typing, analyzes the text, and detects if there is any hate or offensive speech.

* If so, a pop-up box will appear to warn the user to be careful and to take a moment to reflect before sending the message.
* Another feature is, to analyze the web pages and detects any hate and offensive language. Then it would give the result in a pop-up box!

## How we built it/how scalable is it?

We built it with love and programming languages!

* It is easily scalable to different platforms and browsers as we are using **Javascript** with the React Framework which is cross-platform widely used everywhere.
* We used content scripts to trigger page scans for sentiment analysis after each webpage loads.
* We had background scripts to interact with the **Google Cloud Natural Language Processing API** to fetch the sentiment scores for each sentence.
* The popup UI was done with CSS.

## Challenges we ran into

With a new project, new challenges come!
Some of the challenges we encountered during the Hackathon were

* How to create a Google Extension
* Connect Extension with Google Cloud; authenticate
* Accuracy issue with API
* Collection of User's Data
* Handling React Hooks State

## Accomplishments that we're proud of

* I teamed-up with total strange participants and they end up being amazing and creative people!
* I am proud to keep learning about many new things during the Hackathon.
* Able to build a functional extension!

## How We used Google Cloud

* Initially we used AutoML to train the Model of Sentiment ,but we didn't get the needed accuracy.
* Then we used [Google Cloud NLP Sentiment API](https://cloud.google.com/natural-language/docs/sentiment-tutorial) to get the analysis done.
* We used HTTP POST requests to call the NLP API and get our results.

## What we learned

* We learned to create a **Google Chrome Extension**
* We learned about the latest technologies from Daniel and Aniket. Such as: Google Cloud, API, Authentications, and React.
* It was great working with team members from different timezones and trying to create such a project in 24 Hour Time-Limit

## What's next for Bully-in-spect

We would like to go bigger and implement this extension to other larger browser platforms such as safari and firefox and social media platforms (where bullying incidents occur more readily). We would love to create it as an Android-App with extra features:

* Parental restrictions
* Highlights the offensive words
* Show words suggestions for the insulting comments