← Tous mes projets / 01

ChatRP

Une application mobile pour discuter avec des personnages de jeux vidéo, chacun incarné par une IA.

Projet de fin d'année du Bachelor (MyDigitalSchool), présenté devant un jury
Cadre
Projet réalisé seul : conception, API et application
Rôle
Flutter · Node.js / Express · MySQL · API OpenAI
Stack
Application mobile et API REST
Format
Trois écrans de l'application ChatRP : choix du personnage, conversation avec Connor (Detroit Become Human) et avec Cortana (Halo)

Le contexte

Pour valider ma troisième année de Bachelor, je devais présenter un projet devant un jury. J'ai choisi de mêler deux univers qui me passionnent : le jeu vidéo et le développement. Je l'ai réalisé seul, de la base de données à l'application mobile.

L'idée

Permettre de converser avec des personnages de jeux vidéo, chacun incarné par une intelligence artificielle. L'utilisateur ajoute ses jeux, y crée des personnages, puis lance une conversation avec celui de son choix.

La réalisation

Côté serveur, une API REST en Node.js et Express, adossée à une base MySQL : comptes utilisateurs (mots de passe hachés avec bcrypt, authentification par jeton JWT), jeux, personnages et historique des conversations. Elle interroge l'API d'OpenAI pour générer la description de chaque personnage, puis pour lui faire tenir son rôle dans la discussion. Des tests unitaires (Mocha, Chai, Sinon) couvrent une partie de l'API.

Côté application, j'ai choisi Flutter, découvert lors d'un cours de développement mobile : inscription et connexion, tableau de bord, création des jeux et des personnages, puis l'écran de conversation.

Flutter · Dart · Node.js · Express · MySQL · JWT · OpenAI

En bref

Full-stack

Une API Node.js et une application Flutter, conçues et développées seul.

IA

Chaque personnage est incarné par un modèle d'OpenAI, guidé par un prompt qui lui fait tenir son rôle.

Jury

Présenté devant un jury pour valider ma troisième année de Bachelor.

  • Écran de connexion de ChatRP avec le logo de l'application
    Connexion
  • Écran de ChatRP : choix d'un univers et d'un personnage, Connor sélectionné dans Detroit Become Human
    Choix du personnage
  • Écran de ChatRP : conversation avec Connor, qui répond en restant dans son rôle
    Conversation