Commit Graph
304 Commits
Author SHA1 Message Date
Claude 1ae40ad84c Feature: Améliorations UI des boxes Todo, RSS et Calendrier
Modifications :

1. Box Flux RSS :
   - Correction du bug d'affichage de l'entête (boutons plus compacts)
   - Affichage de seulement 3 articles à la fois
   - Rotation automatique toutes les 20 secondes parmi les 15 derniers articles
   - Indicateurs de pagination (dots) pour visualiser la rotation
   - Taille de texte réduite pour plus de lisibilité

2. Box Todo List :
   - Interface plus compacte pour afficher plus de tâches
   - Padding réduit (p-2 au lieu de p-3)
   - Taille de texte réduite (text-sm)
   - Espacement vertical réduit (space-y-1.5 au lieu de space-y-3)
   - Hauteur maximale augmentée de 400px à 350px
   - Boutons et icônes plus petits

3. Box Calendrier :
   - Ajout d'une icône bleue animée (pulse) pour les RDV du jour
   - Meilleure identification visuelle des événements d'aujourd'hui
2025-11-12 14:53:10 +00:00
LogiFlow 91e3764b5c Merge pull request #49 from R0m1k3/claude/integrate-google-calendar-api-011CV44Nie9HB7U35ArSUnNa
Claude/integrate google calendar api 011 cv44 nie9 hb7 u35 ar s un na
2025-11-12 15:41:39 +01:00
Claude 05955a949e Feature: Centrage de la date et l'heure dans le header
Modification :
- Layout header changé de flexbox à grid (3 colonnes)
- Logo et titre à gauche
- Date et heure centrées au milieu
- Menu utilisateur et boutons à droite
2025-11-12 14:40:43 +00:00
Claude d78823daf3 Feature: Refonte de l'interface des notes et limitation du calendrier
Modifications :
- Limitation du calendrier à 10 événements maximum
- Suppression des onglets dans l'éditeur de notes
- Tout intégré directement dans la note :
  * Boutons d'action en haut (Tâche, Image, Fichier, Tag)
  * Tags affichés directement sous les boutons
  * Todos affichés dans une card
  * Images en miniatures 4 par ligne, cliquables
  * Fichiers listés dans une card
  * Éditeur de texte riche ensuite
- Modal plein écran pour visualiser les images en grand
- Interface plus compacte et fluide
- Suppression des inputs de fichiers visibles
2025-11-12 14:38:08 +00:00
LogiFlow 6dc4b91acc Merge pull request #48 from R0m1k3/claude/integrate-google-calendar-api-011CV44Nie9HB7U35ArSUnNa
Feature: Amélioration de l'interface avec date/heure et alertes
2025-11-12 15:32:25 +01:00
Claude b9630421a6 Feature: Amélioration de l'interface avec date/heure et alertes
Modifications majeures de l'interface :
- Ajout de la date et l'heure en temps réel dans le header
- Alerte rouge dans le header 30 minutes avant un rendez-vous
- Réorganisation du layout en 3 colonnes :
  * Calendrier à gauche (300px, sticky)
  * Notes au milieu (responsive)
  * Todo et RSS à droite (380px, sticky)
- Badge rouge "Dans moins de 30 min" sur les événements proches
- Amélioration de la compacité des cartes de notes
- Synchronisation optimisée de l'affichage du calendrier
2025-11-12 14:30:33 +00:00
LogiFlow dee0848245 Merge pull request #47 from R0m1k3/claude/integrate-google-calendar-api-011CV44Nie9HB7U35ArSUnNa
Fix: Route auth-url accessible à tous les utilisateurs authentifiés
2025-11-12 15:22:36 +01:00
Claude 062c419324 Fix: Route auth-url accessible à tous les utilisateurs authentifiés
La route /auth-url nécessitait requireAdmin mais devrait être accessible
à tous les utilisateurs authentifiés pour qu'ils puissent connecter
leur propre compte Google Calendar.
2025-11-12 14:21:59 +00:00
LogiFlow 92fae63756 Merge pull request #46 from R0m1k3/claude/integrate-google-calendar-api-011CV44Nie9HB7U35ArSUnNa
Fix: Route oauth-callback accessible sans authentification
2025-11-12 15:17:15 +01:00
Claude 31d5ee24f5 Fix: Route oauth-callback accessible sans authentification
Les routes oauth-callback et force-oauth2 doivent être accessibles
sans authentification car elles sont appelées par Google ou publiquement.

