diff --git a/web/src/locales/fr.json b/web/src/locales/fr.json
index 9f4ef970..b6b5e4b2 100644
--- a/web/src/locales/fr.json
+++ b/web/src/locales/fr.json
@@ -3,8 +3,8 @@
     "about": "À propos",
     "email": "Email",
     "password": "Mot de passe",
-    "repeat-password-short": "Repeat",
-    "repeat-password": "Repeat the password",
+    "repeat-password-short": "Répétez",
+    "repeat-password": "Répétez le mot de passe",
     "new-password": "Nouveau mot de passe",
     "repeat-new-password": "Répétez le nouveau mot de passe",
     "username": "Nom d'utilisateur",
@@ -44,12 +44,12 @@
     "fold": "Plier",
     "expand": "Développer",
     "image": "Image",
-    "link": "Link",
-    "vacuum": "Vacuum",
+    "link": "Lien",
+    "vacuum": "Nettoyer",
     "select": "Select",
     "avatar": "Avatar",
-    "database": "Database",
-    "mark": "Mark"
+    "database": "Base de données",
+    "mark": "Marquer"
   },
   "auth": {
     "signup-as-host": "S'inscrire en tant qu'hôte",
@@ -59,7 +59,7 @@
   "sidebar": {
     "daily-review": "Bilan quotidien",
     "resources": "Ressources",
-    "setting": "Réglage",
+    "setting": "Réglages",
     "archived": "Archivé"
   },
   "resource": {
@@ -75,8 +75,8 @@
     "rename": "Renommer",
     "warning-text-unused": "Etes-vous sûr de vouloir supprimer ces ressources inutilisées ? CETTE ACTION EST IRRÉVERSIBLE❗",
     "no-unused-resources": "Aucune ressource inutilisée",
-    "name": "Name",
-    "clear": "Clear"
+    "name": "Nom",
+    "clear": "Nettoyer"
   },
   "archived": {
     "archived-memos": "Mémos archivés",
@@ -91,7 +91,7 @@
     "only-image-supported": "Seul le fichier image est pris en charge.",
     "cant-empty": "Le contenu ne doit pas être vide",
     "local": "Local",
-    "resources": "Resources"
+    "resources": "Ressources"
   },
   "memo": {
     "view-detail": "Voir le détail",
@@ -101,7 +101,7 @@
       "private": "Privé",
       "protected": "Visible par les membres",
       "public": "Tous peuvent voir",
-      "disabled": "Public memos are disabled"
+      "disabled": "Les mémos publics sont désactivés"
     }
   },
   "memo-list": {
@@ -113,9 +113,9 @@
     "type": {
       "tag": "Tag",
       "type": "Type",
-      "text": "Text",
-      "display-time": "Display Time",
-      "visibility": "Visibility"
+      "text": "Texte",
+      "display-time": "Horodatage",
+      "visibility": "Visibilité"
     },
     "operator": {
       "contains": "Contient",
@@ -139,7 +139,7 @@
   },
   "setting": {
     "my-account": "Mon compte",
-    "preference": "Préférence",
+    "preference": "Préférences",
     "member": "Membre",
     "member-list": "Liste des membres",
     "system": "Système",
@@ -154,7 +154,7 @@
       "enable-folding-memo": "Activer le mémo pliable",
       "editor-font-style": "Style de police de l'éditeur",
       "mobile-editor-style": "Style de l'éditeur mobile",
-      "default-memo-sort-option": "Memo display time",
+      "default-memo-sort-option": "Tri par défaut des mémos",
       "created_ts": "Heure de création",
       "updated_ts": "Heure de mise à jour",
       "enable-double-click": "Activer le double-clic",
@@ -164,11 +164,11 @@
       "create-a-member": "Créer un membre"
     },
     "system-section": {
-      "server-name": "Server Name",
+      "server-name": "Nom du serveur",
       "customize-server": {
-        "title": "Customize Server",
-        "default": "Default is memos",
-        "icon-url": "Icon URL"
+        "title": "Serveur personnalisé",
+        "default": "Par défaut memos",
+        "icon-url": "URL de l'icône"
       },
       "database-file-size": "Taille de la base de données",
       "allow-user-signup": "Autoriser l'inscription des utilisateurs",
@@ -176,31 +176,31 @@
       "additional-script": "Script supplémentaire",
       "additional-style-placeholder": "Codes CSS supplémentaires",
       "additional-script-placeholder": "Codes JavaScript supplémentaires",
-      "disable-public-memos": "Disable public memos",
-      "display-with-updated-time": "Display with updated time"
+      "disable-public-memos": "Désactiver les commentaires publics",
+      "display-with-updated-time": "Afficher avec l'horodatage"
     },
     "storage-section": {
-      "delete-storage": "Delete Storage",
-      "storage-services-list": "Storage service list",
-      "create-a-service": "Create a service",
-      "update-a-service": "Update a service",
-      "warning-text": "Are you sure to delete this storage service? THIS ACTION IS IRREVERSIBLE❗"
+      "delete-storage": "Effacer le stockage",
+      "storage-services-list": "Liste des services de stockage",
+      "create-a-service": "Créer un service",
+      "update-a-service": "Mettre à jour un service",
+      "warning-text": "Etes-vous sûr de vouloir supprimer ce service de stockage ? CETTE ACTION EST IRRÉVERSIBLE❗"
     },
-    "storage": "Storage",
+    "storage": "Stockage",
     "sso": "SSO",
     "appearance-option": {
-      "system": "Follow system",
-      "light": "Always light",
-      "dark": "Always dark"
+      "system": "Identique au système",
+      "light": "Toujours clair",
+      "dark": "Toujours sombre"
     }
   },
   "amount-text": {
     "memo_one": "MEMO",
     "tag_one": "ÉTIQUETTE",
     "day_one": "JOUR",
-    "day_other": "DAYS",
-    "memo_other": "MEMOS",
-    "tag_other": "TAGS"
+    "day_other": "JOURS",
+    "memo_other": "ETIQUETTES",
+    "tag_other": "ETIQUETTES"
   },
   "message": {
     "no-memos": "pas de mémos 🌃",
@@ -228,19 +228,19 @@
     "invalid-resource-filename": "Nom de fichier invalide.",
     "click-to-save-the-image": "Cliquez pour enregistrer l'image",
     "generating-the-screenshot": "Génération de la capture d'écran...",
-    "count-selected-resources": "Total selected",
-    "too-short": "Too short",
-    "too-long": "Too long",
-    "not-allow-space": "Don't allow space",
-    "not-allow-chinese": "Don't allow chinese",
-    "succeed-vacuum-database": "Succeed to vacuum database",
-    "succeed-update-additional-style": "Succeed to update additional style",
-    "succeed-copy-resource-link": "Succeed to copy resource link to clipboard",
-    "succeed-update-customized-profile": "Succeed to update customized profile",
-    "succeed-update-additional-script": "Succeed to update additional script",
-    "update-succeed": "Update succeed",
-    "succeed-copy-code": "Succeed to copy code to clipboard.",
-    "page-not-found": "404 - Page Not Found 😥"
+    "count-selected-resources": "Total de la sélection",
+    "too-short": "Trop court",
+    "too-long": "Trop long",
+    "not-allow-space": "Espaces non acceptés",
+    "not-allow-chinese": "Caractères chinois non acceptés",
+    "succeed-vacuum-database": "Nettoyage de la base de données effectuée",
+    "succeed-update-additional-style": "Mise à jour des styles additionnels effectuée",
+    "succeed-copy-resource-link": "Copie du lien vers le presse-papier effectuée",
+    "succeed-update-customized-profile": "Mise à jour du profil effectuée",
+    "succeed-update-additional-script": "Mise à jour des scripts additionnels effectuée",
+    "update-succeed": "Mise à jour effectuée",
+    "succeed-copy-code": "Copie du code dans le presse-papier effectuée.",
+    "page-not-found": "404 - Page non trouvée 😥"
   },
   "days": {
     "monday": "Lundi",