A room monitor for hospice and long term care: it diarizes who is speaking, scores every sentence for sentiment, and gives families a dashboard where flagged moments are attributed to a named caregiver. Won two tracks at SteelHacks XII.
ElderGuardian is a discreet device for the room for hospice and retirement settings. It listens continuously, separates the voices it hears, and gives a resident's family a dashboard where concerning moments are transcribed, timestamped, and attributed to a specific person. The premise is that elder mistreatment is rarely a single dramatic event: it is a pattern that nobody outside the room is in a position to notice.
It was built over a weekend at SteelHacks XII with Nate Kupec and Ryan Fusco, and won two tracks: Civics and Accessibility, and Healthcare Optimization.
The pipeline starts with speaker diarization, which turns a raw recording into an SRT transcript where each segment carries a speaker label. A parser maps those labels onto known resident and caregiver profiles and rebuilds the audio as structured documents: a Conversation holding Sentences, each one attributed to a Person by id, with its own start time and duration.
Every sentence is then scored with NLTK's VADER analyzer, which returns negative, neutral, positive, and compound values, and conversations accumulate flags. The design decision that makes the dashboard useful is aggregating those flags per care partner rather than per recording: one sharp exchange means little, but 33 alerts attached to the same nurse across nine conversations is a pattern worth a family's attention.
The backend is Flask over MongoDB, serving a React dashboard: rolling 72 hour totals for flags, conversations, and overall sentiment; a card per care partner showing role, conversation count, and alert count, with a warning banner once alerts accumulate; and a conversation list where each entry carries its timestamp, flag count, and compound score translated into a plain label rather than a number. The team's own next step was moving from processed recordings to a continuous, always on monitoring device.

Flags aggregate to the care partner, not the recording, which is what turns isolated incidents into a visible pattern.