- Suppression du router.use(authenticateToken) global
- Ajout de authenticateToken individuellement aux routes qui en ont besoin
- oauth-callback et force-oauth2 restent publiques
2025-11-12 14:16:19 +00:00
LogiFlow 756a979240 Merge pull request #45 from R0m1k3/claude/integrate-google-calendar-api-011CV44Nie9HB7U35ArSUnNa
Fix: Hardcode redirect URI pour OAuth2
2025-11-12 15:10:35 +01:00
Claude a17a8a8799 Fix: Hardcode redirect URI pour OAuth2 2025-11-12 14:06:58 +00:00
LogiFlow cf95c088a2 Merge pull request #44 from R0m1k3/claude/integrate-google-calendar-api-011CV44Nie9HB7U35ArSUnNa
Claude/integrate google calendar api 011 cv44 nie9 hb7 u35 ar s un na
2025-11-12 15:06:52 +01:00
Claude 5ebaa72136 Fix: Route force-oauth2 accessible sans authentification 2025-11-12 14:06:02 +00:00
Claude be8f95f413 Fix: Ajout d'une route de debug pour forcer OAuth2
Ajout de la route GET /api/calendar/force-oauth2 pour forcer
le changement du type d'authentification vers OAuth2 dans la BDD.

Cette route permet de contourner un problème où le bouton
"Enregistrer" ne sauvegarde pas correctement google_auth_type.
2025-11-12 14:03:58 +00:00
LogiFlow 8d3a6c5241 Merge pull request #43 from R0m1k3/claude/integrate-google-calendar-api-011CV44Nie9HB7U35ArSUnNa
Docs: Guide de configuration OAuth 2.0 pour Google Calendar
2025-11-12 14:59:31 +01:00
Claude 078f4b7054 Docs: Guide de configuration OAuth 2.0 pour Google Calendar
Ajout d'un guide détaillé pour configurer Google Calendar avec OAuth 2.0 :
- Explication de la différence entre OAuth 2.0, Service Account et API Key
- Instructions étape par étape pour extraire Client ID et Secret du JSON
- Dépannage des erreurs courantes
- Rappel que les API Keys ne fonctionnent pas pour les calendriers privés

Note: Exemples génériques utilisés pour éviter d'exposer les secrets
2025-11-12 13:55:58 +00:00
LogiFlow 76d1837ebc Merge pull request #42 from R0m1k3/claude/integrate-google-calendar-api-011CV44Nie9HB7U35ArSUnNa
Feature: Ajout du support d'API Key pour Google Calendar
2025-11-12 14:24:00 +01:00
Claude e480d50bea Feature: Ajout du support d'API Key pour Google Calendar
Ajout d'une troisième méthode d'authentification pour Google Calendar :
- OAuth 2.0 (existant)
- Service Account (existant)
- API Key (nouveau)

Modifications :
- Interface d'administration avec sélection API Key
- Champs pour configurer la clé API et l'ID du calendrier
- Backend mis à jour pour gérer l'authentification par API Key
- Routes calendar adaptées pour supporter le nouveau type
- Affichage du statut de connexion mis à jour

L'utilisateur peut maintenant :
1. Sélectionner "API externe" dans les paramètres Google Calendar
2. Entrer sa clé API Google Calendar
3. Spécifier l'ID du calendrier (ou "primary")
4. Synchroniser directement avec Google Calendar
2025-11-12 13:22:34 +00:00
LogiFlow dc4f88d045 Merge pull request #41 from R0m1k3/claude/fix-redirect-uri-mismatch-011CV41yPYKHVkiwiBSZ2sd3
Fix: Correction des erreurs TypeScript de build
2025-11-12 14:12:14 +01:00
Claude 81f25a09d1 Fix: Correction des erreurs TypeScript de build
Corrections apportées pour résoudre l'échec de build :

1. **Index.tsx** :
   - Ajout du else manquant dans le ternaire conditionnel (ligne 1536)
   - Ajout du type explicite pour calendarAuthStatus (authType)
   - Cast de type pour google_auth_type dans onValueChange
   - Ajout d'un bouton "Synchroniser" pour Service Account

