Le cœur de PiStock, c'est le lien entre FreeCAD et votre inventaire. Vous exportez une pièce depuis FreeCAD, et quelques secondes plus tard elle apparaît dans le navigateur, avec sa miniature et un modèle 3D qu'on peut faire tourner, sans logiciel de CAO.

L'atelier PiStock dans FreeCAD

Une fois installé, l'atelier ajoute une barre d'outils avec ces commandes :

Commande Rôle
Export part envoie la pièce active (fichier CAO, miniature, modèle 3D) au serveur
Browse catalog parcourt le catalogue du serveur et ouvre les pièces
Browse local folder explore un dossier local, sans serveur
Generate thumbnails génère les miniatures manquantes de tout un dossier
BOM from assembly crée une nomenclature PiStock depuis un assemblage

L'atelier PiStock dans FreeCAD

Les icônes jaunes travaillent avec le serveur. Les vertes fonctionnent en local, sans réseau.

L'explorateur local, même sans serveur

L'explorateur local est utile avant même d'installer un serveur. Il parcourt un dossier et tous ses sous-dossiers, les affiche en arbre, et montre sous chacun une petite miniature par fichier .FCStd. Un clic ouvre le document dans FreeCAD.

C'est idéal pour faire le tri dans une bibliothèque CAO existante et voir d'un coup d'œil ce que vous avez déjà.

L'explorateur local

Astuce : les miniatures sont lues dans les fichiers eux-mêmes. Activez dans FreeCAD Préférences → Général → Document l'option d'enregistrement de la miniature avec le document (Save thumbnail with document), ou utilisez Generate thumbnails pour les créer d'un coup sur les anciens fichiers.

Le visualiseur 3D et les révisions

À l'export, PiStock produit un modèle .glb optimisé. Dans le navigateur, on inspecte la pièce ou l'assemblage en 3D, ce qui est pratique pour un collaborateur qui n'utilise pas FreeCAD, ou pour vérifier une pièce depuis l'atelier sur son téléphone.

Chaque nouvel export crée une révision : on garde l'historique de la pièce et on sait toujours quelle version est la bonne.

Le visualiseur 3D L'historique des révisions

Des plugins pour tout le reste

PiStock garde un cœur simple et délègue le reste à des plugins : sauvegarde de la base, notes de fabrication, recherche dans le stock, arbre de nomenclature, « où est utilisée cette pièce », calendrier, tableau blanc…

La page des plugins

Écrire le sien est volontairement simple : un dossier dans plugins/ avec deux fichiers.

plugins/
└── mon_plugin/
    ├── manifest.json    identifiant, nom, version, icône
    └── plugin.py        le code, qui expose register(app)
def register(app):
    from nicegui import ui

    @ui.page("/plugin/mon_plugin")
    def ma_page():
        ui.label("Bonjour depuis mon_plugin !")

Le serveur charge automatiquement chaque plugin au démarrage. Deux règles de bonne conduite : un plugin peut lire toute la base, mais n'écrit que dans ses propres tables (plugin_<id>_*). Et un plugin qui plante est simplement ignoré : il ne casse jamais le reste de PiStock.

La documentation des plugins est dans le dépôt : plugins/README.md.


Pour démarrer : installer PiStock sur un Raspberry Pi. Le code : github.com/pistock-org/PiStock.