Coding Diaries — BITS Pilani Postman API Hackathon 1.0
Introduction:
The start to our journey like any other hackathon was identifying the problem. Out of all categories, “Healthcare” was the one that appealed the most to our team. In a world where technology literally fits in the palm of our hands and is getting cheaper and more accessible day by day, the importance and need for a healthy lifestyle is seemingly increasing. This is a widespread problem, not only in India but across the globe. Most people today are involved in a ratrace in this world of ruthless competition where everyone is aiming for a better life. This is where we think the problem lies, everyone wants a better life but no one cares about their lifestyle. Reports clearly indicate a decline in the average life expectancy over the past few years. Diseases like obesity, diabetes and increased blood pressure have experienced an evident increase the past decade. We feel the root cause of this is due to lesser knowledge and awareness among the general public about the role a healthy diet and regular exercise plays in maintaining a comfortable lifestyle. And again, the reason for this is not the willingness to eat healthy but the lack of a complete guide to health fitness. A person who wishes to shift his eating habits towards the healthier side will generally give in because he will eventually run out of appetizing options and this in turn reduces the motivation to continue with the resolution. If you ask a person to choose between taste and nutritive foods he/she will end up choosing taste, and why not? You have one life and one should make the most of it. The problem lies in the fact that people think these are disjoint i.e. a nutritive item cannot be delicious which is clearly a misconception. We aim to provide a single platform that addresses all problems related to food wellness without compromising on taste. We believe that by providing tastier and healthier options people will find it easier to transition into a healthier lifestyle and the initial hurdle would be easily crossed.
The Journey:
The first few initial days were devoted to brainstorming sessions to converge to the problem. The toughest part of our journey was the part when we had to come up with the content that we would provide on the web application. We first made a list of functionalities that we would want:
- Meal planning: The concept of meal planning is that you have a particular cuisine in mind that you would like to savor, but you are unaware of the healthy options that are available. Even if you have a dish in mind, you might not be aware of the nutrients and details such as fat and protein content in it. So, we decided to provide it in an organized and simple manner. Another added functionality is that you can choose your own diet plan like gluten-free/vegan/keto etc.
- Trending News: One would never want to stay away from the current trend of healthier options, so we also provide the user with the latest articles in the domain of food and wellness. One would never go out of his/her way to learn about the recent trends in recipes, cuisines etc, but at the same time, one wouldn’t miss the chance to catch up if everything related to food and health is available all in one place.
- Personal Chef: In times when you cannot decide what to have for a meal, the idea of entering your available ingredients and receiving all possible recipes seemed quite interesting to us.
- Exercise and Articles: Exercise is also an important part of a healthy routine, and we wish to provide a space for all articles on the internet that cover different exercises, meal plans, and diets that will help and motivate readers.
- Healthy food outlets near you: We also thought of providing users with the nearest locations of the restaurants that give healthy and sumptuous meals.
The next step was to look for APIs which can serve the above mentioned requirements. We shortlisted some and finally decided to use the spoonacular API based on the pricing and documentation available for the selected ones. We found spoonacular to be very user friendly and well documented for all food related requirements like meal planning, recipe search etc.
For getting access to the recent news and blogs on health and food we chose the trusted and again well documented Google News API.
With the ease of the Postman application, we were able to get started on testing the APIs right away. It also helped the team in visualizing what happens when an API is used to get a response from a particular server. Postman was found to be a very helpful and user-friendly tool in the process.
Once the APIs were decided upon, the coding phase of the project began. We divided the work amongst ourselves for frontend and backend design. The team was divided into 2 teams of two, one working on the design of the web application and the other working on implementing the server side. Most of our team members were new to the domain of web development and exploring and learning the concepts of web app building was one of our primary reasons for participation. A lot of time was given to learning the basics of full-stack web development like the express.js framework and the node.js runtime environment. Once all members were on the same page with regards to the knowledge, both teams started developing the application with frequent collaboration and brainstorming sessions. The final few days went in linking the frontend and the backend of the application. Once done, a day was devoted to proper testing and debugging of the code. A lot of bugs were fixed in the process. We also made efficient use of git for version control.
All in all, the hackathon was one of the best coding experiences of the team members. We learnt a lot throughout the six days, right from coding practices to intrapersonal skills. The all-nighter on the last night before submission and the frequent tea and vada pav breaks made the process even more fun. Irrespective of what the result is, there is a lot to take away from this experience.
Thank you Postman, for this amazing opportunity.
Signing Off,
The Scarecrows
Team Members: Hrishikesh Kusneniwar, Sushant S, Hardik Shah, Hitarth Kothari