2. **SettingsService.ts** :
   - Ajout des nouvelles propriétés à l'interface Settings :
     - google_auth_type?: 'oauth2' | 'service_account'
     - google_service_account_key?: string
     - google_calendar_email?: string

Le build passe maintenant avec succès (✓ built in 8.72s).
2025-11-12 13:10:59 +00:00
LogiFlow ef0829f0ca Merge pull request #40 from R0m1k3/claude/fix-redirect-uri-mismatch-011CV41yPYKHVkiwiBSZ2sd3
Feature: Ajout du support OAuth2 et Service Account pour Google Calendar
2025-11-12 14:06:37 +01:00
Claude 3cb6c81489 Feature: Ajout du support OAuth2 et Service Account pour Google Calendar
Ajout de deux méthodes d'authentification au choix pour Google Calendar :

1. **OAuth 2.0** (méthode existante améliorée) :
   - ✅ Prompt de sélection de compte Google ('select_account consent')
   - ✅ Gestion dynamique du redirect_uri avec APP_URL
   - ✅ Idéal pour accès au calendrier personnel avec consentement

2. **Service Account** (nouvelle méthode) :
   - ✅ Authentification via clé JSON sans interaction utilisateur
   - ✅ Parfait pour calendriers partagés en entreprise
   - ✅ Synchronisation automatique en arrière-plan
   - ✅ Configuration de l'email du calendrier à synchroniser

## Backend (routes/calendar.routes.js) :
- Ajout des constantes AUTH_TYPES (oauth2, service_account)
- Fonction getAuthType() pour récupérer la méthode configurée
- Fonction getServiceAccountClient() pour Service Account
- Fonction getCalendarClient() unifiée qui choisit la bonne méthode
- Route /auth-status mise à jour pour retourner le type d'auth
- Route /sync adaptée pour supporter les deux méthodes
- Support du calendrier email personnalisé pour Service Account

## Frontend (src/pages/Index.tsx) :
- Menu déroulant pour choisir entre OAuth2 et Service Account
- Interface conditionnelle selon la méthode choisie
- Champ textarea pour la clé JSON du Service Account
- Champ email pour spécifier le calendrier à synchroniser
- Affichage du type d'authentification dans le statut
- Amélioration de l'UI avec descriptions claires

## Documentation :
- OAUTH_SETUP.md : Guide complet mis à jour avec les deux méthodes
  - Section dédiée au choix de la méthode
  - Guide pas à pas pour Service Account
  - Dépannage pour les deux méthodes
- README_GOOGLE_CALENDAR.md : Guide de démarrage rapide (nouveau)
  - Comparaison des deux méthodes
  - Configuration rapide pour chaque méthode
  - Liens vers la documentation complète

Cette implémentation offre une flexibilité maximale pour s'adapter
à différents cas d'usage : personnel (OAuth2) ou professionnel (Service Account).
2025-11-12 13:05:40 +00:00
LogiFlow efa051e477 Merge pull request #39 from R0m1k3/claude/fix-redirect-uri-mismatch-011CV41yPYKHVkiwiBSZ2sd3
Fix: Résolution des problèmes OAuth Google Calendar
2025-11-12 13:51:20 +01:00
Claude 95eba6ce63 Fix: Résolution des problèmes OAuth Google Calendar
Corrections apportées :

1. **redirect_uri_mismatch** :
   - Ajout de la variable APP_URL dans .env.example avec documentation
   - Amélioration de la fonction getOAuth2Client pour accepter une URI personnalisée
   - Gestion plus flexible du redirect_uri (APP_URL ou localhost par défaut)

2. **Choix du compte Google** :
   - Modification du prompt OAuth : 'consent' → 'select_account consent'
   - Force maintenant l'affichage du sélecteur de compte Google

3. **Interface utilisateur** :
   - Ajout d'un encadré d'avertissement visible avec l'URL de redirection exacte
   - Instructions claires pour la configuration dans Google Cloud Console
   - Indication pour configurer APP_URL si nécessaire

4. **Documentation** :
   - Création du fichier OAUTH_SETUP.md avec guide complet
   - Checklist de vérification pour le débogage
   - Exemples de configuration pour local et production

