# ObsiGate — Gestionnaire de connaissances personnel **ObsiGate** est une application web moderne de gestion de notes Markdown, conçue pour remplacer des outils comme Obsidian avec une expérience auto-hébergée complète. ## ✨ Fonctionnalités principales - **📝 Éditeur Markdown** avancé avec aperçu en temps réel - **🤖 IA intégrée** : DeepSeek, OpenRouter, Gemini — complétion, réécriture, traduction - **🔍 Recherche full-text** avec TF-IDF et filtres avancés - **📊 Dashboard** avec statistiques, fichiers récents, et contenu partagé - **🏷️ Tags** : organisation et filtrage par tags - **🗺️ Vue Graphe** : visualisation des liens entre fichiers - **🔄 Synchronisation** en temps réel via SSE (Server-Sent Events) - **🔗 Webhooks** : notifications automatiques vers des services externes - **💾 Sauvegardes** automatiques et restauration - **🎨 15 thèmes** avec modes clair et sombre - **🌐 Internationalisation** : anglais et français (sélecteur de langue intégré) - **📱 PWA** : installation en tant qu'application native - **🔒 Authentification** JWT avec tokens refresh ## 🚀 Installation rapide ### Docker (recommandé) ```bash git clone https://git.dracodev.net/Projets/ObsiGate.git cd ObsiGate cp .env.example .env # Configurer DEEPSEEK_API_KEY dans .env docker compose up -d --build ``` ### Accès - **Interface web** : http://localhost:2020 - **Utilisateur par défaut** : admin / admin (à changer immédiatement) ## 📋 Prérequis - Docker & Docker Compose - Clé API DeepSeek, OpenRouter, ou Gemini (optionnelle, pour l'IA) - Python 3.11+ (pour le développement) ## 🛠️ Développement ```bash pip install -r requirements.txt python backend/main.py # Dans un autre terminal : cd frontend && python -m http.server 8080 ``` ## 📁 Structure du projet ``` ObsiGate/ backend/ # API FastAPI (Python) frontend/ # Interface utilisateur (HTML/CSS/JS vanilla) locales/ # Traductions (en.json, fr.json) docker/ # Configuration Docker docs/ # Documentation et roadmap ``` ## 🌍 Internationalisation ObsiGate supporte l'anglais et le français. Le sélecteur de langue se trouve dans **Paramètres > Langue**. La traduction couvre : - ✅ Interface utilisateur complète - ✅ Guide d'utilisation (18 sections) - ✅ Messages système et toasts - ✅ Descriptions des thèmes et commandes ## 📖 Documentation - [README.md](README.md) — Documentation complète en anglais - [docs/ROADMAP.md](docs/ROADMAP.md) — Feuille de route du projet - [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md) — Guide de contribution - [docs/TROUBLESHOOTING.md](TROUBLESHOOTING.md) — Dépannage ## 🔧 Configuration Variables d'environnement principales (`.env`) : | Variable | Description | |----------|-------------| | `DEEPSEEK_API_KEY` | Clé API pour l'IA DeepSeek | | `OPENROUTER_API_KEY` | Clé API pour OpenRouter | | `GEMINI_API_KEY` | Clé API pour Gemini | | `ADMIN_PASSWORD` | Mot de passe administrateur | | `JWT_SECRET` | Secret pour les tokens JWT | | `WEBHOOK_SECRET` | Secret pour la signature des webhooks | ## 📝 Licence Ce projet est sous licence propriétaire. Voir le fichier [LICENSE](LICENSE) pour plus de détails. --- **ObsiGate** — Votre savoir, votre serveur. 🏰