Inspiration

As biomedical engineering students, we value familiarizing ourselves with issues and inequalities in the healthcare industry and taking iterative approaches to working towards a solution to these issues. An ongoing issue that we have noticed regarding health is the lack of healthcare advice/information that is as applicable to women as it is to men. Clinical trials and medical research often do not distinguish data from male and female participants. As women ourselves, this poses an issue regarding the spread of misinformation and a widespread insecurity/disconnect when it comes to women and their personal health. It can be incredibly frustrating to have specific symptoms related to hormones or menstruation, and be unable to find a clear answer because of the limited amount of research and studies that have been conducted on women specifically. A specific example of this is how many women struggle to receive a diagnosis for endometriosis, a condition that affects women, due to the lack of research and interest.

What it does

Our application, which is tailored towards women, has many different features embedded within the app. The main feature is the AI symptom analyzer, which takes user input regarding specific symptoms that have been presented. The AI has been prompted to return information that is backed up by claims from research that has primarily female-focused data. This facilitates users to find information that can be customized to their personal conditions, as the software keeps a log of the input history and the user’s condition.

How we built it

Frontend: React (HTML) We built the user interface using React, a JavaScript library that makes it easy to create interactive components like buttons, forms, and dynamic content. Rather than setting up a complex development environment with build tools, we loaded React directly from a CDN (Content Delivery Network), meaning we could write all our code in a single HTML file without any installation or compilation steps. This made development faster and the project more accessible. Backend: Python + Flask For the backend, we chose Python with Flask, a lightweight web framework perfect for building APIs quickly. We configured Flask-CORS (Cross-Origin Resource Sharing) to allow our HTML file to communicate with the Python server without browser security restrictions. The Flask backend acts as a secure intermediary that stores our API keys safely (rather than exposing them in the frontend code where anyone could see them), forwards symptom queries to the AI model, receives the AI-generated health information, and sends it back to the frontend as formatted JSON responses. AI Integration: Kimi LLM (Moonshot AI) To power the symptom analysis feature, we integrated the Kimi LLM from Moonshot AI, accessed through Hugging Face's inference API. Our carefully crafted prompts instruct the AI to act as a women's health information assistant, analyze symptoms, and provide responses in a structured format with five consistent sections: possible common causes, self-care suggestions, when to seek medical attention, relevant women's health context, and research sources. We implemented a custom function that parses the AI's output and converts it into properly formatted HTML with indentation and styling, making the information easy to read and visually organized.

Challenges we ran into

One of our biggest challenges was implementing AI into the software and connecting the backend to the frontend. We had to learn how to properly use API keys and create a Flask backend to securely handle them, rather than exposing them in the frontend code. Additionally, we kept running out of API tokens during testing and development, forcing us to be strategic about when we tested the AI functionality.

Another significant challenge was balancing the fact that this service cannot be seen as a replacement for medical advice, it is purely for educational purposes. We had to carefully engineer our AI prompts to always emphasize this is educational information only and include mandatory sections on when to seek professional medical attention. Implementing prominent medical disclaimers without making them feel intrusive or easily ignored was a delicate balance.

We also struggled with formatting the AI responses properly, as the model returned plain text with markdown-style formatting that didn't render well in HTML. This led us to create a custom formatResponse() function to parse and convert the text into properly formatted HTML with bold headers and indented bullet points. Throughout development, we had to constantly consider the ethical responsibility of providing health information while making it abundantly clear this tool is meant to educate and empower users, not diagnose or replace healthcare providers.

Accomplishments that we're proud of

As a team, we are proud of the usability of our project, as well as the overall design. We put a lot of thought into this design, as it is an app that is intended to be used every day. We are familiar with using apps, such as, the apple health app, flo, weight watchers, and other health related apps and are proud to have created an app that encompasses many of the most important aspects of these apps.

What we learned

We learned that women are a group in healthcare that still continues to be underrepresented, even considering the substantial changes that have been made, for example the NIH guidelines from the 1993 Revitalization Act still have not resulted in significant increases in reporting results by sex. This means that for women, it is still difficult to find specific information that takes into account the nuances of the female body. We also learned about the implementation of AI and how that has started to revolutionize the healthcare industry, making resources like FemAware, even more accessible and usable.

What's next for FemAware

The next steps for FemAware are continuing to develop our design into a functional app that embeds the AI directly into the app prototype. With advancements in AI technology, we hope to improve our symptom analyses using photos since it may often be difficult to accurately describe symptoms. This will allow better matches with research and data online as symptoms can present differently for each person. Additional implementations of AI can be used to analyze menstruation cycles to provide more accurate cycle predictions and insights. In terms of accessibility, AI can be used to not only detect speech to text, but output it as well allowing those who are visually impaired to use the symptom feature as well.

The next steps for FemAware are continuing to develop our design into a functional app that embeds the AI directly into the app prototype. With advancements in AI technology, we hope to improve our symptom analyses using photos since it may often be difficult to accurately describe symptoms. This will allow better matches with research and data online as symptoms can present differently for each person. Additional implementations of AI can be used to analyze menstruation cycles to provide more accurate cycle predictions and insights. In terms of accessibility, AI can be used to not only detect speech to text, but output it as well allowing those who are visually impaired to use the symptom feature as well/

Built With

Share this project:

Updates