Back to Blog
Originally published on Medium.Read Original Article
2023-03-24

BreathOfLife: How a Serverless App Built on AWS Helped Meet Critical Covid-19 Needs

BreathOfLife: How a Serverless App Built on AWS Helped Meet Critical Covid-19 Needs Spoiler Alert* : Different kind of article from me ;-)* ...

Share Editorial
BreathOfLife: How a Serverless App Built on AWS Helped Meet Critical Covid-19 Needs

BreathOfLife: How a Serverless App Built on AWS Helped Meet Critical Covid-19 Needs

Spoiler Alert: Different kind of article from me ;-)**

The Covid-19 pandemic changed our lives in many ways and one of the most significant impacts has been in the healthcare domain. Hospitals and medical facilities were overwhelmed by a large number of patients and the scarcity of hospital beds and oxygen machines became a very major issue. There was panic all around.

During this time, we (a group of friends from an IT background) realized that many people were struggling to get access to oxygen machines, which were critical for patients with Covid-19. We knew that we needed to act fast and find a way to help people in need.

As we were from IT backgrounds, we decided to leverage technology to build an application that could help people reserve oxygen machines quickly and efficiently. Our focus was to build an application that could be deployed quickly and was cost-effective. After brainstorming and developing a plan, we named the application “BreathOfLife”

We chose AWS as it offered a serverless architecture that was perfect for our needs. The serverless architecture meant that we did not have to worry about managing servers or scaling the infrastructure. The platform could automatically scale based on the traffic, ensuring that our application remained responsive and fast 24x7.

Journey begins…

  • We started building the React UI (as we were most comfortable with), which we hosted on S3 with CloudFront. The serverless **Lambda **function was used to handle the API requests, while API Gateway was used as the interface between the API and the application. We chose DynamoDB as the database as it is a highly scalable and cost-effective NoSQL database that can handle large volumes of data ( p.s: we didn’t have that much data ;-) ).
  • One of the key features of our application was the ability to upload medical certificates or Doctor’s notes to confirm the need for oxygen machines. We also set up email triggers for the admins to approve or reject the reservations, which helped us to manage the large number of requests we were receiving. Notifications were also sent to the users on approval or rejection and when the machine was due for return. We used **SES **to send emails.
  • Next, we created a subdomain and registered it with Route 53, which allowed us to create a custom URL for the application and make it easily accessible to the public. This helped us to reach more people in need and made the application more user-friendly.
  • Cost-effectiveness was a crucial factor for us as we were building this application in our spare time and with limited resources. So, we took advantage of the AWS free tier, and the pay-per-use pricing model allowed us to keep the costs low. We were able to run the entire application for under 1$ per month (the major being route53 hosted domain cost), thanks to decent low traffic and usage.

The partnership with the NGO group was instrumental in the success of the application. The group arranged/purchased oxygen machines and helped us to reach more people in need and spread the word about the application.

As the pandemic continued, we worked to improve the application based on feedback from users and the NGO group. We added new features and simplified the request process thereby ensuring that the machines were made available quickly.

One of the biggest challenges faced was managing the large number of reservations we were receiving. The traditional approach of using spreadsheets and manual record-keeping was not going to be sustainable, which is why we built BreathOfLife. The application allowed us to manage the reservations efficiently and provide real-time updates to the users.

Simple Architecture (Nothing Fancy)

Image

Sponsored Advertisement