Inspiration
In the world of limitless information, people still have a vague awareness of their health progress. Those one-off medical reports we get during check-ups don’t give a full insight of how our bodies evolve over time. To illustrate, Kazakhstan citizens use Damumed that provides a centralized system for electronic prescriptions and medical records. However, Damumed lacks a personalized dashboard that tracks health patterns over time, which makes it hard for people to see how their health changes. Without this long-term perspective, future medical treatments might fall short, offering little in the way of real improvement. That's why we thought of developing a personalised interactive software that monitors the history of person’s health and analyses current health state through not only last medical report, but also dynamics of organism components over the time. Our software could be helpful for people to take charge of their own health and make informed decisions alongside their healthcare providers.
What it does
Our program has two distinctive functions: dashboard and AI analyst. The dashboard is like a personal health command center: it consists of various data of specific health patterns detected from imported medical reports. This feature allows an effective tracking of how organism components evolved over the time. Dashboard also displays a personal information like age, weight, height, blood type and other details that the user provides themselves to give more clear view of health state for AI assistant. Speaking of the AI assistant, in the second feature, user can upload a new medical report, and AI generates summary that explains the dynamics of organism over the time based on the results of not only new medical report, but also previous reports. AI assistant also provides the list of detected health components that can be added to the dashboard, keeping those health data fresh and up-to-date with every new report. Note: current prototype doesn't integrate the full AI feature, focusing on the fake database and AI-generated medical report. The full potential of AI assistant is planned to be realised.
How we built it
We built the website using a combination of HTML, CSS, and JavaScript to create a functional and visually appealing prototype. The foundation began with HTML, where we structured the layout, notably the
element for the navigation bar and the section to house the dashboard and upload interfaces. For styling, CSS played a key role, with the .container class leveraging display: flex to organize the layout, and the .vitals-card class using box-shadow: 0 2px 4px rgba(0,0,0,0.1) to add depth to the cards. To integrate AI capabilities, we leveraged the Ollama API, enabling the AI analyst feature to process uploaded medical reports. As it is not full-developed prototype, the prompt focuses on the before-hand data of hemoglobin and hematocrit levels, ensuring the API returns a summary via a structured request. Example of data: const ctx = document.getElementById('bpChart').getContext('2d');
const bpChart = new Chart(ctx, {
type: 'line',
data: {
labels: ['2019', '2020', '2021', '2022', '2023', '2024', '2025'],
datasets: [
{
label: 'Hemoglobin',
data: [11, 13, 15, 17, 16, 16, 14],
borderColor: '#FF4500',
tension: 0.4,
fill: false
}
]
},
options: {
responsive: true,
scales: {
y: {
min: 0,
max: 20
}
},
plugins: {
legend: {
display: false
}
}
}
});
Challenges we ran into
Building database and writing constructive prompts for Ollama AI to generate accurate responses
Writing constructive prompts for the Ollama AI to generate accurate responses was a complex task for us. While crafting the right instructions for the AI analyst feature(such as the prompt focusing on hemoglobin and hematocrit summaries due to the limits of the prototype) we have to ensure extreme clarity and relevance. We struggled to balance specificity (e.g., limiting the analysis to the current report with _ Please process the following medical report data... _) and flexibility, often refining the prompt to avoid misinterpretations. This process involved testing with sample data, like _ Hemoglobin: 13.5 g/dL and Hematocrit: 40% _ , and adjusting the tone to be supportive yet non-diagnostic, encouraging users to consult healthcare providers. Overcoming these challenges, we learned how significant it is to produce accurate AI prompts.
Accomplishments that we're proud of
At first, we are proud of building accessible UI design, ensuring users can easily navigate and monitor their health data. Then, we integrated AI to our project for the first time, which is significant milestone in our coding experience. Most of all, we’re proud of the innovative idea itself. We are glad to come up with the idea of personalized health tracking tool to bridge the gap in long-term health awareness and present this concept in our prototype to this hackathon.
What we learned
Besides the fact that we mastered web development and learned how to integrate AI to software, we evolved our soft skills during the hackathon: we adapted to limited time and prioritizing, honing our ability to focus on critical features like the dashboard and AI analyst, balancing perfection with deadlines under pressure. This journey not only expanded our technical toolkit but also taught us valuable lessons in teamwork and resource management.
What's next for Hehehealth
Expanding the features of AI assistant: we plan to train AI to analyse more health components from medical reports and generate infographics to the dashboard. In addition, AI assistant is expected to be able to complete complex data analysis of all medical reports imported to database by the user and generate clear summaries of medical state of the user over the time. Also, in order to bridge gaps between patients, families, and healthcare providers, we plan to integrate chatbot or provide opportunity to send AI reports to doctors or relatives through other communication platforms like messengers or emails.
Built With
- css
- html
- java
- javascript
- ollama
- spring
- springboot
Log in or sign up for Devpost to join the conversation.