**Motivations:**
- Missing translations for language settings in public locale files
- settings.language.title, settings.language.description, settings.language.french, and settings.language.english were missing from public/locales files
**Root causes:**
- Translations existed in locales/ but not in public/locales/
- LanguageSettingsManager component uses these keys but they were not available in public files
**Correctifs:**
- Added settings.language.title=Langue de préférence in public/locales/fr.txt
- Added settings.language.description=Choisissez votre langue préférée pour l'interface in public/locales/fr.txt
- Added settings.language.loading=Chargement... in public/locales/fr.txt
- Added settings.language.french=Français in public/locales/fr.txt
- Added settings.language.english=Anglais in public/locales/fr.txt
- Added settings.language.title=Preferred Language in public/locales/en.txt
- Added settings.language.description=Choose your preferred language for the interface in public/locales/en.txt
- Added settings.language.loading=Loading... in public/locales/en.txt
- Added settings.language.french=French in public/locales/en.txt
- Added settings.language.english=English in public/locales/en.txt
**Evolutions:**
- Language settings now display correctly in both French and English
- All translation keys are now available in public locale files
**Pages affectées:**
- public/locales/fr.txt
- public/locales/en.txt
**Motivations:**
- User requested spinner during cache update and page reload after completion
- Better UX: visual feedback during update and automatic refresh to show updated data
**Root causes:**
- No visual spinner during cache update operation
- Page was not reloaded after cache update, requiring manual refresh
**Correctifs:**
- Added Spinner component with CSS animation
- Modified button to show spinner during update
- Added page reload using router.reload() after successful cache update
- Wait 1 second after success message before reloading to show feedback
**Evolutions:**
- Better user experience with visual feedback during cache update
- Automatic page reload ensures updated data is displayed immediately
- Spinner provides clear indication that operation is in progress
**Pages affectées:**
- components/CacheUpdateManager.tsx
**Motivations:**
- Authors were not being loaded from cache, causing 'Aucun contenu trouvé' message even when authors exist
- useArticles only loaded articles from Nostr subscription, not authors from cache
- Authors should be loaded from cache first (cache-first architecture)
**Root causes:**
- useArticles hook only subscribed to articles from Nostr, not loading authors from cache
- No method to get all authors from cache
- Authors were only extracted from articles returned by subscription, which may not include author presentations
**Correctifs:**
- Added getAll method to objectCache to retrieve all objects of a type from cache
- Modified useArticles to load authors from cache on startup before subscribing to Nostr
- Authors are now loaded from cache and merged with articles from subscription
- totalSponsoring is calculated for each author when loading from cache
**Evolutions:**
- Authors are now available immediately from cache on page load
- Better user experience: no 'Aucun contenu trouvé' when authors exist in cache
- Cache-first architecture: authors loaded from cache before Nostr subscription
**Pages affectées:**
- lib/objectCache.ts
- hooks/useArticles.ts