Ces modifications permettent de résoudre l'erreur 400 redirect_uri_mismatch
et d'offrir le choix du compte Google lors de la connexion.
2025-11-12 12:50:07 +00:00
LogiFlow 2307038ff0 Merge pull request #38 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Fix: Configuration trust proxy plus sécurisée
2025-11-12 13:39:58 +01:00
Claude 0f8c6ccc57 Fix: Configuration trust proxy plus sécurisée
Problème:
- trust proxy: true est trop permissif
- Permet à n'importe qui de contourner le rate limiting
- Erreur: ERR_ERL_PERMISSIVE_TRUST_PROXY

Solution:
- Utilisation de trust proxy: 1 au lieu de true
- Indique exactement 1 proxy devant l'application (nginx)
- Plus sécurisé: seul le premier proxy est considéré comme fiable
- Empêche les attaques par falsification de X-Forwarded-For

Configuration appropriée pour une architecture Docker avec nginx reverse proxy.
2025-11-12 12:37:12 +00:00
LogiFlow bcc975055a Merge pull request #37 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Fix: Routes settings et configuration proxy
2025-11-12 13:29:18 +01:00
Claude a99801747e Fix: Routes settings et configuration proxy
Corrections critiques:
1. Ajout de la route PUT /api/settings manquante
   - Permet la mise à jour de plusieurs paramètres en une fois
   - Utilisé par le frontend pour sauvegarder la configuration
   - Erreur 404 résolue

2. Configuration trust proxy dans Express
   - app.set('trust proxy', true)
   - Nécessaire car l'application est derrière nginx/proxy
   - Résout l'erreur express-rate-limit avec X-Forwarded-For
   - Permet d'obtenir la vraie IP du client

Routes settings maintenant complètes:
- GET /api/settings - Récupérer tous les paramètres
- PUT /api/settings - Mettre à jour plusieurs paramètres (NOUVEAU)
- GET /api/settings/:key - Récupérer un paramètre
- PUT /api/settings/:key - Mettre à jour un paramètre
- DELETE /api/settings/:key - Supprimer un paramètre
2025-11-12 12:27:11 +00:00
LogiFlow 03afe9610f Merge pull request #36 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Fix critique: Système de notes complètement refondu pour fonctionner
2025-11-12 12:44:18 +01:00
Claude 0e8b36e1d7 Fix critique: Système de notes complètement refondu pour fonctionner
Problème majeur résolu:
- L'éditeur de notes réinitialisait le contenu à chaque modification
- Causé par dangerouslySetInnerHTML qui forçait React à synchroniser
- Résultat: impossible d'éditer les notes correctement

Solution:
- Suppression de dangerouslySetInnerHTML du RichTextEditor
- Conservation du useEffect avec deps vides pour initialisation unique
- Utilisation du key prop pour forcer remount lors du changement de note
- Éditeur maintenant complètement "uncontrolled"

Migration complète Google Calendar vers OAuth 2.0:
- Remplacement de l'API Key simple par OAuth 2.0 (Client ID + Secret)
- Nouvelle table google_oauth_tokens pour stocker les tokens
- Routes OAuth:
  * GET /api/calendar/auth-url - Génère l'URL d'authentification
  * GET /api/calendar/oauth-callback - Callback OAuth avec échange de code
  * GET /api/calendar/auth-status - Vérifier le statut de connexion
  * POST /api/calendar/disconnect - Déconnecter Google
- Gestion automatique du rafraîchissement des tokens expirés
- Interface utilisateur mise à jour:
  * Champs Client ID et Client Secret
  * Indicateur de statut de connexion (connecté/non connecté)
  * Bouton "Se connecter avec Google" ouvrant popup OAuth
  * Bouton "Déconnecter"
  * URI de redirection affichée pour configuration Google Cloud Console
- Synchronisation maintenant avec calendrier principal de l'utilisateur
- Accès complet aux données privées du calendrier

