IsoFind · Plugins & Extensions
Marketplace

Plugins
& extensions

Étendez les capacités d'IsoFind avec des connecteurs, des modules d'export, des intégrations réglementaires et des outils de visualisation développés par IsoFind ou par la communauté.

0
Plugins disponibles
5
Catégories prévues
MIT
Licence par défaut

Aucun plugin disponible pour le moment

La marketplace IsoFind est en cours de construction. Les premiers plugins officiels seront publiés prochainement - connecteurs LIMS, parsers d'instruments MC-ICP-MS, modules d'export et outils de visualisation.

Être le premier à contribuer
Connecteurs LIMS & instruments

Import/export depuis les principaux LIMS du marché (Labware, STARLIMS, LabVantage) et parsers pour les spectromètres MC-ICP-MS (Nu Instruments, Thermo Neptune, Agilent).

LabwareSTARLIMSNu InstrumentsThermo Neptune
Visualisation & cartographie

Représentations 3D des espaces isotopiques, cartographies géoréférencées, profils stratigraphiques et export publication haute résolution (SVG, PNG 300 dpi).

3D plotsCartographieStratigraphieSVG export
Modules d'export

Rapports PDF forensiques avec signature ECDSA, exports Excel et CSV avec mise en forme QA/QC, conversion GeoJSON pour intégration SIG (QGIS, ArcGIS).

PDF forensiqueExcel/CSVGeoJSONSIG
Intégrations réglementaires

Rapports de conformité au Critical Raw Materials Act, connexion à la base ECHA, attestations de diligence raisonnée avec preuves isotopiques pour les minerais de conflits.

CRMA 2024ECHADiligence raisonnéeMinerais de conflits
Modules scientifiques

Modèles de fractionnement isotopique (adsorption, oxydation, précipitation), calcul bayésien des mélanges multi-sources, synchronisation avec GeoReM pour les matériaux de référence.

FractionnementMélange bayésienGeoReMQA/QC

API Plugin IsoFind :
tout ce qu'il faut pour commencer

L'architecture de plugin d'IsoFind est conçue pour être simple à prendre en main. Un plugin est un module Python qui implémente une interface définie, enregistrée au démarrage du logiciel.

Structure minimale d'un plugin
Le point d'entrée obligatoire

Tout plugin IsoFind doit exposer une classe IsoFindPlugin héritant de BasePlugin et implémenter au minimum les méthodes metadata() et run().

mon_plugin.py
from isofind.plugins import BasePlugin

class IsoFindPlugin(BasePlugin):

  def metadata(self):
    return {
      "name": "Mon Plugin",
      "version": "1.0.0",
      "author": "Nom Prénom",
      "category": "export"
    }

  def run(self, context):
    # context contient les données actives
    data = context.get_active_dataset()
    # ... traitement ...
    return context.result(data)
Voir le template complet sur GitHub
Objet Context - méthodes disponibles
Accès aux données et à l'interface

L'objet context est l'interface principale entre le plugin et IsoFind. Il expose les données actives, les paramètres utilisateur et les méthodes d'affichage.

API Context
Méthode Retour Description
get_active_dataset() ISOFDataset Jeu de données actif
get_selection() list[Sample] Échantillons sélectionnés
get_element() str Élément actif (ex. "Pb")
show_dialog(widget) None Affiche une fenêtre
notify(msg) None Notification dans l'UI
result(data) PluginResult Retourne un résultat
Installation et test en local
Développement et débogage

Pour développer et tester un plugin sans le publier, copiez le dossier du plugin dans le répertoire plugins/ d'IsoFind. Le logiciel le détecte automatiquement au prochain démarrage.

Terminal
# Répertoire de plugins IsoFind (Windows)
%LOCALAPPDATA%\IsoFind\plugins\

# Copier votre plugin
xcopy mon_plugin\ %LOCALAPPDATA%\IsoFind\plugins\mon_plugin\

# Vérifier la détection au démarrage
# Menu IsoFind > Plugins > Gestionnaire de plugins
  • Les erreurs de chargement apparaissent dans IsoFind.log
  • Le mode debug active les traces détaillées d'exécution
Lire et écrire des fichiers ISOF
Format d'échange natif

Les plugins peuvent lire et produire des fichiers ISOF via la bibliothèque isof disponible sur PyPI. Elle est incluse dans l'environnement Python d'IsoFind.

lecture_isof.py
import isof

# Charger un fichier
doc = isof.load("echantillon.isof")
print(doc.is_valid()) # True si signature OK

# Accéder aux données
ratios = doc.data.isotope_ratios
meta   = doc.header.lab_id

# Créer un fichier en sortie
out = isof.Document()
out.data.set_ratios(ratios)
out.save("resultat.isof")
Package isof sur PyPI
Écosystème ouvert

Développez votre propre
plugin IsoFind

L'architecture d'IsoFind est conçue pour être étendue. N'importe quel développeur ou laboratoire peut créer un connecteur, un module de traitement ou un outil de visualisation compatible, et le distribuer librement ou le soumettre à la marketplace.

Un SDK Python et une documentation d'API sont disponibles sur GitHub. Les plugins officiels IsoFind servent de référence d'implémentation.

1
Lire la documentation Parcourir les guides SDK et l'API de plugin sur docs.isofind.tech
2
Développer et tester Utiliser le template de plugin officiel comme point de départ, tester sur données réelles
3
Soumettre à la marketplace Ouvrir une issue sur GitHub ou envoyer un email à colin.ferrari@isofind.tech pour la revue
Spécifications d'un plugin IsoFind
Exigences minimales pour la soumission
Langage Python 3.10+
Interface API plugin v1.x
Format d'échange ISOF v1.0 ou supérieur
Tests Couverture ≥ 80%
Licence MIT, Apache 2.0 ou GPL
Documentation README + docstrings