Case Study

Lixx

Création et lecture d'histoires interactives avec un arbre de choix narratif.

AngularFlaskPython

01 — Le concept

Lixx est une application web conçue pour créer et consommer des histoires interactives, à l’image des célèbres livres “dont vous êtes le héros”.

Ce projet universitaire a été réalisé pour répondre à la demande d’un véritable client étudiant provenant d’un autre campus. L’application repose sur un système de scènes connectées par des embranchements narratifs : chaque choix de l’utilisateur l’oriente vers une nouvelle scène, menant potentiellement à des fins diamétralement opposées.

Illustration du projet
Accueil de la plateforme Lixx invitant l'utilisateur à lancer une histoire

02 — L'expérience de lecture

Côté lecteur, l’interface met en valeur les récits disponibles via une bibliothèque visuelle. Une fois l’histoire lancée, l’utilisateur est plongé dans l’intrigue et face à ses choix.

La lecture en Duo Une fonctionnalité clé du projet est le mode “Duo”. Il permet à deux joueurs distincts (sur deux navigateurs) de lire la même aventure simultanément. Si l’un des joueurs effectue un choix crucial, la décision est appliquée en temps réel à l’écran du second joueur, imposant une synchronisation parfaite entre les clients.

Illustration du projet
Bibliothèque listant les différentes aventures disponibles

03 — L'outil auteur (Éditeur narratif)

Au-delà de la lecture, Lixx est avant tout un outil de création (CMS). L’espace “Auteur” permet aux scénaristes de construire leurs histoires sans écrire de code.

Le tableau de bord permet de créer des fiches de “Scènes”, d’y rédiger le texte, puis de générer des “Choix” qui vont lier cette scène à une autre. Ce maillage forme un arbre narratif complexe stocké de manière relationnelle dans la base de données.

Illustration du projet
Tableau de bord de l'auteur permettant de créer scènes et embranchements

04 — La visualisation de l'arbre narratif

L’un des défis d’interface majeurs était de permettre à l’auteur de ne pas se perdre dans son propre récit.

Cette vue technique représente la manière dont les différentes scènes (les nœuds) sont reliées par les choix (les flèches). Gérer un tel graphe sur le Frontend Angular, tout en maintenant les IDs relationnels propres via l’API Flask en backend, a demandé une modélisation JSON minutieuse et des requêtes optimisées pour éviter des temps de chargement trop longs sur les histoires massives.

Illustration du projet
Visualisation complexe d'un arbre de choix comportant des dizaines d'embranchements

05 — L'administration de la plateforme

L’architecture et l’équipe Le projet a mobilisé 5 personnes (3 développeurs Full Stack et 2 spécialisés sur l’architecture de la base de données). J’y ai opéré en tant que développeur Full Stack (Angular/Flask).

La dimension collaborative de la plateforme a nécessité l’implémentation d’une vue de modération (Superadmin) pour valider les histoires avant leur publication publique dans la bibliothèque.

Illustration du projet
Vue d'administration pour la modération des histoires