ChatForge est une application front-end développée avec Svelte.
Elle permet de créer une interface de chat où l’utilisateur peut échanger avec une IA via l’API Mistral, tout en stockant les conversations localement avec PocketBase.
marked pour le rendu Markdown des messageslocalStorage pour le token APIGET /collections/conversations/recordsPOST /collections/conversations/recordsDELETE /collections/conversations/records/{id}GET /collections/message?sort=createdPOST /collections/messagePOST https://api.mistral.ai/v1/chat/completionsL’application utilise PocketBase pour stocker les conversations et les messages localement.
conversationDescription : contient les conversations de l’utilisateur.
Champs requis :
| Champ | Type | Description |
|---|---|---|
id |
auto | Identifiant unique généré par PocketBase |
title |
text | Nom de la conversation |
created |
date | Date de création (auto) |
updated |
date | Date de dernière modification (auto) |
messageDescription : contient tous les messages échangés dans les conversations.
Champs requis :
| Champ | Type | Description |
|---|---|---|
id |
auto | Identifiant unique |
role |
text | Rôle du message : user ou assistant |
content |
longtext | Contenu du message |
conversation |
relation → conversation |
Relation vers la conversation à laquelle le message appartient (single) |
created |
date | Date de création (auto) |
updated |
date | Date de dernière modification (auto) |
⚠️ Important : la relation
conversationdans la collectionmessagedoit être single relation, chaque message appartient à une seule conversation.