Files
wiki/Catalogue-Self-Hosted/apps/app-inventree.md
T
2026-06-09 18:40:21 +02:00

124 lines
4.1 KiB
Markdown

---
title: InvenTree
created: 2026-06-08
updated: 2026-06-08
type: app
tags: [catalogue, inventory-management, manufacturing, parts, python, app-marathon3-rattrapage-a]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Inventory, https://inventree.org/]
---
# 🔧 InvenTree
> **Gestion de stock de pièces détachées et BOM** : conçu pour les makers, fablabs et PME industrielles — code source, fournisseurs, prix et assemblage.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | [inventree.org](https://inventree.org) |
| **GitHub** | [inventree/InvenTree](https://github.com/inventree/InvenTree) |
| **License** | MIT |
| **Langage** | Python |
| **Étoiles GitHub** | 4.6k ⭐ |
| **Catégorie** | [[cat-inventory-management|Inventory Management]] |
## 📝 Description
**InvenTree** est né en 2017 du besoin d'un outil de gestion de stock pour les **makers, hackerspaces et ateliers de production**. Il cible particulièrement les pièces électroniques et mécaniques.
Fonctionnalités :
-**Catalogue de pièces** : images, datasheets, prix
-**BOM (Bill of Materials)** : assemblages hiérarchiques
-**Multi-entrepôts** avec localisation (rack, étagère, tiroir)
-**Fournisseurs** : prix, délais, références
-**Achats** : génération automatique de commandes
-**Codes-barres et QR codes** : scan pour entrées/sorties
-**Stock minimum/alertes** : réapprovisionnement
-**Intégration GitHub** : lier des pièces à des repos
-**Build orders** : assemblage de produits finis
-**API REST + plugin system**
**Différence vs PartKeepr, OpenBOM** : InvenTree = stack moderne (Django + React), communauté active, intégration native GitHub, install Docker simple.
**Pour qui** : makers, fablabs, ateliers électroniques, PME industrielles, constructeurs de matériel, projets DIY complexes.
## 🚀 Installation
### Docker Compose (recommandé)
```yaml
version: '3.8'
services:
inventree:
image: inventree/inventree:latest
container_name: inventree
restart: unless-stopped
environment:
- INVENTREE_DB_HOST=db
- INVENTREE_DB_NAME=inventree
- INVENTREE_DB_USER=inventree
- INVENTREE_DB_PASSWORD=*** - INVENTREE_SITE_URL=https://inventree.example.com
- INVENTREE_ADMIN_USER=admin
- INVENTREE_ADMIN_PASSWORD=*** - INVENTREE_ADMIN_EMAIL=admin@example.com
volumes:
- inventree_data:/home/inventree/data
- inventree_media:/home/inventree/media
labels:
- "traefik.enable=true"
- "traefik.http.routers.inventree.rule=Host(`inventree.example.com`)"
- "traefik.http.routers.inventree.tls.certresolver=letsencrypt"
depends_on:
- db
db:
image: postgres:15-alpine
container_name: inventree-db
restart: unless-stopped
environment:
- POSTGRES_DB=inventree
- POSTGRES_USER=inventree
- POSTGRES_PASSWORD=*** volumes:
- inventree_db:/var/lib/postgresql/data
volumes:
inventree_data:
inventree_media:
inventree_db:
```
## 🔄 Alternatives
### Open Source
- [[app-glpi]] — helpdesk + inventaire IT
- [[app-homebox]] — inventaire personnel
- [[app-openuem]] — UEM entreprise
- **PartKeepr** — gestion composants électronique
- **OpenBOM** — gestion BOM en SaaS
- **Stockpile** — inventaire simple
### Propriétaires
- **Octopart** — recherche composants électroniques
- **Digi-Key** — distributeur avec API
- **Mouser** — idem
- **NetSuite** — ERP Oracle
## 🔐 Sécurité
- **Authentification par user/password**
- **Permissions par groupe** : read/write/admin par section
- **API tokens** : pour intégrations
- **2FA** : supporté
- **HTTPS obligatoire** : via reverse proxy
- **Logs d'audit** : traçabilité des mouvements de stock
## 📚 Ressources
- [Documentation](https://docs.inventree.org/)
- [GitHub](https://github.com/inventree/InvenTree)
- [Démo](https://demo.inventree.org/)
## Pages Liées
- [[cat-inventory-management]] — Catégorie Inventory
- [[app-glpi]] — Inventaire IT
- [[recettes-docker-compose]] — Templates Docker