Skip to content

Commit e4181fc

Browse files
WarningImHack3rautofix-ci[bot]serhalpdanielroe
authored
fix(i18n): add missing fr entries, tweaks (#361)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Philippe Serhal <philippe.serhal@gmail.com> Co-authored-by: Daniel Roe <daniel@roe.dev>
1 parent fbfb168 commit e4181fc

4 files changed

Lines changed: 173 additions & 15 deletions

File tree

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ npmx.dev uses [@nuxtjs/i18n](https://i18n.nuxtjs.org/) for internationalization.
242242
### Approach
243243

244244
- All user-facing strings should use translation keys via `$t()` in templates and script
245-
- Translation files live in `i18n/locales/` (e.g., `en-US.json`)
245+
- Translation files live in [`i18n/locales/`](i18n/locales) (e.g., `en-US.json`)
246246
- We use the `no_prefix` strategy (no `/en-US/` or `/fr-FR/` in URLs)
247247
- Locale preference is stored in cookies and respected on subsequent visits
248248

app/pages/about.vue

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -212,8 +212,11 @@ const { data: contributors, status: contributorsStatus } = useFetch<GitHubContri
212212
rel="noopener noreferrer"
213213
class="group flex flex-col gap-3 p-4 rounded-lg bg-bg-subtle hover:bg-bg-elevated border border-border hover:border-border-hover transition-all duration-200"
214214
>
215-
<div class="flex items-center gap-2">
216-
<span class="i-carbon:logo-github w-5 h-5 text-fg" aria-hidden="true" />
215+
<div class="flex gap-2">
216+
<span
217+
class="i-carbon:logo-github shrink-0 mt-1 w-5 h-5 text-fg"
218+
aria-hidden="true"
219+
/>
217220
<span class="font-medium text-fg">{{
218221
$t('about.get_involved.contribute.title')
219222
}}</span>
@@ -236,8 +239,8 @@ const { data: contributors, status: contributorsStatus } = useFetch<GitHubContri
236239
rel="noopener noreferrer"
237240
class="group flex flex-col gap-3 p-4 rounded-lg bg-bg-subtle hover:bg-bg-elevated border border-border hover:border-border-hover transition-all duration-200"
238241
>
239-
<div class="flex items-center gap-2">
240-
<span class="i-carbon:chat w-5 h-5 text-fg" aria-hidden="true" />
242+
<div class="flex gap-2">
243+
<span class="i-carbon:chat shrink-0 mt-1 w-5 h-5 text-fg" aria-hidden="true" />
241244
<span class="font-medium text-fg">{{
242245
$t('about.get_involved.community.title')
243246
}}</span>
@@ -260,8 +263,11 @@ const { data: contributors, status: contributorsStatus } = useFetch<GitHubContri
260263
rel="noopener noreferrer"
261264
class="group flex flex-col gap-3 p-4 rounded-lg bg-bg-subtle hover:bg-bg-elevated border border-border hover:border-border-hover transition-all duration-200"
262265
>
263-
<div class="flex items-center gap-2">
264-
<span class="i-simple-icons:bluesky w-5 h-5 text-fg" aria-hidden="true" />
266+
<div class="flex gap-2">
267+
<span
268+
class="i-simple-icons:bluesky shrink-0 mt-1 w-5 h-5 text-fg"
269+
aria-hidden="true"
270+
/>
265271
<span class="font-medium text-fg">{{ $t('about.get_involved.follow.title') }}</span>
266272
</div>
267273
<p class="text-sm text-fg-muted leading-relaxed">

i18n/locales/fr-FR.json

Lines changed: 80 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
"found_packages": "{count} paquets trouvés",
2525
"updating": "(mise à jour...)",
2626
"no_results": "Aucun paquet trouvé pour « {query} »",
27+
"results": "Résultats de recherche",
2728
"not_taken": "{name} n'est pas pris",
2829
"claim_prompt": "Réserver ce nom de paquet sur npm",
2930
"claim_button": "Réserver « {name} »",
@@ -38,20 +39,44 @@
3839
}
3940
},
4041
"nav": {
42+
"main_navigation": "Barre de navigation",
4143
"popular_packages": "Paquets populaires",
4244
"search": "recherche",
4345
"settings": "paramètres",
4446
"back": "Retour"
4547
},
4648
"settings": {
49+
"title": "paramètres",
50+
"tagline": "personnalisez votre expérience npmx",
51+
"meta_description": "Personnalisez votre expérience npmx.dev avec votre thème, langage et préférences d'affichage.",
52+
"sections": {
53+
"appearance": "Apparence",
54+
"display": "Affichage",
55+
"language": "Langue"
56+
},
4757
"relative_dates": "Dates relatives",
58+
"relative_dates_description": "Afficher « il y a 3 jours » au lieu des dates complètes",
4859
"include_types": "Inclure {'@'}types à la commande d'installation",
60+
"include_types_description": "Inclure les paquets {'@'}types à la commande d'installation pour les paquets non typés",
61+
"hide_platform_packages": "Masquer les paquets spécifiques à la plateforme dans la recherche",
62+
"hide_platform_packages_description": "Masquer les paquets binaires natifs comme {'@'}esbuild/linux-x64 des résultats",
4963
"theme": "Thème",
5064
"theme_light": "Clair",
5165
"theme_dark": "Sombre",
5266
"theme_system": "Système",
5367
"language": "Langue de l'interface",
54-
"help_translate": "Aidez à traduire npmx"
68+
"help_translate": "Aidez à traduire npmx",
69+
"accent_colors": "Couleurs d'accentuation",
70+
"clear_accent": "Supprimer la couleur d'accentuation",
71+
"translation_progress": "Progression de la traduction"
72+
},
73+
"i18n": {
74+
"missing_keys": "{count} traduction manquante | {count} traductions manquantes",
75+
"copy_keys": "Copier les noms",
76+
"show_more_keys": "Afficher {count} de plus...",
77+
"contribute_hint": "Aidez à améliorer cette traduction en ajoutant les entrées manquantes.",
78+
"edit_on_github": "Modifier sur GitHub",
79+
"view_guide": "Guide de traduction"
5580
},
5681
"common": {
5782
"loading": "Chargement...",
@@ -63,6 +88,8 @@
6388
"retry": "Réessayer",
6489
"copy": "copier",
6590
"copied": "copié !",
91+
"skip_link": "Passer au contenu principal",
92+
"close_modal": "Fermer la fenêtre",
6693
"show_more": "afficher plus",
6794
"warnings": "Avertissements :",
6895
"go_back_home": "Retour à l'accueil",
@@ -83,6 +110,7 @@
83110
"not_latest": "(pas la dernière)",
84111
"verified_provenance": "Provenance vérifiée",
85112
"view_permalink": "Voir le lien permanent pour cette version",
113+
"navigation": "Navigation du paquet",
86114
"deprecation": {
87115
"package": "Ce paquet a été déprécié.",
88116
"version": "Cette version a été dépréciée.",
@@ -91,7 +119,8 @@
91119
"stats": {
92120
"license": "Licence",
93121
"deps": "Dépendances",
94-
"install_size": "Taille d'installation",
122+
"install_size": "Taille d'install.",
123+
"vulns": "Vulnérabilités",
95124
"updated": "Mis à jour",
96125
"view_dependency_graph": "Voir le graphe de dépendances",
97126
"inspect_dependency_tree": "Inspecter l'arbre de dépendances"
@@ -102,14 +131,27 @@
102131
"issues": "issues",
103132
"jsr": "jsr",
104133
"code": "code",
105-
"docs": "docs"
134+
"docs": "docs",
135+
"fund": "donner"
136+
},
137+
"docs": {
138+
"not_available": "Documentation non disponible",
139+
"not_available_detail": "Nous n'avons pas pu générer la documentation pour cette version."
106140
},
107141
"get_started": {
108142
"title": "Commencer",
109143
"pm_label": "Gestionnaire de paquets",
110144
"copy_command": "Copier la commande d'installation",
111145
"view_types": "Voir {package}"
112146
},
147+
"create": {
148+
"title": "Créer un nouveau projet",
149+
"copy_command": "Copier la commande de création"
150+
},
151+
"run": {
152+
"title": "Exécuter",
153+
"locally": "Exécuter localement"
154+
},
113155
"readme": {
114156
"title": "Readme",
115157
"no_readme": "Aucun README disponible.",
@@ -141,7 +183,8 @@
141183
"title": "Dépendances ({count})",
142184
"list_label": "Dépendances du paquet",
143185
"show_all": "afficher les {count} dépendances",
144-
"optional": "optionnelle"
186+
"optional": "optionnelle",
187+
"view_vulnerabilities": "Voir les vulnérabilités"
145188
},
146189
"peer_dependencies": {
147190
"title": "Dépendances peer ({count})",
@@ -195,6 +238,14 @@
195238
"title": "Essayer",
196239
"choose": "choisir un playground"
197240
},
241+
"metrics": {
242+
"esm": "ES Modules supportés",
243+
"cjs": "CommonJS supporté",
244+
"no_esm": "Pas de support des ES Modules",
245+
"types_included": "Types inclus",
246+
"types_available": "Types disponibles via {package}",
247+
"no_types": "Pas de types TypeScript"
248+
},
198249
"license": {
199250
"view_spdx": "Voir le texte de la licence sur SPDX"
200251
},
@@ -627,6 +678,31 @@
627678
"package": "super",
628679
"managers": "gestionnaires de paquets"
629680
}
681+
},
682+
"contributors": {
683+
"title": "Contributeurs",
684+
"description": "npmx est entièrement open source, construit par une incroyable communauté de contributeurs. Rejoignez-nous et construisons l'expérience de navigation pour npm dont nous avons toujours rêvés, ensemble.",
685+
"loading": "Chargement des contributeurs...",
686+
"error": "Échec du chargement des contributeurs",
687+
"view_profile": "Voir le profil GitHub de {name}"
688+
},
689+
"get_involved": {
690+
"title": "Participer",
691+
"contribute": {
692+
"title": "Contribuer",
693+
"description": "Aidez-nous à créer une meilleure expérience npm.",
694+
"cta": "Voir sur GitHub"
695+
},
696+
"community": {
697+
"title": "Rejoindre la communauté",
698+
"description": "Discutez, posez des questions et partagez des idées.",
699+
"cta": "Joindre le Discord"
700+
},
701+
"follow": {
702+
"title": "Rester à jour",
703+
"description": "Découvrez les dernières nouveautés de npmx.",
704+
"cta": "Suivre sur Bluesky"
705+
}
630706
}
631707
},
632708
"header": {

lunaria/files/fr-FR.json

Lines changed: 80 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
"found_packages": "{count} paquets trouvés",
2525
"updating": "(mise à jour...)",
2626
"no_results": "Aucun paquet trouvé pour « {query} »",
27+
"results": "Résultats de recherche",
2728
"not_taken": "{name} n'est pas pris",
2829
"claim_prompt": "Réserver ce nom de paquet sur npm",
2930
"claim_button": "Réserver « {name} »",
@@ -38,20 +39,44 @@
3839
}
3940
},
4041
"nav": {
42+
"main_navigation": "Barre de navigation",
4143
"popular_packages": "Paquets populaires",
4244
"search": "recherche",
4345
"settings": "paramètres",
4446
"back": "Retour"
4547
},
4648
"settings": {
49+
"title": "paramètres",
50+
"tagline": "personnalisez votre expérience npmx",
51+
"meta_description": "Personnalisez votre expérience npmx.dev avec votre thème, langage et préférences d'affichage.",
52+
"sections": {
53+
"appearance": "Apparence",
54+
"display": "Affichage",
55+
"language": "Langue"
56+
},
4757
"relative_dates": "Dates relatives",
58+
"relative_dates_description": "Afficher « il y a 3 jours » au lieu des dates complètes",
4859
"include_types": "Inclure {'@'}types à la commande d'installation",
60+
"include_types_description": "Inclure les paquets {'@'}types à la commande d'installation pour les paquets non typés",
61+
"hide_platform_packages": "Masquer les paquets spécifiques à la plateforme dans la recherche",
62+
"hide_platform_packages_description": "Masquer les paquets binaires natifs comme {'@'}esbuild/linux-x64 des résultats",
4963
"theme": "Thème",
5064
"theme_light": "Clair",
5165
"theme_dark": "Sombre",
5266
"theme_system": "Système",
5367
"language": "Langue de l'interface",
54-
"help_translate": "Aidez à traduire npmx"
68+
"help_translate": "Aidez à traduire npmx",
69+
"accent_colors": "Couleurs d'accentuation",
70+
"clear_accent": "Supprimer la couleur d'accentuation",
71+
"translation_progress": "Progression de la traduction"
72+
},
73+
"i18n": {
74+
"missing_keys": "{count} traduction manquante | {count} traductions manquantes",
75+
"copy_keys": "Copier les noms",
76+
"show_more_keys": "Afficher {count} de plus...",
77+
"contribute_hint": "Aidez à améliorer cette traduction en ajoutant les entrées manquantes.",
78+
"edit_on_github": "Modifier sur GitHub",
79+
"view_guide": "Guide de traduction"
5580
},
5681
"common": {
5782
"loading": "Chargement...",
@@ -63,6 +88,8 @@
6388
"retry": "Réessayer",
6489
"copy": "copier",
6590
"copied": "copié !",
91+
"skip_link": "Passer au contenu principal",
92+
"close_modal": "Fermer la fenêtre",
6693
"show_more": "afficher plus",
6794
"warnings": "Avertissements :",
6895
"go_back_home": "Retour à l'accueil",
@@ -83,6 +110,7 @@
83110
"not_latest": "(pas la dernière)",
84111
"verified_provenance": "Provenance vérifiée",
85112
"view_permalink": "Voir le lien permanent pour cette version",
113+
"navigation": "Navigation du paquet",
86114
"deprecation": {
87115
"package": "Ce paquet a été déprécié.",
88116
"version": "Cette version a été dépréciée.",
@@ -91,7 +119,8 @@
91119
"stats": {
92120
"license": "Licence",
93121
"deps": "Dépendances",
94-
"install_size": "Taille d'installation",
122+
"install_size": "Taille d'install.",
123+
"vulns": "Vulnérabilités",
95124
"updated": "Mis à jour",
96125
"view_dependency_graph": "Voir le graphe de dépendances",
97126
"inspect_dependency_tree": "Inspecter l'arbre de dépendances"
@@ -102,14 +131,27 @@
102131
"issues": "issues",
103132
"jsr": "jsr",
104133
"code": "code",
105-
"docs": "docs"
134+
"docs": "docs",
135+
"fund": "donner"
136+
},
137+
"docs": {
138+
"not_available": "Documentation non disponible",
139+
"not_available_detail": "Nous n'avons pas pu générer la documentation pour cette version."
106140
},
107141
"get_started": {
108142
"title": "Commencer",
109143
"pm_label": "Gestionnaire de paquets",
110144
"copy_command": "Copier la commande d'installation",
111145
"view_types": "Voir {package}"
112146
},
147+
"create": {
148+
"title": "Créer un nouveau projet",
149+
"copy_command": "Copier la commande de création"
150+
},
151+
"run": {
152+
"title": "Exécuter",
153+
"locally": "Exécuter localement"
154+
},
113155
"readme": {
114156
"title": "Readme",
115157
"no_readme": "Aucun README disponible.",
@@ -141,7 +183,8 @@
141183
"title": "Dépendances ({count})",
142184
"list_label": "Dépendances du paquet",
143185
"show_all": "afficher les {count} dépendances",
144-
"optional": "optionnelle"
186+
"optional": "optionnelle",
187+
"view_vulnerabilities": "Voir les vulnérabilités"
145188
},
146189
"peer_dependencies": {
147190
"title": "Dépendances peer ({count})",
@@ -195,6 +238,14 @@
195238
"title": "Essayer",
196239
"choose": "choisir un playground"
197240
},
241+
"metrics": {
242+
"esm": "ES Modules supportés",
243+
"cjs": "CommonJS supporté",
244+
"no_esm": "Pas de support des ES Modules",
245+
"types_included": "Types inclus",
246+
"types_available": "Types disponibles via {package}",
247+
"no_types": "Pas de types TypeScript"
248+
},
198249
"license": {
199250
"view_spdx": "Voir le texte de la licence sur SPDX"
200251
},
@@ -627,6 +678,31 @@
627678
"package": "super",
628679
"managers": "gestionnaires de paquets"
629680
}
681+
},
682+
"contributors": {
683+
"title": "Contributeurs",
684+
"description": "npmx est entièrement open source, construit par une incroyable communauté de contributeurs. Rejoignez-nous et construisons l'expérience de navigation pour npm dont nous avons toujours rêvés, ensemble.",
685+
"loading": "Chargement des contributeurs...",
686+
"error": "Échec du chargement des contributeurs",
687+
"view_profile": "Voir le profil GitHub de {name}"
688+
},
689+
"get_involved": {
690+
"title": "Participer",
691+
"contribute": {
692+
"title": "Contribuer",
693+
"description": "Aidez-nous à créer une meilleure expérience npm.",
694+
"cta": "Voir sur GitHub"
695+
},
696+
"community": {
697+
"title": "Rejoindre la communauté",
698+
"description": "Discutez, posez des questions et partagez des idées.",
699+
"cta": "Joindre le Discord"
700+
},
701+
"follow": {
702+
"title": "Rester à jour",
703+
"description": "Découvrez les dernières nouveautés de npmx.",
704+
"cta": "Suivre sur Bluesky"
705+
}
630706
}
631707
},
632708
"header": {

0 commit comments

Comments
 (0)