## 📚🙋‍♂️Domain Name📚🙋‍♂️

**DOMAIN.COM: AUTINJOY-WITH.TECH**

## 💡Inspiration💡

Parents know that travelling can be an eye-opening experience for kids, but they also know that travelling even with one kid can be overwhelming, involving lots of bathroom stops and needing to manage boredom, motion sickness, and more.

When parents have an autistic kid, it means they have to consider additional factors when travelling. Because when places with sensory overload, closed spaces, or constant movement stress out an autistic child, the child can have what's called an "autistic meltdown", which is very difficult to manage temper tantrums.

So what if they had an app that could help them avoid triggering these meltdowns?

## ❓What it does❓

For parents and the caring adults they trust like a babysitter, the app allows them to:

* journal when autistic meltdowns happen and how they manifested
* visualize this data in a structured way to understand when and how meltdowns happen
* find whether businesses and attractions they plan to visit are unexpectedly crowded or have areas to look out for that could trigger meltdowns
* contact destinations like airports, hotels, and museums in advance in case accommodations can be made

For kids, the app helps them:

* communicate their needs; and
* journal their thoughts and feelings

For businesses, the app allows them to:

* alert users when they unexpectedly have large crowds when users search for them
* proactively inform users of areas with potential triggers like sensory overload from loud noises or bright lights; and
* receive feedback anonymously from users when kids have a meltdown and any relevant environmental factor so that they might decide to put a sign up to caution visitors or indicate this info somewhere

## 🏗️How we built it🏗️

We built our app using HTML, CSS, and JavaScript for the dashboard and Figma for the mobile app.

1. We Use HTML/CSS/JS for building the dashboard.
2. We Use Auth0 as the login and Signup page.
3. We Use Twilio for Multi-factor Authentication and Connecting SMS from Doctors or Social Groups.
4. We Use FIGMA for Mobile Application.
5. We use Google Maps for Localization and Addressing Restaurants or Stoppages of the Journey.
6. We use Google Cloud for the deployment of the Dashboard

## 🚧Challenges we ran into🚧

* Managing a team in different time zones
* Limited coding ability on the team

## 🏅🏆ACCOMPLISHMENTS THAT WE ARE PROUD OF🏅🏆

We worked on an idea that has real-world application! We are happy to have devised a solution to a critical problem that affects such a vast number of people with no available methods or resources to assist them. We learned a lot while working on the project not just technically but also in time management. We are proud we could complete the project and deliver a beautiful fully functional Hack this weekend.

## 📚🙋‍♂️What we learned📚🙋‍♂️

We learned so much about HTML and CSS Design while completing Dashboard. Implementing UI/UX to the fullest of our Capabilities using FIGMA to make it look Aesthetic and Attractive for users. We were able to manage the time well and Implement the ideas we had brainstormed. We also learnt the critical use of Backend Services like Twilio and Auth0 for authentication. Google Maps and Google Cloud made the application more userfriendly and helped us learn about deployment. The themes of the website tried to make it as visually attractive as possible for the Autistic Kids to like and Enjoy.

## 💭What's next for Autinjoy💭

1. User testing and feedback by real-time Users
2. Deployment at a large scale for Social Good & Travel ease
3. Auto-generating the travel itinerary using AI & Machine Learning
4. Making a Weekly schedule for Management of Therapy Sessions
## Inspiration

After the political unrest in Catalonia, Spain, where voting for the independence referendum was disrupted by police, we decided that the polling system of today needs a dramatic overhaul. Traditional voting systems are 1) centralized, 2) non-anonymous, and 3) vulnerable to fraud. Blockchain technology, especially Ethereum smart contracts, present the perfect solution to these problems. Thus, we set off on constructing a framework that enables groups to hold open-source, yet perfectly anonymous and secure polling systems.

## What it does

DeVote provides the base code for anyone seeking to host a free, fair, and anonymous vote. Through our simple interface, the complex task of writing a smart contract and interfacing with the Ethereum blockchain can be greatly simplified. Through our framework, anyone can set up an election, defining the candidates running for election and the valid Ethereum addresses that are allowed to vote. This accomplishes a few major tasks. First off, by defining which addresses are allowed to submit votes, we can separate valid voters from invalid voters. Secondly, instead of tying one vote to one name (which poses issues in politically unstable environments), voting is completely anonymous. After an address has voted, its value is discarded, so the the anonymity of the vote sender is preserved. Finally, since all votes are tallied by each node in the blockchain, the vote count is confirmed through consensus. This removes any chance of fraud in the counting of votes (think Florida circa. 2000), and results are immediate and public.

This avoids the pitfalls of traditional voting systems. When an election is controlled by a single polling entity (generally the state), we trust the entity to count the votes, validate who's allowed to vote, and keep the vote of each individual secret. In many cases, this trust does not exist. DeVote is targeted at areas that would benefit greatly from decentralized voting systems, one that is decentralized, open-source, secure, and anonymous.

## How we built it

