fr.react.dev icon indicating copy to clipboard operation
fr.react.dev copied to clipboard

New French Translation Progress

Open gaearon opened this issue 2 years ago • 166 comments

Liste des mainteneurs

  • @tdd

À l’intention des nouveaux·elles traducteur·rices

Pour traduire une page :

  1. Vérifiez que personne d’autre n’a déjà pris la main dessus dans la liste de tâches et les commentaires ci-dessous.
  2. Commentez ci-dessous avec le nom de la page que vous voulez traduire. Ne traduisez qu’une page à la fois. @tdd reportera votre nom dans la liste de tâches.
  3. Envoyez une PR interne au fork et ajoutez-la à votre commentaire (@tdd reportera, pareil)

⚠️⚠️⚠️ Avant de continuer, lisez nos bonnes pratiques et le glossaire pour comprendre comment traduire au mieux divers sujets techniques et spécifiques à React.

Soyez diligent·e·s dans vos traductions ! Si vous vous apercevez que vous ne pouvez pas continuer ou juste aller au bout de votre page en cours, faites-le savoir à l'équipe pour que quelqu'un d'autre reprenne la main.

À l’intention des mainteneurs

Quand quelqu’un propose une traduction, mettez à jour cette issue avec son nom et le n° de la PR, par exemple :

  • [x] Home Page (@tesseralis) #12345

Quand les PRs sont fusionnées, pensez à cocher la case de la page !

Main Content

To do before releasing as an "official" translation. Please translate these pages first.