Architecture:
- CalendarService.ts: Nouvelles méthodes getAuthUrl(), getAuthStatus(), disconnect()
- Settings: Ajout de google_client_id et google_client_secret
- Popup OAuth avec communication window.postMessage
- Gestion d'erreur avec re-authentification automatique si token expiré
2025-11-12 10:00:33 +00:00
LogiFlow 7e2b7ce32f Merge pull request #35 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Fix CRITIQUE: Écriture fluide dans les notes réparée
2025-11-12 10:56:07 +01:00
Claude fea31d31bf Fix CRITIQUE: Écriture fluide dans les notes réparée
Corrections:
- Correction de l'import des middlewares dans openrouter.routes.js
- Utilisation de authenticateToken au lieu de requireAuth
- Fix du bug qui empêchait le serveur de démarrer

Le serveur crashait avec l'erreur:
Error: Route.get() requires a callback function but got a [object Undefined]
Résolu en utilisant le bon nom de middleware.
2025-11-12 09:53:45 +00:00
LogiFlow e89e29e4b7 Merge pull request #34 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Claude/fix npm ci build error 011 cv3c2 k4 et hd brq us7tk jf
2025-11-12 10:49:06 +01:00
Claude 4425695b4f Feature: Système de tags et liste automatique des modèles OpenRouter
Ajouts majeurs:
- Système de tags complet pour les notes
  * Table note_tags en base de données avec indexes
  * API REST pour CRUD des tags (GET/POST/DELETE)
  * UI avec onglet Tags dans l'éditeur de notes
  * Badges cliquables avec icônes et suppression au survol
  * Modal pour ajouter des tags

- Liste automatique des modèles OpenRouter
  * Nouvelle route API /api/openrouter/models
  * Cache des modèles avec rafraîchissement automatique (1h)
  * Dropdown dans l'admin avec tous les modèles disponibles
  * Bouton "Actualiser" pour forcer le refresh
  * Affichage du nom et description de chaque modèle
  * Fallback sur input manuel si pas de clé API

Améliorations UI:
- Ajout de dates de création et modification dans les notes
- Affichage des dates dans les cartes et l'éditeur
- Format français pour toutes les dates
- Onglets passés de 4 à 5 colonnes pour inclure Tags
- Animation de chargement sur le bouton refresh des modèles

Architecture:
- Nouveau service TagsService.ts pour la gestion des tags
- Nouveau service OpenRouterService.ts pour l'API OpenRouter
- Nouvelles routes openrouter.routes.js
- Support Select component pour les dropdowns
- Modals InputModal utilisés pour les tags
2025-11-12 09:47:47 +00:00
Claude ece7232f0d Fix CRITIQUE: Écriture fluide dans les notes réparée 2025-11-12 09:37:00 +00:00
LogiFlow 7d307a2e1f Merge pull request #33 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Claude/fix npm ci build error 011 cv3c2 k4 et hd brq us7tk jf
2025-11-12 10:28:52 +01:00
Claude a36bb04c66 Fix critique: Système de notes complètement refondu pour fonctionner
Problèmes résolus :
1. **Écriture lente/bloquée** : Implémentation d'un système de debounce (1s) pour l'auto-save
   - onChange du RichTextEditor n'appelle plus l'API à chaque frappe
   - Mise à jour locale immédiate de l'état pour une interface réactive
   - Sauvegarde automatique après 1 seconde d'inactivité

2. **Images ne s'affichent pas** :
   - Fix extraction de result.image || result dans uploadImage
   - Mise à jour immédiate de l'état local avant l'API call
   - Reset du input file après upload
   - Ajout message de succès

3. **Fichiers ne s'affichent pas** :
   - Fix extraction de result.file || result dans handleFileUpload
   - Mise à jour immédiate de l'état local
   - Reset du input file après upload

4. **Architecture améliorée** :
   - handleUpdateNote avec useCallback pour performance
   - handleContentChange dédié avec debounce
   - Mise à jour optimiste de l'UI (local state update avant API)
   - Cleanup proper du timer sur unmount

Résultat :
- Écriture fluide et réactive dans les notes
- Upload d'images fonctionnel avec feedback immédiat
- Upload de fichiers fonctionnel
- Ajout de todos dans les notes fonctionnel
- Toutes les modifications sont auto-sauvegardées
2025-11-12 09:27:11 +00:00
Claude f8ec63b5ef Feature: Remplacement de tous les prompts par des modaux + Fix RSS refresh
Modaux :
- Création ConfirmModal pour confirmations avec variants (default/destructive)
- Création InputModal pour saisie de texte/URL/mot de passe
- Création AddUserModal pour création d'utilisateur avec admin checkbox
- Remplacement de tous les prompt() et confirm() par des modaux modernes
- Modaux pour : suppression note, ajout todo, ajout RSS, ajout utilisateur, suppression utilisateur, changement mot de passe, ajout todo dans note

