Atruchecks

A medical platform for purchasing kits and storing test results

Industry:
Healthcare
Location:
United Kingdom
Plalform:
Web development
A medical platform for purchasing kits and storing test results
Client's idea

Our client, a manager at a UK GP Clinic, 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. Once a sample is taken, a user will have an enclosed prepaid envelope delivered to an accredited lab for processing. Test results would then be available on a personalized dashboard.

With this in mind, our client built an in-house logistics team behind kit availability, test collection, in-lab processing, and result retrieval. What they lacked was a development team to build a highly secure software where users would choose among test categories, buy kits, view results with doctor’s comments, and monitor their progress against previous tests via a personalized health dashboard. To fulfill the technical side of the idea, they came to Globaldev.

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.

Dedicated engineering team

Project manager
Backend engineer
Frontend engineer
UI/UX designer
Quality assurance specialist

User roles

Atruchecks administrator
An Atruchecks administrator processes orders.
Doctors
Doctors give users recommendations about their results via a secure Doctor’s dashboard.
Lab staff
Lab staff can upload test results in the HL7 format.
Clients
Clients can choose and buy tests on the website and receive information about results in the Client dashboard.
Video preview

Implemented features

Options to collect a sample
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.
Оverall health statistics
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.
Detailed information about tests
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.
Personalized health dashboard
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.
Doctor’s comments
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.
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.