This quarter while taking a class called Biosecurity and Bioterrorism Response, I've been exposed to the current reality of a significant lack in protection against dangerous biological agents across the world. While the threat of mass casualties due to biological attacks doesn't seem to be imminent, a goal of detecting infections in societies and protecting/helping citizens is a step in the right direction towards an overall more safe society. In pursuit of trying to develop an application to contribute to solutions to this issue, I decided to formulate a solution incorporating the many useful products and API's demonstrated at TreeHacks. This solution would improve community preparedness if an outbreak were to occur.

What it does

Campus Health serves as a central portal for students to report their recent symptoms, locations and for administrators to track down sources of infections, perform analytics on the safety of the community, see the most commonly affected parts (nose, face, throat, etc...) derived from the symptoms, and be alerted of any outlying threat to then take the best course of action.

Administrators can search reports by name, common symptoms, or common previous locations using elasticsearch, and analyze the most commonly affected part (nose, face, throat, etc...) from the NLP by Google Cloud. Administrators can opt to be alerted if the threshold for sum of a part per person is exceeded. (For example, be notified if more than 15 people report a problem with their throat like (sore throat).)

How I built it

The web application was built using Wix and Wix Code. The frontend was made from the Wix WYSIWYG Designer. Wix Code allowed the possibility of writing frontend and backend javascript while also importing necessary libraries such as elasticsearch, google cloud natural language, and twilio. Google Cloud Platform was used to host a virtual instance which utilized Docker and Docker-Compose to run multiple containers of elasticsearch connected via a private network. Twilio was utilized to send alerts to administrators once the threshold for the number of parts infected was passed (for example when more than 15 people report having a problem with their nose(runny nose, stuffed nose, etc...)). Wix Code Backend Modules were used to connect to these endpoints and seamlessly integrate with the frontend as well.

Challenges I ran into

Figuring it out how Wix Code works including the function events that get triggered on the frontend, creating database collections and datasets connected to forms.

One of the most interesting challenges was implementing elasticsearch into Wix Code instead of the native search methods. I used the database hook functions to add/remove documents from elastic search whenever a form was submitted by a student and a row was added to the collection of responses. The search bar on the admin page can then search the table of responses by their name, symptoms, or recent locations with lenient mistypes instead of three different search bars.

Accomplishments that I'm proud of

I am proud of learning many new technologies and integrating them into one solution.

What I learned

Wix Code Design, Frontend, Backend; Improved by comprehension of Dockerfiles and docker-compose.yml; Google Cloud Natural Language API;

What's next for Campus Health

Campus Health can initially be put into use at university campuses, and if successful, even be expanded to the larger communities such as counties, cities, or states.

Built With

Share this project: