Aller au contenu

Installation

ColleC est un projet Python. L'installation se fait avec uv, le gestionnaire de paquets rapide d'Astral, qui gère à la fois l'environnement virtuel et les dépendances.

Prérequis système

Composant Version Pourquoi
Python 3.11+ Type hints modernes, match, syntaxe int \| None.
uv récent Installation des dépendances et lancement des commandes.
Node.js 20+ Compilation Tailwind CSS (uniquement si vous lancez l'interface web).
Git - Clonage du dépôt.

Installer uv

curl -LsSf https://astral.sh/uv/install.sh | sh
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Vérifier :

uv --version

Dépendances système

ColleC utilise Pillow pour le traitement raster et PyMuPDF pour la rasterisation des PDF. Sur la plupart des systèmes, les wheels précompilés suffisent — pas de dépendance C à installer.

Si l'installation échoue avec un message évoquant libjpeg, libpng, zlib ou mupdf, installer les paquets de développement correspondants :

sudo apt install libjpeg-dev libpng-dev zlib1g-dev
brew install libjpeg libpng zlib

Les wheels sont fournis ; pas d'installation système requise en pratique.

Cloner et installer

git clone https://github.com/Hsbtqemy/ColleC.git
cd ColleC
uv sync

uv sync crée un .venv/ à la racine du projet et installe toutes les dépendances. La commande prend ~30 secondes au premier lancement, quelques secondes ensuite (cache).

Vérifier l'installation

La CLI doit répondre :

uv run archives-tool --help

Vous devez voir la liste des sous-commandes : importer, exporter, controler, montrer, renommer, deriver, etc.

Initialiser une base de démonstration

Pour explorer l'outil sans toucher à votre vraie base :

uv run archives-tool demo init

Cela crée data/demo.db avec 5 fonds, ~333 items, ~1300 fichiers, 1 collection transversale, des collaborateurs, et quelques DOI Nakala fictifs.

Vérifier :

uv run archives-tool montrer fonds

Vous devez voir 5 fonds (HK, FA, etc.) listés.

Lancer l'interface web (facultatif)

L'interface web utilise Tailwind CSS compilé via npm. Première installation :

npm install
npm run build:css

Puis lancer le serveur en pointant la base demo :

ARCHIVES_DB=data/demo.db uv run uvicorn archives_tool.api.main:app --reload --port 8000
$env:ARCHIVES_DB = "data/demo.db"
uv run uvicorn archives_tool.api.main:app --reload --port 8000

Ouvrir http://localhost:8000.

En développement, lancer npm run watch:css dans un autre terminal pour recompiler le CSS à chaque modification.

Et ensuite ?

Configuration : créer un config_local.yaml qui décrit où vivent vos vrais scans.