Nieren.nl, a platform that aims at improving the quality of life and care of kidney patients.

Organisation
Hoppinger
The case
Category
Zorg
Client
Stichting Nieren.nl
Summary
Nieren.nl is a platform that aims at improving the life and care of kidney patients. On this platform, kidney patients and their loved ones can find reliable information about kidney diseases and treatments, interact with other members and read and create a personal blog. The platform is very secure and stable, and exists of an innovative headless architecture made with Drupal, .NET and React.
Project description
Nierstichting Nederland and the Nierpatiënten Vereniging Nederland both want to improve the quality of life for patients with a kidney disorder. Nierstichting Nederland does this by creating awareness in society about kidney disorders, and by supporting scientific research. The Nierpatiënten Vereniging is committed to kidney patients, defends their interests and finds ways for them to get in touch with each other. These parties have joined forces to create a foundation and an online platform that offers patients and their loved ones reliable information, enables them to connect with others, and to take control and improve their care. The platform and result of their collaboration is called Nieren.nl.

Nieren.nl brings together expert content and user-generated content in such a way that it provides its users in their need for reliable information and interaction with fellow patients. Kidney patients feel at home on Nieren.nl: it’s a safe place where they can control their privacy, can share experiences with one another and make plans to meet in real life. The platform is very intuitive and meets the requirements of the quality mark Drempelvrij.nl, enabling elderly patients to use it, as well as people with impaired vision or other disabilities as a result of their illness.

This platform is an innovative project due to the combination of its architecture, information structure, different content sources, SEO performance, interacting users, design and user experience. Also, the website has to be very secure in order to protect the patient information that is shared on it. Combine that with the objective of creating a platform that truly helps patients with kidney problems and their loved ones, and you are faced with a real challenge. Other challenging objectives were:
- Link all content with Thesaurus Zorg en Welzijn.
- Create a modern architecture with various security levels.
- Create a rich and dynamic interface.
- Create the front end in React with an application layer for business logic and connections to external services.
- The CMS should be headless and made in Drupal for easy content staging.
- Enable users to interact on the platform.
- Apply encryption to store personal data securely.
Most of our objectives have been realized. We will give more in-depth information about this in field 3. Challenges.

Apart from the objectives, we worked with KPI’s (Key Performance Indicators). The two main targets we have established at the start of the project are:
- The platform should get >600.000 visitors in the first year.
- 2.000 members should register the platform in the first year.

These targets have been successfully achieved.
Challenges
A big challenge in this project was creating the architecture for this platform. We’ve created a Drupal CMS with a .NET application and a React application that serves the front end. Also, we had to connect an external thesaurus of more than 40.000 words, ‘Thesaurus Zorg en Welzijn’, to be able to tie relevant content to users and vice versa with specific tags.

We tackled all these challenges by splitting the .NET database in two. The thesaurus was saved in one of them. All the sensitive information, such as patient information, was saved in the other one, which we column level encrypted to ensure its safety. We used Drupal to link the content to the thesaurus in the .NET application so content creators can use it.

A lot of content is put on Nieren.nl. We chose to make the platform in Drupal 8, because it’s great for professional content management. Drupal delivers a good and user friendly CMS that has all the options we need in terms of content management, such as an editorial workflow with monitoring mechanisms for medical information and content with many references to other content.

Also, by creating the CMS with Drupal 8 we got the most out of Drupal in terms of speed. We divided the platform in multiple distinctive components. Each component has a clear goal and can be optimized to reach that goal. The Drupal component in the platform is a lean application that serves as the CMS with a REST API.

Since a kidney disease is a personal and precarious subject, patients’ privacy, and thus the security of this platform is of utmost importance. The advanced architecture of the platform consists of various security levels that separate data. This increases the safety and stability of the platform. To ensure maximum security, an external party has audited it using a PEN test and white hat hacker.

Nieren.nl grows iteratively, so we wanted to go live with a flexible first release. That way, the platform had a high quality from the start, and it was able to optimize the information structure and technical architecture. Also, this enables the platform to develop along with the needs of its users.
Community contributions
Since we made this project in Drupal and our Drupal specialists are very engaged in the community, we knew we wanted to contribute to it by sharing our gained knowledge. We shared information about the platform’s technical architecture and the acquired experience and TypeScript knowledge at talks at our office, at DrupalJam and Drupal TechTalk.

We wrote code that was inspired by this case and all our learnings, and published this code on our GitHub account. Check it out on the following pages: https://github.com/hoppinger/ts_generator and https://github.com/hoppinger/rest_normalizations.
Screenshot
Video