Project Screenshot

Atruchecks

A healthcare platform that allows users to buy medical kits and store their medical test results.

  • Project idea

    Our client, manager at a UK GP Clini, decided to go in a new business direction. He had an idea for a platform where users could purchase medical test kits and have them delivered right to their door with everything needed for the test. With this in mind, he came to Steelkiwi.

  • Business process

    The key task of this project is building and automating the business process whereby a patient buys a medical test kit online, has this kit delivered to their door, takes a sample on their own or with the help of a nurse, and sends the sample to a laboratory. The laboratory then analyzes the sample and loads the results to a secure cloud environment so the patient can see the results in a personalized health dashboard.

    It's also necessary necessary to maintain data integrity and anonymity at all levels, including when Atruchecks staff, doctors, and lab workers process a patient’s personal data.

  • Solution

    We created an ecommerce healthcare website for Atruchecks from scratch. We also developed independent doctor, lab, and patient portals. During development, we followed privacy and security standards. 

    The Atruchecks platform allows patients to learn all necessary information about medical testing kits, buy those kits, store and view test results, and have doctors review these results.

User Roles

icon
Atruchecks administrator

An Atruchecks administrator processes orders.

icon
Doctors

Doctors give users recommendations about their results via a secure Doctor’s dashboard.

icon
Lab staff

Lab staff can upload test results in the HL7 format.

icon
Clients

Clients can choose and buy tests on the website and receive information about results in the Client dashboard.

Results

Duration:
January 2019 – April 2020
Team:
Backend - 2 Frontend - 1 QA - 1 Designers - 2 PM - 1
Developed the backend

One of the most important requirements for the project was to secure personal data. App data is stored on different servers, and each server has its own RDS-encrypted database. Data is exchanged between servers and the database inside a private network. Servers can only be accessed externally through a bastion host and a VPN.
Media data (such as images) is stored separately on Amazon S3 and is available to users through the CloudFront CDN service.

Two-factor authentication (2FA)
To protect the platform against many security threats like credential exploitation, brute-force attacks, and phishing, we used two-factor authentication (email and phone number).
Users can change their phone number only through the platform administrator after confirming their identity.

HL7 format

We followed Health Level 7 (HL7) standards to transfer clinical data. The laboratory uploads a patient’s results to the Atruchecks platform using the HL7 format. Then a doctor receives an anonymous result and comments on it. We decode this data and send the doctor’s notes to the patient. All data is stored on Amazon Web Services (AWS), which are GDPR-compliant. All user data is stored separately and additionally encrypted in AWS RDS.

Integrations

We integrated several services into Atruchecks. For payments, we implemented the Barclays payment gateway and Stripe payment gateway. We also needed to agree on the data exchange protocol with an offline laboratory, which executes tests of provided samples.  
We used Google Maps to help patients find the nearest partner clinic.
We used MailChimp for sending technical and promotional email messages, and for the SMS service we used Twilio.

Developed the frontend

For frontend development, we used React and Redux. We also used TypeScript for interfaces aimed at doctors and labs and Next.js and MobX for the patient portal.

We used only stable and trusted development approaches since the project deals with sensitive medical data.

Since customers will primarily use mobile devices for communication and information, we used adaptive design to make Atruchecks mobile-friendly.

Created the design

All design elements including icons and graphics are custom. For the logo, we used the company’s first letter, A, and a blood drop to show the essence of the product. As for the color scheme, we used a mix of blue and white. We didn’t overload the website with design elements and left plenty of space so the information is easy to read. 

Implemented features

Users can check out different categories of tests and learn detailed information about each test such as ways to collect a sample, biomarkers, and how long it takes to receive the results.  

Users can choose how they want to collect a sample. There are three options:

  • Visit a nearby clinic

  • Request a nurse on demand

  • Collect it on their own

Patients receive their orders with instructions on how to take a sample, everything needed for collecting the sample, and a prepaid envelope to send the sample to an Atruchecks accredited lab.

Once test results are ready, a doctor views them and leaves comments. A patient’s personal information (except gender and age) remains anonymous to the doctor.

Doctor’s comments are displayed in the user’s profile through a report and user-friendly charts, in which abnormal biomarkers are highlighted. 

All results are stored with the test date and status (pending or ready) and can be downloaded as PDF files. 

This feature provides an overview of a patient’s recent tests, outlining biomarkers. Here, patients can access all their test results.

All graphs are divided into categories: cardiovascular, metabolic, vitamins and minerals, liver, kidney, muscle. The more tests, the fuller the picture of a user’s overall health.

Technology Stack

Twilio icon
Twilio
Google Maps icon
Google Maps
Python icon
Python
Django icon
Django
Redux icon
Redux
React icon
React
Amazon AWS icon
Amazon AWS
Stripe icon
Stripe