Inspiration
The mental health crisis is becoming an important topic of conversation across the country on college campuses. At Northwestern, mental health care service is primarily delivered by NU Counseling and Psychological Services (CAPS). However, students have found NU CAPS to be inadequate in providing them with the appropriate service and care. Currently, there is a 2-week wait time to see a therapist, and students are often sent to an outside clinical therapist or the police if they are deemed to be in an unsafe condition. NU Peer support program is another mental health care service at Northwestern. While NU Peer Support is more accessible, it has its downsides. The nature of group setting therapy makes the care less personalized, and it is not accessible for students who wish to remain anonymous.
What it does
NU Peer Chats is our solution by enabling students to speak anonymously to another peer at any time of the day. The “talker” student who is reaching out for help can choose to video chat, voice call, or text with the “listener” student who is there to help them. “Talkers” can sign in to the site at any time of the day to anonymously speak to a “listener”. “Talkers” can choose to talk to any of the “listeners” who are online and available. “Listeners” can sign-up for the shifts throughout the day. There is no stake in being online as “listeners” can do other things while on standby. If a talker joins their video call room, they have 10 seconds to get ready before joining the call. These peer “listeners” are trained with an onboarding process that will teach them how to effectively empathize with the “talkers”. It is important to acknowledge that NU Peer Chat is not a substitution for professional support and therapy. However, NU Peer chat provides an option for peers to receive support. A case study performed by Mental Health America in 2017 showed that “Peer support improves quality of life, increases patient engagement and self-management, and increases whole health.”
How we built it
- Roles were assigned, with Han and James handling frontend, Steve handling backend/hosting, and Justin working on the video streaming and presentations.
- Han, James, and Justin created and updated web pages, uploaded to the git frontend branch. Steve pulled into his backend branch, uploading these webpages onto the server while configuring the domain, dns and hosting of the site.
- Steve set up O-Auth google credentials to allow for usage of google authentication. After setting this up for verification of Northwestern emails, he created the frontend to support login.
- As the frontend neared completion, Justin, James, and Han completed and tested the Video SDK while Steve set up the database and node/express/mongoose server.
- Justin and Han tested the site while Steve polished the frontend and fixed bugs in the backend server.
Challenges we ran into
- Forwarding web traffic to the express server (for database queries) didn’t initially work because the apache and express server ran on different ports, solved with an Nginx reverse proxy
- Setting up DNS for the website, solved with Cloudflare
- Figuring out how to handle database queries from web traffic as there needs to be a backend server to handle these requests, solved with Express.js, Mongoose, Node.js, and Nodemon
- Having multiple users connected required hosting the site on a remote server, used AWS EC2
Accomplishments that we're proud of
- Google authentication: Ensures that only authorized listeners can join; Ensures that only Northwestern students can be talkers
- Video Calling API: With options to just voice call and text; Default option for talker is to have video and mic turned off, and name set as “Anonymous student”; Have options to change name and turn on video/mic
What's next for Northwestern University Peer Chats
Moving forward, we hope to partner with Northwestern University students to become peer listeners. Through collaborations with NU CAPS, the NU Peer Support program, and the Psychology department, we hope to create an onboarding process for students to be trained to become listeners. Overall, we hope to improve the user experiences for both talkers and listeners.
Built With
- amazonec2
- apache
- cloudflare
- css
- express.js
- googleauthentication
- html
- javascript
- mongodbatlas
- mongoose
- node.js
- nodemon
- positivessl
- videosdk



Log in or sign up for Devpost to join the conversation.