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

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.

Connexion 
Choix du personnage 
Conversation