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

New Vietnamese Translation Progress

Open gaearon opened this issue 1 year ago • 33 comments

Maintainers

  • @nampdn
  • @ltmylinh
  • @cuongtran8
  • @Ryan-LT

For New Translators

To translate a page:

  1. Check that no one else has claimed your page in the checklist and comments below.
  2. Comment below with the name of the page you would like to translate. Take only one page at a time.
  3. Clone this repo, translate your page, and submit a pull request!

Before contributing, read the glossary and style guide to understand how to translate various technical and React-specific terms.

You can use the Crowdin as a base for your translation. Make sure to compare the content with the current React website to make sure everything is up to date! (NOTE: delete this if the language doesn't have any Crowdin contributions)

Please be prompt with your translations! If you find that you can't commit anymore, let the maintainers know so they can assign the page to someone else.

For maintainers

When someone volunteers, edit this issue with the username of the volunteer, and with the PR. Ex:

* [x] Some Page (@somebody) #12345

When PRs are merged, make sure to mark that page as completed!

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.

Learn React

  • [ ] Quick Start (@ltmylinh) #415

    • [ ] Tutorial: Tic Tac Toe (@huongpx) #346
    • [x] Thinking in React (@NghiaDangTran) #362
  • [x] Installation (@ninh-nd) #347

    • [ ] Start a New React Project (@ltmylinh) #416
    • [x] Add React to an Existing Project (@leduc1901) #349
    • [x] Editor Setup (@leduc1901) #350
    • [x] React Developer Tools (@leduc1901) #351
  • [ ] Describing the UI

    • [x] Your First Component (@ninh-nd) #354
    • [ ] Importing and Exporting Components (@ltmylinh) #420
    • [ ] Writing Markup with JSX (@bboy114crew)
    • [ ] JavaScript in JSX with Curly Braces (@ltmylinh)
    • [ ] Passing Props to a Component (@ltmylinh)
    • [ ] Conditional Rendering (@kienngo98) #348
    • [ ] Rendering Lists (@ltmylinh)
    • [ ] Keeping Components Pure (@ltmylinh)
  • [ ] Adding Interactivity

    • [ ] Responding to Events (@phuc1nguyen) #359
    • [ ] State: A Component's Memory
    • [x] Render and Commit (@hminh2027) #358
    • [x] State as a Snapshot (@ThangHuuVu) #360
    • [ ] Queueing a Series of State Updates
    • [x] Updating Objects in State (@chrisvn188) #419
    • [x] Updating Arrays in State (@chrisvn188) #421
  • [ ] Managing State

    • [ ] Reacting to Input with State (@NghiaDangTran)
    • [ ] Choosing the State Structure
    • [ ] Sharing State Between Components
    • [ ] Preserving and Resetting State
    • [ ] Extracting State Logic into a Reducer
    • [ ] Passing Data Deeply with Context
    • [ ] Scaling Up with Reducer and Context
  • [ ] Escape Hatches

    • [ ] Referencing Values with Refs
    • [ ] Manipulating the DOM with Refs
    • [ ] Synchronizing with Effects
    • [ ] You Might Not Need an Effect
    • [ ] Lifecycle of Reactive Effects
    • [ ] Separating Events from Effects
    • [ ] Removing Effect Dependencies
    • [ ] Reusing Logic with Custom Hooks

API Reference

  • [ ] react: Hooks

    • [ ] useCallback (@Quynh-Nguyen)
    • [ ] useContext
    • [ ] useDebugValue (@viettrung9012) #364
    • [ ] useDeferredValue
    • [ ] useEffect
    • [ ] useId
    • [ ] useImperativeHandle
    • [ ] useInsertionEffect
    • [ ] useLayoutEffect
    • [ ] useMemo
    • [ ] useReducer
    • [ ] useRef
    • [ ] useState (@nguyentran-se)
    • [x] useSyncExternalStore (@hoangtrung99) #413
    • [ ] useTransition
  • [ ] react: Components

    • [x] <Fragment> (<>) (@leduc1901) #352
    • [ ] <Profiler> (@leduc1901) #355
    • [ ] <StrictMode> (@leduc1901)
    • [ ] <Suspense>
  • [ ] react: APIs

    • [ ] createContext
    • [ ] forwardRef
    • [ ] lazy (@leduc1901) #361
    • [ ] memo
    • [ ] startTransition
  • [ ] react-dom: Components

    • [ ] Common (e.g. <div>)
    • [ ] <input>
    • [ ] <option>
    • [ ] <progress>
    • [ ] <select>
    • [ ] <textarea>
  • [ ] react-dom: APIs

    • [ ] createPortal
    • [ ] flushSync
    • [ ] findDOMNode
    • [ ] hydrate
    • [ ] render
    • [ ] unmountComponentAtNode
  • [ ] react-dom/client: Client APIs

    • [ ] createRoot
    • [ ] hydrateRoot
  • [ ] react-dom/server: Server APIs

    • [ ] renderToNodeStream
    • [ ] renderToPipeableStream
    • [ ] renderToReadableStream
    • [ ] renderToStaticMarkup
    • [ ] renderToStaticNodeStream
    • [ ] renderToString

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.

  • [ ] Homepage (currently in HomeContent.js)
  • [ ] Sidebars (currently in src/sidebar*.json)
  • [ ] 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:

  • [ ] Legacy React APIs
    • [ ] Children
    • [ ] cloneElement
    • [ ] Component
    • [ ] createElement
    • [ ] createFactory
    • [ ] createRef
    • [ ] isValidElement
    • [ ] PureComponent

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:

  • [ ] Community
  • [ ] Blog
  • [ ] Warnings

gaearon avatar Apr 25 '23 04:04 gaearon

Hi all, I will pick useCallback hook page

https://vi.react.dev/reference/react/useCallback

Quynh-Nguyen avatar Apr 25 '23 04:04 Quynh-Nguyen

Hi all, I will translate Tutorial: Tic-Tac-Toe page https://vi.react.dev/learn/tutorial-tic-tac-toe

I've added a draft PR: https://github.com/reactjs/vi.react.dev/pull/346

huongphamx avatar Apr 25 '23 07:04 huongphamx

Hi all, I will pick the Installation index page https://react.dev/learn/installation

ninh-nd avatar Apr 25 '23 11:04 ninh-nd

Hi guys, I will pick the Thinking in React page https://vi.react.dev/learn/thinking-in-react

NghiaDangTran avatar Apr 25 '23 14:04 NghiaDangTran

@nampdn @ltmylinh @cuongtran8 @Ryan-LT

Can you please confirm whether you'd be able to steer and maintain this translation? We'd like to get https://github.com/reactjs/translations.react.dev/blob/main/langs/vi.json updated to list active maintainers. Thank you!

gaearon avatar Apr 25 '23 15:04 gaearon

@nampdn @ltmylinh @cuongtran8 @Ryan-LT

Can you please confirm whether you'd be able to steer and maintain this translation? We'd like to get https://github.com/reactjs/translations.react.dev/blob/main/langs/vi.json updated to list active maintainers. Thank you!

Hi @gaearon, yes I will be able to do it.

ltmylinh avatar Apr 25 '23 20:04 ltmylinh

@gaearon I can help with that.

Ryan-LT avatar Apr 26 '23 01:04 Ryan-LT

Hi guys, I will pick the Writing Markup with JSX page. https://react.dev/learn/writing-markup-with-jsx

bboy114crew avatar Apr 26 '23 02:04 bboy114crew

@nampdn @ltmylinh @cuongtran8 @Ryan-LT

Can you please confirm whether you'd be able to steer and maintain this translation? We'd like to get https://github.com/reactjs/translations.react.dev/blob/main/langs/vi.json updated to list active maintainers. Thank you!

Hi @gaearon , There are some texts that are being rendered in English from the React components. So Should we translate these texts in the component itself - I mean we modify these texts in components directly? or Should we leave it as English on our website? or Should we modify these components so we can pass these texts as props? Do you have any thoughts on this? Thanks.

ltmylinh avatar Apr 26 '23 03:04 ltmylinh

Hi all, I would like to pick the useDebugValue page

viettrung9012 avatar Apr 26 '23 04:04 viettrung9012

Hi all, I would like to pick the State as a Snapshot page

ThangHuuVu avatar Apr 26 '23 08:04 ThangHuuVu

@ltmylinh

Should we translate these texts in the component itself - I mean we modify these texts in components directly?

I think it's up to individual translations to decide. I'm not sure. I could see it going either way — I suggest to decide this with other translation maintainers.

gaearon avatar Apr 26 '23 15:04 gaearon

Hi all, I have several pull requests waiting to be reviewed and merged. Could the maintainers please help me out by reviewing them? My PRs include:

  • Add React to an existing project - https://vi.react.dev/learn/add-react-to-an-existing-project
  • React Developer Tools - https://vi.react.dev/learn/react-developer-tools
  • Editor Setup - https://vi.react.dev/learn/editor-setup

leduc1901 avatar Apr 28 '23 06:04 leduc1901

Beside, I want to pick the "Fragment" page: https://vi.react.dev/reference/react/Fragment and the Profiler page Thanks in advance

leduc1901 avatar Apr 28 '23 06:04 leduc1901

I will translate the Your First Component page https://react.dev/learn/your-first-component

ninh-nd avatar Apr 28 '23 12:04 ninh-nd

Hi guys, I would like to translate useState page: https://react.dev/reference/react/useState

nguyentran-se avatar Apr 29 '23 13:04 nguyentran-se

Hi all, I would like to pick the Render and Commit page. https://react.dev/learn/render-and-commit

hminh2027 avatar Apr 30 '23 06:04 hminh2027

Hi @gaearon, I think you should update the glossary link to https://github.com/reactjs/vi.react.dev/issues/2 instead of this issue's url.

Before contributing, read the glossary and style guide to understand how to translate various technical and React-specific terms.

phuc1nguyen avatar Apr 30 '23 21:04 phuc1nguyen

Hi all, I would like to translate Responding to Events page. https://react.dev/learn/responding-to-events

phuc1nguyen avatar Apr 30 '23 21:04 phuc1nguyen

Hi @gaearon, I think you should update the glossary link to #2 instead of this issue's url.

Before contributing, read the glossary and style guide to understand how to translate various technical and React-specific terms.

updated. Thanks.

ltmylinh avatar May 01 '23 16:05 ltmylinh

Hi, I will translate the lazy page: https://vi.react.dev/reference/react/lazy Thanks

leduc1901 avatar May 04 '23 03:05 leduc1901

Hi, I will translate the StrictMode page: https://vi.react.dev/reference/react/StrictMode Thanks

leduc1901 avatar May 05 '23 03:05 leduc1901

Hi guys i will translate the Reacting to Input with State page

NghiaDangTran avatar May 08 '23 07:05 NghiaDangTran

Hi all, I would like to pick the Rendering Lists page. https://react.dev/learn/rendering-lists

hminh2027 avatar May 10 '23 02:05 hminh2027

Hi, I'm translating State: A Component's Memory page next. https://react.dev/learn/state-a-components-memory

phuc1nguyen avatar May 20 '23 12:05 phuc1nguyen

Hi all, I would like to translate the <Suspense> page next. https://vi.react.dev/reference/react/Suspense

Phonng avatar Aug 22 '23 02:08 Phonng

Hi there, I'd like to take the useEffect api reference, or anything that I can help with, Code Review maybe. cc @gaearon

ductbuix avatar Nov 21 '23 02:11 ductbuix

Hi all, I would like to translate useSyncExternalStore page.

hoangtrung99 avatar Apr 03 '24 14:04 hoangtrung99

Hi there, I'd like to take the react-dom/server, cc @gaearon

thienna avatar Apr 22 '24 09:04 thienna

Hi there, I would like to translate the learn/updating-objects-in-state page if it's available. Thank you!

chrisvn188 avatar May 06 '24 05:05 chrisvn188