À propos du projet

Aventura est une bibliothèque JavaScript pour créer du texte génératif, des histoires interactives et de la littérature électronique. Elle s'exécute dans le navigateur en incluant le script et en instanciant new Aventura(). La génération de texte basée sur les grammaires utilise un objet de règles référencées par des balises de règle, avec setGrammar(grammar).expandGrammar('base'). Les options de règle peuvent porter un tableau .prob pour une sélection pondérée ; des transformations comme #CAPITALIZE# et #ALLCAPS# peuvent être appliquées ; des règles dynamiques telles que $hero$[name:animal,attribute:adjective] peuvent lier une valeur générée pour la réutiliser ; testGrammar() signale les règles manquantes. La génération par chaîne de Markov utilise markovModel(file, n?, save?) pour créer un modèle n-gramme à partir d'un fichier texte et setMarkov(model).markovChain(length, seed) pour générer du texte ; loadJSON peut charger un modèle enregistré et testDistribution() journalise les informations de distribution. Les igramas sont des générateurs d'images de type grammatical : chargez un modèle JSON depuis l'application igrama, appelez setIgrama, expandIgrama('base'), puis showIgrama(layers, format, containerId), igramaDataUrl ou igramaText ; la sortie gif nécessite MiniGif. Les histoires interactives sont définies comme des scènes avec du texte, des tableaux d'options facultatifs, des liens de scène, deadEnd, image/igrama et des zones d'image cliquables ; commencez avec setScenes(scenes).startAdventure('start'), et testScenes() trouve les scènes manquantes. La configuration personnalisée inclut la langue, le conteneur, la vitesse de la machine à écrire, le format igrama, les options MiniGif, le défilement, du code personnalisé dans les scènes et des surcharges CSS.