As COVID-19 vaccinations are being administered, we asked the question: How do we know who has been vaccinated so far? Well, patients who’ve received the vaccine get a COVID-19 Vaccination Report Card. However, physical paper is impractical and cumbersome to carry around. On the other hand, I for one never leave my house without my phone.
We concluded the best solution would be to create a secure, cross-platform mobile app that anyone could easily use to verify their vaccinations wherever they go! Welcome to Vaxified!
Vaxified: How does it work?
Vaxified provides a secure way to store patient and vaccination info of each dose, including administered vaccine type (ex: Pfizer or Moderna), vaccination dates, clinical site, and more. Patients can log in to the Patients portal that displays whether they’ve received just the first dose or have completed their second. Medical professionals can log into their own portal where they’re able to update the information from their searchable list of patients. We used blockchain to secure our data, ensuring that the information regarding vaccinations has not been tampered with.
How we built it
We started with brainstorming what the app would look like, coming up with a simple app with two views, one for the patients and one for the doctors. Next, we started developing. Being a team of three, we split off -- one of us worked on the backend while the other two focused on the frontend. Graphics were designed and code was written until the product you see here today was constructed.
Because of the heightened tension around the vaccination effort, security and the validity of the database was of the utmost importance. Using mongoDB for noSQL storage, as well as NodeJS to create our API, we built requests for our database, a blockchain. In order to make the blockchain immutable, we stored the hash of the previous block, securing it with SHA 256 encryption methods. If the data is found to be manipulated, it will fall into a failsafe mode (alerting the team of a data breach), as well as shutting down the database until the issue has been resolved.
A Look Back
What challenges did we face?
Because we split up to work on different things, “checkpoints” were reached at different times. To get around this, placeholder graphics were used and a placeholder database was used. We had also never used MongoDB before, which took a bit of getting used to.
Accomplishments that we're proud of
We made our very first blockchain! After hearing so much about it, blockchain was the perfect way to elevate our app’s security to the next level. After all, ensuring that vaccination reports are legitimate is our top priority. We were also quickly able to create custom production-ready graphics for Vaxified, which was a large leap in efficiency.
As a team we are proud that we were able to completely host the server (on Amazon EC2) as well as the database on Atlus (a MongoDB product), ultimately creating a completely functional and well-designed backend.
What's next for Vaxified?
We would love to partner with a hospital or healthcare provider to increase accessibility to vaccination logs! :)