Our framework can be broken down into two major components: backend, which is served by a Solidity smart contract running the Ethereum Virtual Machine, and frontend, which uses the web3 API to communicate with the blockchain to read and write data.

The backend is ran by the EVM, which means its execution is done over the entire Ethereum blockchain. This accomplishes the goal of decentralization we set forth in our vision. Meanwhile, the frontend loads candidate data and also sends votes to the Ethereum nodes. Since DeVote requires Ether (gas) to process modifications to the data on the blockchain, apps built on DeVote require the use of Ethereum browsers. The simplest choice is MetaMask, a Google Chrome extension that can handle all Ether functions.

The website (temporarily hosted on michaelman.net), is a sample client built with DeVote. We set up an election for the next president of Princeton, and accept votes from a predefined set of addresses.

## Challenges we ran into

The biggest challenge for the team was probably getting accustomed to the technologies we were using. While the team had at least basic knowledge of the functions of blockchain, none of us had ever developed for it before, so learning the tools we were using (Solidity, Truffle, working with smart contracts) was a challenge.

Furthermore, debugging these technologies (specifically with MetaMask, a browser extension that our web app implements) was tedious and seemingly never straightforward, as we still had to access the blockchain to debug.

Finally, for the final step of syncing up with Ethereum to make our website live and fully functional, the task of actually syncing turned out to be a lot more time consuming and buggy than we anticipated.

## Accomplishments that we're proud of

We are proud that we successfully navigated the complex nature of building decentralized applications, and we are very happy to have our smart contract being executed on the Ethereum blockchain.

## What we learned

We learned how to write smart contracts in Solidity and deploy them to the Ethereum blockchain. Furthermore, writing our frontend code helped us better understand how to structure asynchronous API calls and create callback functions to process the data from the EVM.

## What's next for DeVote

As for short term goals, we want to further develop this framework so that it's even more intuitive to use, holds less dependencies, and optimize it further for mobile platforms. In the long term, we aim to implement this technology in large government-sponsored elections, especially in politically unstable areas, in order to meet the initial vision of the project.
## Inspiration

COVID revolutionized the way we communicate and work by normalizing remoteness. **It also created a massive emotional drought -** we weren't made to empathize with each other through screens. As video conferencing turns into the new normal, marketers and managers continue to struggle with remote communication's lack of nuance and engagement, and those with sensory impairments likely have it even worse.

Given our team's experience with AI/ML, we wanted to leverage data to bridge this gap. Beginning with the idea to use computer vision to help sensory impaired users detect emotion, we generalized our use-case to emotional analytics and real-time emotion identification for video conferencing in general.

## What it does

In MVP form, empath.ly is a video conferencing web application with integrated emotional analytics and real-time emotion identification. During a video call, we analyze the emotions of each user sixty times a second through their camera feed.

After the call, a dashboard is available which displays emotional data and data-derived insights such as the most common emotions throughout the call, changes in emotions over time, and notable contrasts or sudden changes in emotion

**Update as of 7.15am: We've also implemented an accessibility feature which colors the screen based on the emotions detected, to aid people with learning disabilities/emotion recognition difficulties.**

**Update as of 7.36am: We've implemented another accessibility feature which uses text-to-speech to report emotions to users with visual impairments.**

## How we built it

Our backend is powered by Tensorflow, Keras and OpenCV. We use an ML model to detect the emotions of each user, sixty times a second. Each detection is stored in an array, and these are collectively stored in an array of arrays to be displayed later on the analytics dashboard. On the frontend, we built the video conferencing app using React and Agora SDK, and imported the ML model using Tensorflow.JS.

## Challenges we ran into

Initially, we attempted to train our own facial recognition model on 10-13k datapoints from Kaggle - the maximum load our laptops could handle. However, the results weren't too accurate, and we ran into issues integrating this with the frontend later on. The model's still available on our repository, and with access to a PC, we're confident we would have been able to use it.

## Accomplishments that we're proud of

We overcame our ML roadblock and managed to produce a fully-functioning, well-designed web app with a solid business case for B2B data analytics and B2C accessibility.

And our two last minute accessibility add-ons!

## What we learned

It's okay - and, in fact, in the spirit of hacking - to innovate and leverage on pre-existing builds. After our initial ML model failed, we found and utilized a pretrained model which proved to be more accurate and effective.

Inspiring users' trust and choosing a target market receptive to AI-based analytics is also important - that's why our go-to-market will focus on tech companies that rely on remote work and are staffed by younger employees.

## What's next for empath.ly

From short-term to long-term stretch goals:

* We want to add on AssemblyAI's NLP model to deliver better insights. For example, the dashboard could highlight times when a certain sentiment in speech triggered a visual emotional reaction from the audience.
* We want to port this to mobile and enable camera feed functionality, so those with visual impairments or other difficulties recognizing emotions can rely on our live detection for in-person interactions.
* We want to apply our project to the metaverse by allowing users' avatars to emote based on emotions detected from the user.