Inspiration
Inspired by personal experiences with friends struggling with mental health issues, TheraPal is an innovative app that aims to provide much-needed support through meaningful conversations. Recognizing that having someone to talk to can be immensely helpful, the app adopts a style similar to Omegle, allowing users to meet new people. However, TheraPal stands out by focusing conversations around users' shared struggle traits and introducing AI prompt assistance to keep interactions more focused and relevant.
What it does
Therapal users select traits that they struggle with (such as depression, stress, anxiety, etc.) and are then connected to another user with one or more shared traits in a peer to peer chat scenario. In addition to talking to each other, at any time either user can generate an AI response to stimulate the conversation. The AI response will take into account the chat history as well as the shared struggle traits in order to generate a response that meaningfully moves the conversation forward.
How we built it
The frontend of TheraPal was built using JavaScript, React, and Material UI to create a clean and minimalistic user interface. The backend was implemented using Firebase as a Backend-as-a-Service (BaaS) platform as well as a database, and Node.js was utilized to handle OpenAI API requests for AI responses.
Tech Stack
Front End:
- React
- MaterialUI
- Javascript/JSX
Back End:
- Firebase
- Node.js
API:
- OpenAI API
Challenges we ran into
The main challenges we faced were from unfamiliar libraries and uncooperating AI
Unfamiliar libraries and services
Our biggest problem stemmed from using unfamiliar libraries and services. This was our first time using Material UI and our first big project with React, so we had trouble making the front end look right. As both of us were beginners with React, we frequently had to overcome unfamiliar functionalities and refer to documentation. MaterialUI was especially a large shock coming from vanilla CSS. The project consisted of plenty of learning as we went. Firebase was also new, so using it for our backend was a little difficult.
AI
This was our first time prompt engineering in general. We had to try different variations of prompts to stop AI hallucination and it was especially frustrating receiving nonsense AI responses.
Accomplishments that we're proud of
It works!
We are most proud of getting our project to work in the first place. While the project seemed easy at first, it proved to be more challenging than anticipated with the usage of 2 brand new libraries. Our project is the culmination of many hours of grueling work over the course of 2 days, and we are extremely proud of it.
Front End!
We are also proud of creating such a clean front-end design despite our limited knowledge of these libraries. With no experience, we created a user interface that is functional, animated, sleep, and pleasing to the eye. Again, this was especially difficult as it was our first time working with React or MaterialUI.
What we learned
The project proved to be a valuable learning experience for us. We gained proficiency in both front and back end libraries. Additionally, we honed our basic skills in JavaScript and HTML for future projects.
Front End Technologies
This was both of our first times working with MaterialUI and React in a large project, We learned plenty of how components and hooks work, and now understand the basics of both.
Data Storage
It was difficult adjusting to a NoSQL database such as Firestore. We had to adapt and learn how to use collections as well as how to access and change them.
Prompt Engineering
AI is the new future, and we recognized the importance of learning how to exploit it. This project taught us plenty on how to properly engineer prompts to achieve optimal responses from GPT-3
What's next for TheraPal
TheraPal is an app that inherently requires a lot of users to exist, so it is going to take a lot of work for us to get TheraPal off the ground. Our next steps would be to better improve responsiveness on multiple platforms as well as eliminate bugs.
Built With
- chatgpt
- firebase
- javascript
- materialui
- node.js
- react

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