Inspiration
The inspiration behind our project, Medifind, came from a desire to leverage technology to empower individuals in managing their health and optimizing the healthcare process. With the hackathon prompt being "health," we saw an opportunity to create a tool that could potentially help people identify health issues early, make informed decisions, and save money on medications.
What it does
Medifind simplifies healthcare by leveraging digital tools. It offers instant diagnoses based on symptoms, suggests personalized medicine options, enables easy purchases, and empowers users to track their health history.
How we built it
Our journey began with brainstorming and sketching out the user experience. We decided to name our project "Medifind," which encapsulated the essence of what we aimed to achieve – helping users find potential health issues and suitable medications. Here's how we brought our vision to life:
User Authentication and Sign-Up
We started by setting up user authentication using modern web development tools. We learned to securely handle user data and create a seamless sign-up process.
Symptom Analysis Algorithm
Designing the algorithm to cross reference and evaluate the likely cause of the symptoms was a great practical application of programming we were excited to implement.
Data Storage and Tracking
We integrated mongodb to store user results and tracking information securely. We learned so much about data storage, handling user data, and what CRUD is all about.
Web Scraping
Using BeautifulSoup, we were able to scrape info from a couple of pharmaceutical websites such as the name of the product, the brand name, the price, the link to it, and an image of the product. Afterwards this is written to a json file which next js can read and put on the website.
UI Design
Even though this was the last thing on our mind during the time crunch. We still gave our full attention to this on the last stretch of the hackathon. Blending the themes and UI design principles that best represent our brand, a disruptive modern health application.
Challenges we ran into
Our journey was not without challenges:
- Technical Learning Curve: Navigating through various technologies and frameworks was daunting but immensely rewarding. We gained confidence in our coding skills and learned how to research and troubleshoot effectively.
-Integration of Python with Nextjs: Learning Django on the spot introduced various challenges in seamlessly integrating it with the next js application.
-Debugging and Error Handling: Troubleshooting issues across two distinct tech stacks demanded proficiency in debugging and error tracing for both JavaScript and Python code. Learning to interpret and address error messages from both languages and frameworks forced us to be flexible in our mindset when tackling issues for each framework. Actively testing for and resolving test cases was a frustrating task, but rewarding when the result is a polished product.
Accomplishments that we're proud of
While the majority of this project was challenging, we found that the accomplishment that we are most proud of would be taking an input from nextjs and inputting it into the web scraper python code, then outputting data to nextjs. This was one of the biggest challenges to overcome. As well as that, using nextauth to sign in and save history based on user was not easy. We are very proud of accomplishing this feature as its functionality is important to our website and it was not an easy task to accomplish.
What we learned
As a team of beginners, this hackathon was our first foray in working as a team and producing a finished product. We all had our skills and integrating them was both exciting and challenging. Along all of this, we had to learn on the spot about integrating the backend, frontend, and python scraping all in one web package!
What's next for Medifind
Expanding upon our current data. While our data which links symptoms to common illnesses is sufficient, it could always be better. There are a wide variety of symptoms to choose from so expanding that data to create more diversity in symptoms would be great.
Built With
- beautiful-soup
- django
- javascript
- mongodb
- nextauth
- nextjs
- python
- react
Log in or sign up for Devpost to join the conversation.