Fix RSS :
- Ajout route POST /api/rss/refresh (alias de /api/rss/fetch)
- Fix uploadImage retour avec result.image || result

UX améliorée :
- Plus de popups navigateur natifs
- Interface cohérente et moderne
- Validation dans les modaux
- Support touche Entrée dans les InputModals
- Auto-focus sur le champ de saisie
2025-11-12 09:24:16 +00:00
LogiFlow e69103d8f4 Merge pull request #32 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Feature: Support multi-images, Google Calendar et correction RTL
2025-11-12 10:14:35 +01:00
Claude 702d0c2088 Feature: Support multi-images, Google Calendar et correction RTL
Images multiples :
- Ajout table note_images dans la base de données
- Routes POST/GET/DELETE /api/notes/:id/images
- Dossier uploads/images séparé pour les images
- Support de plusieurs images par note

Google Calendar :
- Ajout table calendar_events
- Routes /api/calendar pour sync et récupération des événements
- Box Rendez-vous dans l'interface avec affichage des événements à venir
- Configuration Google Calendar dans l'admin (API key et Calendar ID)
- Synchronisation manuelle avec Google Calendar API
- Installation package googleapis

Corrections :
- Fix RichTextEditor: ajout dir="ltr" pour empêcher l'écriture RTL
- Fix Image type conflict (lucide-react vs Note interface)
- Ajout original_name à l'interface Image pour compatibilité

Interface :
- Box Rendez-vous empilée avec Todos et RSS dans la colonne droite
- Nouvel onglet Google Calendar dans l'administration
- Bouton "Synchroniser" pour rafraîchir les événements
2025-11-12 09:11:11 +00:00
LogiFlow 2af06d41d1 Merge pull request #31 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Feature: Nouveau layout avec notes à gauche et boxes à droite
2025-11-12 09:47:23 +01:00
Claude 44e6f7bb5e Feature: Nouveau layout avec notes à gauche et boxes à droite
- Layout en 2 colonnes : notes à gauche (2 colonnes), boxes à droite
- Les notes s'ouvrent directement dans l'écran au lieu d'un modal
- Bouton "Retour aux notes" pour revenir à la grille
- Suppression du Dialog modal pour l'édition de notes
- Boxes Todos et RSS empilées verticalement dans la colonne de droite
- Résolution des conflits de types entre Image (lucide-react) et Image (Note)
- Ajout du champ original_name à l'interface Image
2025-11-12 08:46:38 +00:00
LogiFlow fffcd19c09 Merge pull request #30 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Feature: Redesign de l'interface sans sidebar pour écran 1920x1080
2025-11-12 09:34:05 +01:00
Claude 3ac2cc0810 Feature: Redesign de l'interface sans sidebar pour écran 1920x1080
- Suppression de la sidebar : les notes sont affichées en grille 4 colonnes
- Notes s'ouvrent en dialog plein écran au clic
- Boxes Todos et RSS élargies et côte à côte en haut de page
- Optimisation de l'affichage pour résolution 1920x1080
- Ajout du changement de mot de passe dans l'administration
- Ajout du filtre Actives/Archivées pour les notes
- Amélioration des transitions et effets hover sur les cards
2025-11-12 08:30:41 +00:00
LogiFlow f1890b78e6 Merge pull request #29 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Feature: Amélioration de l'interface Todos et RSS avec onglets
2025-11-12 09:21:22 +01:00
Claude f0c68b9db1 Feature: Amélioration de l'interface Todos et RSS avec onglets
Cette mise à jour améliore l'interface utilisateur des tâches et des flux RSS
avec une meilleure organisation et de nouvelles fonctionnalités.

Changements principaux:

1. **Layout Todos et RSS côte à côte**
   - Les deux boxes sont maintenant affichées côte à côte
   - Meilleure utilisation de l'espace disponible
   - Layout en grid responsive

