NormaCare SDK
Le SDK officiel pour développer, tester et publier des composants d'intégration médicale, utilisables dans NormaCare Studio et exécutés par NormaCare Engine, et distribuables sur le NormaCare Store.
Installation
pip install normacare-sdk
Développement local (depuis ce dossier) :
pip install -e .
Démarrage rapide (5 minutes)
normacare-sdk new mon_composant_hl7 --template hl7
cd mon_composant_hl7
normacare-sdk test . # exécute test_mon_composant_hl7.py
normacare-sdk validate . # vérifie le manifest .cmp
normacare-sdk build . # produit mon_composant_hl7-1.0.0.ncpkg
normacare-sdk login # connexion au Store
normacare-sdk publish . --price 0
Templates
| Template | Description |
|---|---|
basic |
Composant Python minimal |
hl7 |
Composant HL7 v2.x (extraction de segments) |
database |
Composant avec accès base de données |
javascript |
Composant JavaScript / Node.js |
http |
Composant appel API REST |
Écrire un composant
from normacare_sdk import NormaCareComponent, ComponentInfo, run
class Component(NormaCareComponent):
info = ComponentInfo(type="mon_comp", label="Mon Composant", author="Moi")
def process(self, data, vars, params):
# self._config = options du composant (définies dans le .cmp / le Studio)
seuil = self.get_option(self._config, "seuil", default=10)
self.log("Traitement en cours")
return {"result": data, "seuil": seuil}
run(Component)
À l'exécution, l'Engine injecte le contexte du flux :
| Variable | Contenu |
|---|---|
_inputs |
sorties des nœuds parents |
_vars |
variables globales du flux |
_params |
paramètres du job Engine |
_config |
options du composant (du manifest .cmp) |
Tester
from normacare_sdk.testing import ComponentTester
from mon_comp import Component
t = ComponentTester(Component)
t.run(data={"raw": "MSH|..."}, config={"seuil": 5})
t.assert_success()
t.assert_output_key("result")
t.print_report()
Structure d'un composant
mon_composant/
├── mon_composant.cmp Manifest JSON (métadonnées, options, prix)
├── mon_composant.py Script (votre logique)
├── test_mon_composant.py Tests locaux
└── README.md Documentation (affichée sur le Store)
Niveaux de protection
| Niveau | Protection |
|---|---|
| Open source | aucune |
"protected": true |
obfuscation PyArmor (pip install normacare-sdk[protect]) |
| Payant | jeton d'achat requis (abonnement Publisher) |
Support
- Documentation : https://docs.normacare.app/sdk
- Store : https://store.normacare.app
- Email : sdk@fdevelopment.eu
© FDevelopment LTD
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
normacare_sdk-2.0.0.tar.gz
(18.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file normacare_sdk-2.0.0.tar.gz.
File metadata
- Download URL: normacare_sdk-2.0.0.tar.gz
- Upload date:
- Size: 18.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d4e9cafa6eac23d73fd4dbcf50e65505f550294ac4491418807f9dd9186793fd
|
|
| MD5 |
3dee77e9713dca22b052ebad2801c5a3
|
|
| BLAKE2b-256 |
a19341abc80ff7be4ccac430213708844628f9566142f8ded3e6ab2bb639edcf
|
File details
Details for the file normacare_sdk-2.0.0-py3-none-any.whl.
File metadata
- Download URL: normacare_sdk-2.0.0-py3-none-any.whl
- Upload date:
- Size: 24.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
78c73edb429e6af45b59537b0ac363948eeef2f1768d90f60ec3078a72d99976
|
|
| MD5 |
8468ad6c9fa264d279bfd60037978a87
|
|
| BLAKE2b-256 |
41e6757cd602efe1f64cc4e531ba13f14697133a84908dcddaa083d0bfc0a363
|