Colibri, une application web de santé en Django

- Article in english

Colibri big 1

Depuis plusieurs mois, Naeka développe une application web de santé (healthcare) spécialisée dans la pneumologie.

De son petit nom « Colibri » (oui, comme l'oiseau !), cette application a pour objectif de devenir l'outil professionnel de référence en France sur la maladie la plus courante de la pneumologie (BPCO).

Colibri s'est fixé pour cap de faciliter le travail des médecins en leur apportant des fonctionnalités bénéfiques pour le suivi de leurs patients et en leur proposant une expérience utilisateur inédite.

Dès le départ, le challenge était très simple : « Les pneumologues utiliseront Colibri lors de leurs consultations si cet outil est adapté à leur pratique. C'est parce qu'il facilitera et améliorera la prise en charge des patients que Colibri sera bien reçu dans la communauté pneumologique. »

À nous alors de trouver comment permettre à n'importe quel professionnel de réaliser une consultation en ligne tout lui mettant à disposition l'historique complet du patient, en le guidant et en l'aidant dans cette démarche.

Concrètement, comment ça se passe ?

Après le consentement du patient accordé au médecin (obligation légale), la consultation se déroule directement sur Colibri.

Si le patient n'est pas encore inscrit sur Colibri, une fiche initiale est créée. Elle permet au médecin de renseigner les informations personnelles du patient (nom, prénom, etc...), mais aussi de saisir ses données de consultations qui pourront être ajoutées instantanément. Lors d'une nouvelle consultation, le pneumologue peut retrouver très facilement son patient et compléter sa fiche initiale en créant une fiche de suivi. Celle-ci reprendra les données initiales et permettra de poursuivre la saisie d'informations sur le patient et sa pathologie.

La finalité étant d'apporter au médecin, clairement et simplement, les informations pertinentes afin que chaque consultation se déroule au mieux et dans un constant souci de qualité.

D'intéressantes fonctionnalités sont bien évidemment au rendez-vous, telles que :

  • Le partage de patients au sein d'une équipe de soins. Que ce soit dans un cabinet ou en milieu hospitalier, il est fréquent que le patient soit pris en charge par une équipe et non pas par un pneumologue seul. Il paraît donc évident que tous les membres de l'équipe puissent accéder aux informations du patient de manière exhaustive.
  • Des statistiques en temps réel sur ses propres patients et sur l'ensemble des patients de Colibri
  • Des ordonnances éditées automatiquement selon les besoins du médecin et les caractéristiques du patient
  • Un résumé de consultation qui peut servir de lettre à envoyer aux correspondants médicaux.
  • Le respect simplifié des recommandations nationales et internationales pour la prise en charge de la BPCO, qui évolue de façon constante sur Colibri

Grâce au web, Colibri est disponible à tout moment, quel que soit le lieu et depuis n'importe quel appareil. Il est alors très intéressant de voir apparaître des instruments comme des tablettes lors des consultations. Et c'est là qu'une application 100% web montre tout son potentiel !

Dès le départ nous voulions utiliser des technologies « de pointe ». C'est aussi pour cela que nos clients sont venus à nous : disposer de technologies modernes, fiables et sécurisées.

Il est à noter que les anciens navigateurs ne sont pas pris en charge. Sans cette contrainte, il devient possible de créer des choses très intéressantes.

Nous ne pouvons pas décrire techniquement tout Colibri pour des raisons évidentes de sécurité, mais nous avons utilisé :

  • Python
  • Django (qui l'eût cru !)
  • AngularJS
  • Bootstrap
  • SocketIO
  • Interfaçage avec la base de données médicale Vidal

Un autre point important se trouve dans le fait que toutes les données sont transférées via websockets jusqu'au client (ou via un fallback de socketIO). Ceci permet de ne pas produire de successives connexions en AJAX ; ce qui, sur une application complexe comme Colibri, aurait demandé des centaines de requêtes par utilisateur.

Avec les websockets, la connexion est créée lors de la première connexion puis nous pouvons l'utiliser à tout moment par la suite. Nous retrouvons ainsi simplicité et performance, tout en étant prêts pour l'avenir avec du temps réel, réalisable très facilement.

Pour conclure, puisque tout le monde aime bien les statistiques, Colibri c'est déjà :

  • 500 patients
  • 30 médecins inscrits
  • +10 000 lignes de python
  • ~5 000 lignes de Javascript
  • ~7 000 lignes de templates HTML

Et voici une très courte navigation dans Colibri, en tant que médecin:

Et une vue artistique du travail:

La suite ?

Interfacage avec les appareils de mesure pour éviter la saisie à la main, une extension à d'autres maladies chroniques respiratoires, un partage des patients avec d'autres spécialités médicales (ex: radiologie), un accès direct du patient à son dossier médical... Il y a beaucoup à faire pour faire avancer la médecine sur le web.

Un très grand bravo à toute l'équipe, je pense notamment à William, Baptiste et David pour leur dévouement et leur persévérance.

Merci à Bernard et Michel pour leur confiance.

Le travail continue, beaucoup de défis restent à relever !