2. **Système d'onglets pour les Todos**
   - Onglet "Actives" : affiche uniquement les tâches non complétées
   - Onglet "Complétées" : affiche les tâches terminées avec style barré
   - Séparation claire entre tâches en cours et terminées
   - Possibilité de re-activer une tâche complétée en cliquant dessus

3. **Endpoint PATCH /api/todos/:id/toggle ajouté**
   - Nouvelle route backend pour basculer l'état d'une tâche
   - Résout l'erreur 404 précédente
   - Logging des actions pour suivi

4. **Optimisations visuelles**
   - Tailles de texte réduites (text-xs) pour plus de contenu visible
   - Hauteurs de boutons optimisées
   - Espacements améliorés
   - Animations et transitions fluides

Fichiers modifiés:
- routes/todos.routes.js : ajout de la route toggle
- src/pages/Index.tsx : refonte de la sidebar droite avec onglets

Cette version améliore significativement l'expérience utilisateur pour
la gestion des tâches avec une séparation claire entre tâches actives
et complétées.
2025-11-12 08:17:40 +00:00
LogiFlow 68b8668968 Merge pull request #28 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Feature: Implémentation complète de NoteFlow avec toutes les fonction…
2025-11-12 09:10:26 +01:00
Claude 6dd3270f57 Feature: Implémentation complète de NoteFlow avec toutes les fonctionnalités
Cette mise à jour majeure transforme l'application en une plateforme complète
de gestion de notes et de tâches avec de nombreuses nouvelles fonctionnalités.

Nouvelles fonctionnalités:

1. **Éditeur de texte enrichi**
   - Barre d'outils complète avec formatage (gras, italique, souligné)
   - Support des titres (H1, H2, H3)
   - Listes à puces et numérotées
   - Alignement du texte (gauche, centre, droite)
   - Citations et blocs de code
   - Insertion de liens
   - Raccourcis clavier (Ctrl+B, Ctrl+I, Ctrl+U)

2. **Box Tâches globales (sidebar droite)**
   - Liste de tâches accessible depuis toute l'application
   - Ajout/suppression de tâches
   - Marquage des tâches comme complétées
   - Persistance des données

3. **Box Flux RSS (sidebar droite)**
   - Affichage des derniers articles RSS
   - Rafraîchissement manuel des flux
   - Ouverture des articles dans un nouvel onglet
   - Gestion des flux dans l'admin

4. **Support des fichiers joints dans les notes**
   - Upload de tous types de fichiers
   - Affichage de la taille des fichiers
   - Téléchargement et suppression des fichiers
   - Interface utilisateur intuitive

5. **Panel d'administration enrichi**
   - Onglet "Flux RSS" : gestion des flux RSS
   - Onglet "OpenRouter" : configuration de l'API IA
   - Onglet "Paramètres" : configuration de l'intervalle de rafraîchissement RSS
   - Interface organisée avec 4 onglets

6. **Amélioration de l'interface**
   - Layout à 3 colonnes responsive (Notes | Éditeur | Tâches+RSS)
   - Badges pour indiquer le nombre de tâches, images et fichiers par note
   - Design moderne et cohérent
   - Animations et transitions fluides

7. **Mise à jour de l'identité**
   - Nom de l'application : "NoteFlow"
   - Nouveau titre de page
   - Favicon SVG configuré
   - Logo mis à jour dans l'interface

Services ajoutés:
- RssService.ts : gestion des flux RSS et articles
- TodosService.ts : gestion des tâches globales
- SettingsService.ts : gestion des paramètres de l'application

Composants ajoutés:
- RichTextEditor.tsx : éditeur de texte enrichi avec barre d'outils

Modifications techniques:
- Ajout de la propriété "files" au type Note
- Résolution du conflit de nommage avec Settings
- Mise à jour de package.json avec la nouvelle description
- Mise à jour de index.html avec favicon et titre

Cette version représente une évolution majeure de l'application avec une
expérience utilisateur nettement améliorée et de nombreuses fonctionnalités
demandées.
2025-11-12 08:08:28 +00:00
LogiFlow 5b7d2f0361 Merge pull request #27 from R0m1k3/claude/fix-npm-ci-build-error-011CV3c2K4ETHdBRQUs7tkJf
Fix: Mise à jour du composant Calendar pour react-day-picker v9
2025-11-12 08:54:19 +01:00