À propos du projet

Storyloom est un moteur de roman visuel alimenté par l'IA qui génère la narration en temps réel. Il utilise un pipeline XML en flux (StreamParser → StateManager → EventDispatcher) qui analyse la sortie du LLM ligne par ligne sans mise en tampon, et un mécanisme de préchargement de pont qui déclenche l'appel API suivant au milieu d'un paragraphe afin de masquer la latence pendant le temps de lecture. Les capacités clés comprennent : - Deux modes de jeu : Texte et Graph, avec des choix dans la scène ainsi que des embranchements de tracé au niveau du plan aux points de contrôle - Les sprites de personnages et les arrière-plans de scène avec un pipeline d'assets qui effectue une correspondance de catalogue en O(1), un recours au LLM et une génération asynchrone d'images par IA - La validation d'état où le LLM suggère des écritures et le moteur effectue un contrôle de type avant application ; les écritures rejetées sont renvoyées au modèle - La gestion du contexte via fenêtre glissante, ancre de prompt système permanente et compression de point de contrôle (~50K tokens) - Le flux de co-création où l'IA interroge l'utilisateur sur son idée avant de générer le monde, les personnages et l'intrigue - Les sauvegardes JSON atomiques, indépendantes du mode, permettant de basculer entre les modes texte et graphe à tout moment - Le support i18n pour l'anglais, le chinois simplifié et le chinois traditionnel via gettext - L'interface web construite sur FastAPI + SSE + vanilla JS SPA, avec fenêtre de bureau native optionnelle via pywebview Les options d'installation incluent un binaire autonome (aucune Python requise), une roue PyPI (Python ≥ 3.10) et l'installation depuis les sources. Des extras optionnels ajoutent le support de fenêtre de bureau native et la suppression d'arrière-plan pour les images générées en utilisant onnxruntime. Le projet est sous licence MIT et suit une convention Python stdlib-first avec des commits conformes.