Inspiration
perennial was born from the quiet crisis of endometriosis, a menstrual condition that notoriously takes a decade and invasive surgery to definitively diagnose. To endure this diagnostic purgatory and build a case to access life-changing treatment, patients are forced to meticulously track their symptoms while facing systematic sexism and bias. However, managing chronic pain is already exhausting, and traditional health trackers only add to the burden. Most apps on the market are sterile and hyper-clinical, focusing so heavily on the negative aspects of illness making users feel like faceless stats rather than people.
While endometriosis was our starting issue, we quickly realized this struggle is more widespread, inspiring us to build an accessible tool for anyone managing chronic, cyclical pain. People navigating these conditions don't need more hospital charts, they need a private and calming sanctuary that validates their experience. perennial is designed to remind users of their deep-rooted resilience, reframing flare-ups as seasons of dormancy to weather through before the next bloom.
What it does
wearos integration: Seamlessly pulls in continuous health data from your smartwatch to automatically detect and log potential pain sessions, reducing the cognitive load on high-pain days.
the bloom scale: We replaced standard, clinical "pain faces" with our custom botanical bloom icons. A severe pain day is visualized as a crying lotus flower. A low pain day is a smiling succulent.
mindful logging: Easily log or edit manual pain sessions and menstrual cycles. Track start and end times, peak pain levels (1-10), specific symptoms (cramping, fatigue, nausea), private journal notes, and menstrual flow.
perennial insights: Your data is synthesized into a holistic "day score." Track your body's unique rhythms through a swipeable weekly strip and an interactive monthly calendar to find patterns in your seasons.
personal adjustments: Our research-backed machine learning algorithm built to quantify your pain gradually personalizes itself to you through clever additions of decision trees to our model.
calming ui/ux: Designed with a deeply organic, earthy color palette (sage greens, warm browns, and creams) and minimalist typewriter typography to reduce sensory overload and anxiety.
secure & private: Built with Firebase Authentication (supporting Email, Google, and Anonymous sign-ins) and Storage to ensure your deeply personal health data remains entirely yours.
How we built it
frontend: Kotlin / Android Studio
wearables: Kotlin -- WearOS & Samsung Health SDK
machine learning: XGBoost, NumPy, Pandas, matplotlib, PyTorch, Jupyter, Scikit-learn, Firebase Functions
backend & auth: Firebase -- Authentication & Storage
Challenges we ran into
data collection: Because our team doesn't have endometriosis, safely capturing representative training data was a hurdle. We overcame this by using a TENS machine to simulate cyclical pain on ourselves (which was painfully realistic!) and cross-referencing our results with reputable medical studies.
late-stage integration: We developed the mobile UI and the WearOS/ML components in silos. Merging them in the final hours of the hackathon caused a stressful bottleneck, which involved a lot of last-minute bug squashing.
Accomplishments that we're proud of
features: Focused on planning out cohesive, robust features, such as offering the option to upload pain sessions through the app, highlighting accessibility and ease-of-access. Another example is how users have the option to journal personal notes that can be reviewed anytime.
machine learning: Successfully trained our custom model to process and interpret localized pain data based on published research papers to high accuracy. Accuracy can be even further improved through continued use of the app, which continuously updates our model as more records are given.
wearos integration: Lets users discreetly measure their pain when necessary on a wearos watch—their recorded pain is then uploaded to the app for users to review.
ui: Representing measurable data recorded by the user into a “day score” in a quantifiable, yet lighthearted way to uplift users.
What we learned
We learned how to bridge the complex gap between hardware sensors and human users. Specifically, we gained hands-on experience in maintaining a cohesive, intuitive UI and user experience across both mobile and wearable devices.
What's next for perennial
launch: Release the Android app on the Google Play Store.
platform expansion: Adapt the app for iOS and other smartwatch ecosystems.
iterate: Actively implement feedback from the chronic pain community.
customize: Build adaptable pipelines so users can fully tailor the app's tracking metrics to their unique bodies and specific chronic conditions.
diversify: Investigate the characteristics of other chronic illness and adapt our focuses accordingly
Built With
- android-studio
- cloud-computing
- firebase
- galaxy-watch
- jupyter
- kotlin
- matplotlib
- numpy
- pandas
- python
- pytorch
- samsung
- samsung-health-sdk
- scikit
- scikit-learn
Log in or sign up for Devpost to join the conversation.