ObsiGate/docs/HIDDEN_FILES_GUIDE.md
Bruno Charest 5280dc7a50 Add comprehensive documentation and analysis files
Add extensive project documentation including analysis review, image
rendering changelog and guide,
contributing guidelines, hidden files configuration guide, PWA
documentation suite, roadmap, and
dashboard specification.
2026-05-26 08:35:58 -04:00

155 lines
4.6 KiB
Markdown

# Guide de configuration des fichiers et dossiers cachés
## Vue d'ensemble
ObsiGate prend désormais en charge les fichiers et dossiers cachés (ceux qui commencent par un point, comme `.obsidian`, `.git`, etc.) avec une configuration flexible par vault.
## Fonctionnalités
### 1. **Activation globale par vault**
Vous pouvez activer l'indexation de TOUS les fichiers cachés pour un vault spécifique.
### 2. **Liste blanche flexible**
Ajoutez des dossiers cachés individuels à une liste blanche, même si l'activation globale est désactivée.
### 3. **Configuration persistante**
Les paramètres sont sauvegardés et persistent entre les redémarrages.
## Configuration
### Via variables d'environnement
Ajoutez ces variables à votre configuration Docker ou `.env` :
```bash
# Pour activer tous les fichiers cachés dans un vault
VAULT_1_INCLUDE_HIDDEN=true
# Pour ajouter des dossiers spécifiques à la liste blanche
VAULT_1_HIDDEN_WHITELIST=.obsidian,.github,.vscode
# Exemple pour un deuxième vault
VAULT_2_INCLUDE_HIDDEN=false
VAULT_2_HIDDEN_WHITELIST=.obsidian
```
### Via l'interface web
1. Ouvrez le menu **Options** (icône d'engrenage)
2. Cliquez sur **Configurations**
3. Faites défiler jusqu'à la section **📁 Fichiers et dossiers cachés**
4. Pour chaque vault, vous pouvez :
- **Activer/désactiver** l'inclusion de tous les fichiers cachés
- **Ajouter des dossiers** à la liste blanche individuellement
- **Supprimer des dossiers** de la liste blanche
5. Cliquez sur **Sauvegarder les paramètres**
6. Cliquez sur **Réindexer avec nouveaux paramètres** pour appliquer les changements
## Exemples d'utilisation
### Cas 1 : Indexer uniquement le dossier .obsidian
```bash
VAULT_1_INCLUDE_HIDDEN=false
VAULT_1_HIDDEN_WHITELIST=.obsidian
```
Ou via l'interface :
- Désactiver "Inclure tous les fichiers cachés"
- Ajouter `.obsidian` à la liste blanche
### Cas 2 : Indexer tous les fichiers cachés
```bash
VAULT_1_INCLUDE_HIDDEN=true
```
Ou via l'interface :
- Activer "Inclure tous les fichiers cachés"
### Cas 3 : Indexer plusieurs dossiers cachés spécifiques
```bash
VAULT_1_INCLUDE_HIDDEN=false
VAULT_1_HIDDEN_WHITELIST=.obsidian,.github,.vscode
```
Ou via l'interface :
- Désactiver "Inclure tous les fichiers cachés"
- Ajouter `.obsidian`, `.github`, `.vscode` à la liste blanche
## API Endpoints
### Obtenir les paramètres d'un vault
```http
GET /api/vaults/{vault_name}/settings
```
Réponse :
```json
{
"includeHidden": false,
"hiddenWhitelist": [".obsidian", ".github"]
}
```
### Mettre à jour les paramètres d'un vault
```http
POST /api/vaults/{vault_name}/settings
Content-Type: application/json
{
"includeHidden": true,
"hiddenWhitelist": [".obsidian"]
}
```
### Obtenir les paramètres de tous les vaults
```http
GET /api/vaults/settings/all
```
## Architecture technique
### Backend
- **`backend/indexer.py`** : Fonction `_should_include_path()` qui vérifie si un chemin doit être inclus
- **`backend/vault_settings.py`** : Gestion de la persistance des paramètres
- **`backend/main.py`** : Endpoints API pour gérer les paramètres
- **`backend/attachment_indexer.py`** : Respect des paramètres pour les pièces jointes
### Frontend
- **`frontend/index.html`** : Section de configuration dans le modal
- **`frontend/app.js`** : Fonctions `loadHiddenFilesSettings()`, `saveHiddenFilesSettings()`, etc.
- **`frontend/style.css`** : Styles pour l'interface de configuration
## Notes importantes
1. **Réindexation requise** : Après modification des paramètres, une réindexation est nécessaire pour appliquer les changements
2. **Persistance** : Les paramètres sont sauvegardés dans `/app/data/vault_settings.json`
3. **Priorité** : Les variables d'environnement sont chargées au démarrage, mais peuvent être écrasées via l'interface web
4. **Performance** : L'activation de tous les fichiers cachés peut augmenter le temps d'indexation selon le nombre de fichiers
## Dépannage
### Les fichiers cachés n'apparaissent pas après activation
1. Vérifiez que les paramètres sont bien sauvegardés
2. Déclenchez une réindexation manuelle
3. Vérifiez les logs du serveur pour d'éventuelles erreurs
### Les paramètres ne persistent pas
1. Vérifiez que le dossier `/app/data/` est accessible en écriture
2. Vérifiez les permissions du fichier `vault_settings.json`
3. Consultez les logs pour les erreurs de sauvegarde
### Conflit entre variables d'environnement et interface web
Les paramètres de l'interface web écrasent les variables d'environnement. Pour revenir aux variables d'environnement, supprimez le fichier `vault_settings.json` et redémarrez.