À propos du projet

JSVision est un SDK open-source TypeScript conçu pour créer des applications d'interface utilisateur de terminal (TUI) avec une architecture moderne et réactive. Il fournit un framework de widget conservé avec une réactivité fine, construit sur un moteur de rendu pur et sans dépendance. Le SDK permet aux développeurs de créer des applications de terminal interactives complexes qui peuvent également s'exécuter dans le navigateur via xterm.js. Les capacités et fonctionnalités clés comprennent : - **Moteur de rendu sans dépendance** : Un noyau léger et pur qui gère l'hébergement de terminal, le décodage des entrées, la détection des capacités et la gestion des couleurs. - **Framework de widget conservé** : Un package d'interface utilisateur qui gère l'arbre des widgets, la disposition, la boucle d'événements et la coque d'application, avec des signaux fins pour la réactivité. - **Bibliothèque de contrôles riche** : Comprend des composants prêts à l'emploi tels que des menus, des boîtes de dialogue modales, des formulaires, des grilles de données et un éditeur de code natif de terminal avec mise en évidence de la syntaxe et prise en charge de l'interface utilisateur LSP. - **Formulaires et validation** : Un système de formulaire sans tête et réactif avec validation synchrone Zod. - **Internationalisation** : Prise en charge intégrée de l'i18n sans dépendance pour les applications et les packages. - **Gestion de fichiers** : Contrôles pour l'ouverture/enregistrement de fichiers, les sélecteurs de répertoire et les listes de fichiers. JSVision est structuré en tant que monorepo avec plusieurs packages npm publiés, notamment `@jsvision/core`, `@jsvision/ui`, `@jsvision/i18n`, `@jsvision/forms`, `@jsvision/files`, `@jsvision/datagrid` et `@jsvision/code-editor`. Il nécessite Node.js version 22 ou supérieure et est exclusivement ESM. Le projet suit la gestion sémantique des versions et est publié sous licence MIT.