Note that each section has an index page, which needs to be translated too.

  • [x] Homepage (@tdd above-the-fold #449 then #568)

Learn React

  • [x] Quick Start (@tdd - index - #450)

    • [x] Tutorial: Tic Tac Toe (@tdd #546)
    • [x] Thinking in React (@tdd #508)
  • [x] Installation (@tdd #504)

    • [x] Start a New React Project (@emmadal #487)
    • [x] Add React to an Existing Project (@hakimLyon 27/05 #483)
    • [x] Editor Setup (@paulus85 #475)
    • [x] Using TypeScript (@tdd #559)
    • [x] React Developer Tools (@Ameliegre #479)
    • [x] React Compiler (@tdd #675)
  • [x] Describing the UI (@tdd #505)

    • [x] Your First Component (@tdd #506)
    • [x] Importing and Exporting Components (@YannBirba #494)
    • [x] Writing Markup with JSX (@tdd #538)
    • [x] JavaScript in JSX with Curly Braces (@tdd #539)
    • [x] Passing Props to a Component (@tdd #540)
    • [x] Conditional Rendering (@tdd #541)
    • [x] Rendering Lists (@tdd #543)
    • [x] Keeping Components Pure (@tdd #510)
    • [x] Your UI as a Tree (@tdd #606)
  • [x] Adding Interactivity (@pfongkye #468)

    • [x] Responding to Events (@pfongkye #498)
    • [x] State: A Component's Memory (@tdd #509)
    • [x] Render and Commit (@tdd #486)
    • [x] State as a Snapshot (@tdd #502)
    • [x] Queueing a Series of State Updates (@tdd #503)
    • [x] Updating Objects in State (@LaureRC #495)
    • [x] Updating Arrays in State (@LaureRC #542)
  • [x] Managing State (@KohdeAvekLeQ #458)

    • [x] Reacting to Input with State (@KohdeAvekLeQ #461)
    • [x] Choosing the State Structure (@KohdeAvekLeQ #513)
    • [x] Sharing State Between Components (@linsolas #515)
    • [x] Preserving and Resetting State (@linsolas #518)
    • [x] Extracting State Logic into a Reducer (@linsolas #497)
    • [x] Passing Data Deeply with Context (@linsolas #493)
    • [x] Scaling Up with Reducer and Context (@linsolas #511)
  • [x] Escape Hatches (@tdd #474)

    • [x] Referencing Values with Refs (@tdd #480)
    • [x] Manipulating the DOM with Refs (@tdd #485)
    • [x] Synchronizing with Effects (@tdd #457)
    • [x] You Might Not Need an Effect (@tdd #473)
    • [x] Lifecycle of Reactive Effects (@linsolas #491)
    • [x] Separating Events from Effects (@linsolas #471)
    • [x] Removing Effect Dependencies (@tdd #477)
    • [x] Reusing Logic with Custom Hooks (@linsolas #466)

API Reference

  • [x] react (chapter index) (@tdd #611)

    • [x] Hooks (@emmadal 27/04 #464)
    • [x] useActionState (@tdd #610)
    • [x] useCallback (@tdd #557)
    • [x] useContext (@linsolas #521)
    • [x] useDebugValue (@MatteoGauthier #507)
    • [x] useDeferredValue (@nina-alin #484)
    • [x] useEffect (@tdd #514)
    • [x] useId (@MatteoGauthier #467)
    • [x] useImperativeHandle (@tdd #500)
    • [x] useInsertionEffect (@tdd #516)
    • [x] useLayoutEffect (@tdd #517)
    • [x] useMemo (@tdd #558)
    • [x] useOptimistic (@tdd #610)
    • [x] useReducer (@linsolas #533)
    • [x] useRef (@tdd #501)
    • [x] useState (@nina-alin #490)
    • [x] useSyncExternalStore (@tdd #528)
    • [x] useTransition (@tdd #523)
  • [x] react: Components (@bastiendmt #465)

    • [x] <Fragment> (<>) (@bastiendmt #455 et #460)
    • [x] <Profiler> (@bastiendmt #469)
    • [x] <StrictMode> (@linsolas #569)
    • [x] <Suspense> (@tdd #519)
  • [x] react: APIs (@adevinwild #489)

    • [x] act (@tdd)
    • [x] cache (@tdd #587)
    • [x] createContext (@adevinwild #489)
    • [x] forwardRef (@tdd #512)
    • [x] lazy (@emmadal #522)
    • [x] memo (@emmadal #564)
    • [x] startTransition (@tdd #520)
    • [x] use (@linsolas #587)
    • [x] experimental_taintObjectReference (@tdd #602)
    • [x] experimental_taintUniqueValue (@tdd #603)
  • [x] react-dom: Hooks (@tdd #607)

    • [x] useFormStatus (@tdd #608)
  • [x] react-dom: Components (@tdd #524)

    • [x] Common (e.g. <div>) (@linsolas #584)
    • [x] <form> (@tdd #610)
    • [x] <input> (@nina-alin #577)
    • [x] <option> (@paulus85 #547)
    • [x] <progress> (@tdd #573)
    • [x] <select> (@tdd #574)
    • [x] <textarea> (@nina-alin #551)
    • [x] <link> (@tdd)
    • [x] <meta> (@tdd)
    • [x] <script> (@tdd)
    • [x] <style> (@tdd)
    • [x] <title> (@tdd)
  • [x] react-dom: APIs (@tdd #525)

    • [x] createPortal (@nina-alin #563)
    • [x] flushSync (@tdd #530)
    • [x] findDOMNode (@emmadal #582)
    • [x] hydrate (@tdd #531)
    • [x] preconnect (@tdd)
    • [x] prefetchDNS (@tdd)
    • [x] preinit (@tdd)
    • [x] preinitModule (@tdd)
    • [x] render (@tdd #532)
    • [x] unmountComponentAtNode (@tdd #537)
  • [x] react-dom/client: Client APIs (@tdd #526)

    • [x] createRoot (@tdd #561)
    • [x] hydrateRoot (@tdd #562)
  • [x] react-dom/server: Server APIs (@tdd #527)

    • [x] renderToNodeStream (@tdd #566)
    • [x] renderToPipeableStream (@tdd #570)
    • [x] renderToReadableStream (@tdd #571)
    • [x] renderToStaticMarkup (@tdd #535)
    • [x] renderToStaticNodeStream (@tdd #536)
    • [x] renderToString (@tdd #567)
  • [x] Rules of React: chapter index (@tdd)

    • [x] Components and Hooks must be pure (@tdd)
    • [x] React calls Components and hooks (@tdd)
    • [x] Rules of Hooks (@tdd)
  • [x] React Server Components (@tdd #673)

    • [x] Server Components (@tdd #673)
    • [x] Server Actions (@tdd #673)
    • [x] Directives (@tdd #560)
      • [x] 'use client' (@tdd #560, #613)
      • [x] 'use server' (@tdd #560, #612)

Navigation and UI

We suggest to leave most of the UI translation until the end. We plan to do some invasive changes to the website folder layout and components, so postponing this until your translation is almost complete would make it easier to merge the changes from our side later. It might make sense to translate the homepage above the fold early, but leave the rest for later. As individual pages get translated, you can change the page titles in the corresponding sidebar files. Finally, when you're translating the navigation, make sure to test both desktop and mobile layouts.

  • [x] Homepage (currently in HomeContent.js)
  • [x] Sidebars (currently in src/sidebar*.json)
  • [x] Top-level navigation (currently in TopNav.tsx)

When You're Ready...

After everything above is translated, add your language to deployedLanguages in Seo.tsx of the original reactjs/react.dev repository.

Secondary Content

These API pages should ideally be translated too, but they're less urgent and can be done after the others:

  • [x] Legacy React APIs (@tdd #549)
    • [x] Children (@tdd #578)
    • [x] cloneElement (@tdd #576)
    • [x] Component (@tdd #580)
    • [x] createElement (@tdd #550)
    • [x] createFactory (@tdd #552)
    • [x] createRef (@tdd #553)
    • [x] isValidElement (@tdd #554)
    • [x] PureComponent (@tdd #555)

Optional Content

These aren't the main translation targets, but if you'd like to do them, feel free to expand the list to include their subpages:

  • [x] Community (index page - @tdd #572)
    • [x] Conferences (@tdd #572)
    • [x] Meetups (@tdd #572)
    • [x] Videos (@tdd #572 et #589)
    • [x] Meet the team (@tdd #572 et #588)
    • [x] Doc contributors (@tdd #572)
    • [x] Translations (@tdd)
    • [x] Acknowledgments (@tdd #572)
    • [x] Versioning policy (@linsolas #599)
  • [x] Blog (index page - @tdd #572)
    • [x] React Compiler Beta Release (@tdd #675)
    • [x] React Conf 2024 Recap (@tdd)
    • [x] React 19 RC (@tdd #675)
    • [x] React 19 RC Upgrade Guide (@tdd #675)
    • [x] React Labs: February 2024 (@tdd)
    • [x] React Canaries (2023-05-03) (@tdd #581)
    • [x] React Labs: March 2023 (2023-03-22) (@tdd #583)
    • [x] Introducing react.dev (2023-03-16) (@tdd #591)
    • [x] React Labs: June 2022 (2022-06-15) (@tdd #592)
    • [x] React v18.0 (2022-03-29) (@tdd #593)
    • [x] How to upgrade to React 18 (2022-03-08) (@tdd #594)
    • [x] React Conf 2021 Recap (2021-12-17 @tdd #595)
    • [x] The plan for React 18 (2021-06-08 @tdd #596)
    • [x] Introducing Zero-Bundle-Size React Server Components (2020-12-21) (@tdd #597)
  • [x] Versions (@tdd)
  • [x] Warnings
    • [x] Invalid ARIA props (@tdd #575)
    • [x] Invalid Hook call (@tdd #575)
    • [x] React DOM Test Utils (@tdd)
    • [x] React Test Renderer (@tdd)
    • [x] Special props (@tdd #575)
    • [x] Unknown prop (@tdd #575)

gaearon avatar Apr 25 '23 00:04 gaearon

Salut @ninofiliu ! 👋🏻

Je dois prendre cette semaine le temps de battre le rappel des éléments noyau de l'équipe originale pour commencer à répartir le travail.

Il me semble que tu viens d'arriver ? Pense à bien lire les bonnes pratiques et le glossaire dont les liens sont dans le texte initial de l'issue (sinon va directement dans le wiki) avant de t'y mettre.

Ensuite, quand tu auras fini, ouvre une PR soignée, en vérifiant que tes commits sont bien à jour par-dessus la branche principale (rebase ta branche si besoin), et mets-moi en Reviewer, comme ça je pourrai te faire un retour circonstancié.

Bonne trad ! 😉

tdd avatar Apr 25 '23 08:04 tdd

@ninofiliu tu as pris un gros morceau, donc n'hésite pas à faire une PR par sous-page / section, ou à ouvrir ta PR en draft une fois que tu penses avoir assez de matériau pour une revue, histoire notamment de bénéficier au plus tôt d'éventuels ajustements / recadrages.

tdd avatar Apr 25 '23 08:04 tdd

Salut 👋 !

J'aimerais participer à la traduction de cette nouvelle docs tant attendus ! Si c'est possible, j'aimerais traduire les pages useDebugValue et useId de la section React Hooks ⚛️ pour commencer.

MatteoGauthier avatar Apr 25 '23 09:04 MatteoGauthier

Hello ! toujours la pour reprendre le project de traduire la doc :)

@Nab va prendre le tic tac toe Je vais prendre le thinking in react

sheplu avatar Apr 25 '23 09:04 sheplu

Coucou @MatteoGauthier 👋

OK pour moi, tu es nouveau je crois, pense donc d'abord à bien lire le Glossaire et les Bonnes pratiques du wiki. Ensuite comme d'hab, PR qui me met en Reviewer, etc.

Bonne trad ! 👍

tdd avatar Apr 25 '23 09:04 tdd

Hello @sheplu et @Nab69 ça va les vétérans ? 😉

Pas de souci, je vous attribue ça. You know the drill!

tdd avatar Apr 25 '23 09:04 tdd

en forme et toi ? Faudrait qu'on se croise sur un meetup a Paris depuis le temps :D

sheplu avatar Apr 25 '23 09:04 sheplu

Ouais mais avec Node.js Paris qui n'existe plus et Paris.js qui est un peu comateux, pas évident :)

tdd avatar Apr 25 '23 09:04 tdd

hello ✌️ je serais ravie de contribuer à la traduction, en commençant par la section "Describing the UI", si c'est ok !

@tdd j'ai bien pensé à check le glossaire & les bonnes pratiques :)

ceIia avatar Apr 25 '23 10:04 ceIia

Coucou @ceIia 👋

Avec plaisir, je t'attribue ça ! Si tu as des hésitations n'hésite pas à demander (ouvre ta PR en Draft et pose-nous tes questions sur les lignes à soucis), ok ?

tdd avatar Apr 25 '23 10:04 tdd

Heu @celia en fait il serait préférable que tu ne prennes pas une énorme section comme ça, travaille chapitre par chapitre. Je t'attribue du coup l'index et le premier chapitre, ok ?

tdd avatar Apr 25 '23 10:04 tdd

ok !

ceIia avatar Apr 25 '23 10:04 ceIia

Hello, je suis nouveau, j'ai bien lu les meilleures pratiques et le glossaire. Je souhaiterai traduire la partie <Fragment> (<>) 😁

bastiendmt avatar Apr 25 '23 11:04 bastiendmt

Salut @bastiendmt 👋 !

Pas de souci, je te l'attribue dans le texte de l'issue. Assure-toi bien d'avoir le temps, dans les tous prochains jours, de faire cette contribution. Sinon, tu « bloquerais » cette page inutilement.

En tous les cas, merci d'avance 🙏 pour ta contribution !

Si tu as des interrogations, n'hésite pas à nous solliciter !

Pour ta PR…

  • Forke le dépôt si ce n'est pas déjà le cas
  • Crée une branche nommée d'après le fichier concerné (sans l'extension), par exemple higher-order-components
  • Pense à ajuster le title du frontmatter en haut du fichier, si ce n'est pas un nom d’API ; attention, on utilise la casse française : seule la première initiale est en majuscules. Le titre de référence est déjà dans content/docs/nav.yml (sur master), mais si c'est juste un nom d'API tu peux imaginer être plus explicite dans le tien (sinon, reprends-le tel quel par cohérence)
  • Une fois prêt·e, envoie ta PR sous le titre Translation of the “Titre VO De La Page” page

Si tu as besoin d'un retour circonstancié sur ton travail en cours, tu peux créer ta PR avant d'avoir fini, à condition de la configurer en Draft Pull Request pour qu'elle soit clairement identifiée comme un boulot en cours. Ça nous permettra de venir te faire déjà des retours à ta demande.

Bonne première trad !

tdd avatar Apr 25 '23 12:04 tdd

📣 Appel aux vétérans qui n'ont pas forcément vu le truc passer !

@linsolas @lbelavoir @JeremiePat @juliettelofaro @emmadal @forresst @thib92

Ayé, c'est parti ! Grab your pages!

Note : virez votre dépôt local existant si besoin, clonez de frais sur du Node récents, un coup de yarn puis yarn dev et en avant Guingamp 😉

tdd avatar Apr 25 '23 14:04 tdd

@tdd Excited to see you again :) Would you mind checking if the Maintainers list is up-to-date? If not, please edit and send a PR to https://github.com/reactjs/translations.react.dev so we know who is active. Thanks!

gaearon avatar Apr 25 '23 14:04 gaearon

Hey @gaearon Some of the veterans are coming back (just issued a further call), and we have many new translators starting to pitch in as well, through our same rigorous quality control.

What names do you want us to keep in the list? "Core translators," or everyone who helps?

tdd avatar Apr 25 '23 14:04 tdd

I think our permission sync is broken so I want to repair that. If I repair it, the "French translation" GH team will be in sync with what's in https://github.com/reactjs/translations.react.dev. The "translation" team gets Admin right, so I think it should be core translators. We could also potentially have two teams with different roles (admin and write) in the future. But for now I think it's people you want to have Admin access. Assuming Admin access is needed at all. What's your experience?

gaearon avatar Apr 25 '23 14:04 gaearon

Hey!

We're putting in some branch protections and rulesets to prevent non-core translators from messing with main, so Admin access remains relevant here. I PR'd an update to our core maintainers list that seems in line with what you're describing in terms of caretaking roles, so your fix seems alright with me!

tdd avatar Apr 25 '23 15:04 tdd

Bonjour Christophe

Je serai heureuse de garder mon nom dans la liste des participants au projet.

Par contre je n'ai pour le moment pas le temps de traduire de nouvelles pages.

Merci quand même,

Cordialement

Juliette Lo faro

Le mar. 25 avr. 2023 à 16:08, Christophe Porteneuve < @.***> a écrit :

📣 Appel aux vétérans qui n'ont pas forcément vu le truc passer !

@linsolas https://github.com/linsolas @lbelavoir https://github.com/lbelavoir @JeremiePat https://github.com/JeremiePat @juliettelofaro https://github.com/juliettelofaro @emmadal https://github.com/emmadal @forresst https://github.com/forresst @thib92 https://github.com/thib92

Ayé, c'est parti ! Grab your pages!

Note : virez votre dépôt local existant si besoin, clonez de frais sur du Node récents, un coup de yarn puis yarn dev et en avant Guingamp 😉

— Reply to this email directly, view it on GitHub https://github.com/reactjs/fr.react.dev/issues/448#issuecomment-1521855330, or unsubscribe https://github.com/notifications/unsubscribe-auth/AH76MMTXBPYP4YPVXHFG5RTXC7LFHANCNFSM6AAAAAAXKJP7KA . You are receiving this because you were mentioned.Message ID: <reactjs/fr. @.***>

juliettelofaro avatar Apr 25 '23 16:04 juliettelofaro

Coucou Juliette ! Ton nom ne disparaît pas de toutes façons (cf. TRANSLATORS.md, partie Legacy), et si tu n'as pas le temps tout de suite, pas de souci ! Reviens quand ton agenda sera plus clément 😉

tdd avatar Apr 25 '23 16:04 tdd

super, je suis vraiment heureux que les traductions reprennent. merci @tdd de me garder dans la liste des traducteurs 🙏

emmadal avatar Apr 25 '23 16:04 emmadal

Coucou @emmadal je "garde" personne, kinenveu participe, mais je relance celleux qui avaient pas mal contribué la première fois, c'est logique 😉

tdd avatar Apr 25 '23 17:04 tdd

Hello, j'aimerais participer à cette traduction si possible, en commençant par la page "Managing State" (l'index pour commencer). J'ai bien lu les pratiques et la méthode. Merci 😁

KohdeAvekLeQ avatar Apr 25 '23 20:04 KohdeAvekLeQ

Salut @KohdeAvekLeQ 👋 !

Pas de souci, je te l'attribue dans le texte de l'issue. Assure-toi bien d'avoir le temps, dans les tous prochains jours, de faire cette contribution. Sinon, tu « bloquerais » cette page inutilement.

En tous les cas, merci d'avance 🙏 pour ta contribution !

Si tu as des interrogations, n'hésite pas à nous solliciter !

Pour ta PR…

  • Forke le dépôt si ce n'est pas déjà le cas
  • Crée une branche nommée d'après le fichier concerné (sans l'extension), par exemple higher-order-components
  • Pense à ajuster le title du frontmatter en haut du fichier, si ce n'est pas un nom d’API ; attention, on utilise la casse française : seule la première initiale est en majuscules. Le titre de référence est déjà dans content/docs/nav.yml (sur master), mais si c'est juste un nom d'API tu peux imaginer être plus explicite dans le tien (sinon, reprends-le tel quel par cohérence)
  • Une fois prêt·e, envoie ta PR sous le titre Translation of the “Titre VO De La Page” page

Si tu as besoin d'un retour circonstancié sur ton travail en cours, tu peux créer ta PR avant d'avoir fini, à condition de la configurer en Draft Pull Request pour qu'elle soit clairement identifiée comme un boulot en cours. Ça nous permettra de venir te faire déjà des retours à ta demande.

Bonne première trad !

tdd avatar Apr 26 '23 07:04 tdd

Avis à tou·te·s !

Au fil des travaux sur les nouvelles docs, je complète et amende les meilleures pratiques. Je vous invite donc à garder un œil sur l'historique de la page wiki et à vous assurer d'avoir regardé les changements récents (post-2019, en fait) avant d'entreprendre une nouvelle traduction, ou juste avant de soumettre votre PR finalisée.

Bonnes trad's tout le monde ! 😁

tdd avatar Apr 26 '23 13:04 tdd

Hello @tdd,

Je veux bien remettre une petite piecette sur la nouvelle traduction. Je ne suis pas sûr de pouvoir en faire autant que la dernière fois, mais je constate qu'il y a pas mal de nouvelles arrivées ! Bref, je veux bien démarrer avec Reusing Logic with Custom Hooks, à rendre d'ici la fin de semaine prochaine si ça va - je suis en congés cette semaine, donc pas sûr d'avancer d'ici-là.

linsolas avatar Apr 26 '23 19:04 linsolas

Coucou Romain @linsolas ! 👋

Super, je t'attribue ça. You know the drill! Pense à revoir les bonnes pratiques et le Glossaire à toute fin utile, notamment les changements post-2019.

tdd avatar Apr 27 '23 07:04 tdd

hello @tdd pouvez vous m'attribuez react: Hook ?

emmadal avatar Apr 27 '23 08:04 emmadal

@emmadal tu parles de la page d'index seule, on est d'accord ?

tdd avatar Apr 27 '23 09:04 tdd