Skip to main content

Introduction

Un projet Infrasoft est structuré autour de plusieurs composants clés qui permettent de définir, gérer et manipuler les données, les relations et les opérations au sein du projet. Ce package vous aide à interpréter ces composants et à interagir avec eux de manière cohérente et efficace.

tip

Le package @infrasoftbe/infrasoft-project est hébergé sur GitHub Packages. Notez qu'il est nécessaire de disposer d'un token d'authentification distribué par l'administrateur pour pouvoir utiliser ce package. Vous devez également être membre de l'organisation Infrasoft pour y avoir accès.

Installation

Pour installer ce package, utilisez npm :

npm install @infrasoftbe/infrasoft-project@latest

Architecture d'un projet Infrasoft

Un projet Infrasoft est constitué de quatre principaux composants :

  • Self
  • Datas
  • Opérations
  • Configuration

Le self représente le nœud principal du projet. C'est l'identité de base du projet, définissant sa structure et ses relations avec les autres éléments.

Datas

La section datas comprend les éléments suivants :

  • Nodes : Représente les nœuds du projet.
  • Relations : Définit les relations entre les nœuds.
  • Metas : Contient les métadonnées associées aux nœuds.
  • Structures : Un type particulier de nœud qui stocke d'autres nœuds de manière structurelle.
  • Lists : Un autre type de nœud spécial qui contient une collection de nœuds.

Tous les nœuds possèdent des métadonnées qui fournissent des informations supplémentaires sur les nœuds eux-mêmes. Les structures et les listes sont des collections spéciales de nœuds, où les nœuds peuvent être reliés en fonction du type attendu par la structure ou la liste parente.

Opérations

Les opérations représentent l'ensemble des actions effectuées dans le projet. Chaque opération est identifiée par un operationID, qui est un hash combinant le type de l'opération et ses données associées.

Les opérations ont pour but de calculer les transactions effectuées dans le projet. Une transaction est le résultat final des opérations après avoir appliqué tous les changements. L'operationID peut également être utilisé pour comparer les opérations entre différents projets en identifiant les opérations similaires basées sur leur nature (hash identique).

Configuration

La configuration du projet définit les paramètres globaux, tels que :

  • Les modules de l'application
  • Les types de nœuds et de relations
  • Les relations permises
  • Les couleurs des nœuds
  • Les métadonnées acceptées (métadonnées intégrées et personnalisées)