ru.react.dev
ru.react.dev copied to clipboard
New Russian Translation Progress
Текущий список мейнтейнеров
- 🥇 @lex111
- @gaearon
- @another-guy
- @Heegiiny
- @gcor
- @ntishkevich
- @titovmx
Если у вас есть время и желание, и вы уже участвуете в развитии проекта, то можете создать пулреквест с добавлением своего логина в список мейнтейнеров в этом репозитории.
Как помочь с переводом
Вы можете перевести страницу из документации! Это делается в три шага:
- Проверьте, что её никто не застолбил в чеклисте или комментариях под ним (они не сразу отражаются в чеклисте)
- Напишите, какую страницу вы ходите перевести. Пожалуйста, не берите больше одной страницы за раз.
- Когда страница готова, отредактируйте ваш комментарий, чтобы добавить номер пулреквеста.
Прежде чем переводить, обязательно прочитайте местные правила перевода!
Пожалуйста, не тяните с переводами! Если у вас не получается или нет времени, отпишитесь, чтобы кто-то другой мог подхватить эту страницу.
For maintainers
When someone volunteers, edit this issue with the username of the volunteer, and with the PR. Ex:
- [x] Home Page (@tesseralis) #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
-
[x] Quick Start (@pblyp) #846
- [ ] Tutorial: Tic Tac Toe (@SmaylikYoutuber) #953
- [x] Thinking in React (@dignit28) #876
-
[x] Installation (@Palidos) #842
- [x] Start a New React Project (@titovmx) #850
- [ ] Add React to an Existing Project (@rkashigin)
- [ ] Editor Setup (@Hellnar) #845
- [ ] Using TypeScript (@n1ckdevops)
- [x] React Developer Tools (@xxtereshko) #863
-
[ ] Describing the UI (@titovmx) #880
- [x] Your First Component (@wadzari) #852
- [x] Importing and Exporting Components (@avarlamova) #853
- [ ] Writing Markup with JSX (@Hellnar) #845
- [ ] JavaScript in JSX with Curly Braces (@wadzari) #879
- [ ] Passing Props to a Component (@titovmx) #874
- [x] Conditional Rendering (@rainyEra) #844
- [x] Rendering Lists (@Laroikin) #855
- [ ] Keeping Components Pure (@EngiN33R)
- [x] Understanding Your UI as a Tree (@L1ghT0) #927
-
[ ] Adding Interactivity
- [ ] Responding to Events (@xxtereshko) #861
- [ ] State: A Component's Memory (@sakhnyuk) #888
- [x] Render and Commit (@rainyEra) #862
- [x] State as a Snapshot (@bofeof) #877
- [ ] Queueing a Series of State Updates (@isakura313) #881
- [ ] Updating Objects in State (@bofeof) #886
- [ ] Updating Arrays in State (@isakura313) #896
-
[ ] Managing State
- [ ] Reacting to Input with State (@titovmx) #899
- [ ] Choosing the State Structure (@mike-minchenko)
- [ ] Sharing State Between Components (@arturdedela) #872
- [ ] Preserving and Resetting State (@AnastasyaAntonova) #895
- [ ] Extracting State Logic into a Reducer (@avganka)
- [ ] Passing Data Deeply with Context (@Pyplee) #973
- [ ] Scaling Up with Reducer and Context
-
[ ] Escape Hatches
- [x] Referencing Values with Refs (@maridoroshuk) #875
- [ ] Manipulating the DOM with Refs (@Vo-one) #889
- [ ] Synchronizing with Effects (@Tata-Sysueva)
- [ ] You Might Not Need an Effect (@boldurean) #854
- [ ] Lifecycle of Reactive Effects
- [ ] Separating Events from Effects (@gybber-dev) #971
- [ ] Removing Effect Dependencies
- [ ] Reusing Logic with Custom Hooks (@exymore)
API Reference
-
[ ]
react
: Hooks- [ ]
useActionState
- [x]
useCallback
(@khikmatjonazizov) #965 - [ ]
useContext
(@hellcattc) #878 - [ ]
useDebugValue
(@kmpeeduwee) - [x]
useDeferredValue
(@mekarthedev) #866 - [ ]
useEffect
(@mekarthedev) #897 - [x]
useId
(@mekarthedev) #856 - [ ]
useImperativeHandle
(@kmpeeduwee) - [x]
useInsertionEffect
(@kmpeeduwee) #948 - [x]
useLayoutEffect
(@khikmatjonazizov) #961 - [x]
useMemo
(@jewhyena) #870 - [x]
useReducer
(@kmpeeduwee) #893 - [ ]
useOptimistic
(@maridoroshuk) #928 (@rLukoyanov) #974 - [ ]
useRef
(@jewhyena) #885 - [ ]
useState
(@qweered) - [ ]
useSyncExternalStore
(@khikmatjonazizov) - [ ]
useTransition
(@Palidos) #892
- [ ]
-
[x]
react
: Components (@fpetrakov) #841- [x]
<Fragment> (<>)
(@XamzatJR) #848 - [ ]
<Profiler>
- [x]
<StrictMode>
(@jkorichneva) #871 - [ ]
<Suspense>
- [x]
-
[ ]
react
: APIs- [ ]
act
- [ ]
cache
- [ ]
createContext
(@naknumberone) #901 - [ ]
forwardRef
- [x]
lazy
(@YashinaAnastasia) #869 - [ ]
memo
(@maridoroshuk) #894 - [x]
startTransition
(@ianreas) #867 - [ ]
use
- [ ]
-
[ ]
react-dom
: Hooks- [ ]
useFormState
- [ ]
useFormStatus
- [ ]
-
[ ]
react-dom
: Components (@ramiiil)- [ ] Common (e.g.
<div>
) - [ ]
<form>
- [ ]
<input>
- [ ]
<option>
- [ ]
<progress>
- [ ]
<select>
- [ ]
<textarea>
- [ ] Common (e.g.
-
[x]
react-dom
: APIs (@xxtereshko) #864- [ ]
createPortal
- [ ]
flushSync
- [ ]
findDOMNode
- [ ]
hydrate
- [ ]
render
- [ ]
unmountComponentAtNode
- [ ]
-
[ ]
react-dom/client
: Client APIs- [ ]
createRoot
(@xxtereshko) - [ ]
hydrateRoot
- [ ]
-
[ ]
react-dom/server
: Server APIs- [x]
renderToNodeStream
(@GoncharovaAnna) #868 - [ ]
renderToPipeableStream
- [ ]
renderToReadableStream
- [ ]
renderToStaticMarkup
- [ ]
renderToStaticNodeStream
- [x]
renderToString
(@TibidoX) #884
- [x]
-
[ ]
rsc/server-components
: Server Components (@vikaborel) -
[ ]
rsc/server-actions
: Server Actions -
[ ]
rsc/directives
: Directives- [ ]
use-client
- [ ]
use-server
- [ ]
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
) (@Zukhrik) #909 - [ ] 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 (@FrMks) #890
Привет! Хочу взять main/src/content/learn/index.md, это Quick Start.
UPD: Перевод в #846
привет! буду рад помочь! хотел бы взять Start a New React Project (src/content/learn/start-a-new-react-project.md) для начала UPD: Переведено https://github.com/reactjs/ru.react.dev/pull/850
Привет! Хочу взять Conditional Rendering, вот тут src/content/learn/conditional-rendering.md UPD: Переведено #844
Привет! Хочу взять Main Content/Learn/API Reference/react-dom: components React это, я так понимаю, Quick Start.
Привет! Хочу взять Your First Component. UPD: переведено в #852
Всем привет! Я бы хотел взять Add React to an Existing Project (src/content/learn/add-react-to-an-existing-project.md)
UPD: прошу прощения за задержку, долго болел. Перевод закончил #902
Привет! Хочу помочь с переводом Rendering Lists (src/content/learn/rendering-lists.md) UPD: переведено #855
Привет, хочу взять JavaScript in JSX with Curly Braces (src/content/learn/javascript-in-jsx-with-curly-braces.md) и Fragment (<>...</>) UPD: Fragment переведено в #848 , JavaScript in JSX with Curly Braces не получится перевести
Привет. Возьму Writing Markup with JSX (src/content/learn/writing-markup-with-jsx.md)
UPD: переведено в #845
@lex111 @another-guy @Heegiiny @gcor @ntishkevich
Подтвердите пожалуйста, будет ли у вас возможность заниматься этим переводом? Если нет, давайте обновим список в https://github.com/reactjs/translations.react.dev/blob/main/langs/ru.json, чтобы было понятно, надо ли искать мейнтейнеров. Я готов помочь с консультациями и ревью по мере возможности, но я не уверен, что я могу тащить весь проект.
@gaearon Привет! Пойду сложным путём, возьму на себя You Might Not Need an Effect
UPD: https://github.com/reactjs/ru.react.dev/pull/854
Я пока что сам обновлять список не буду, так как хотелось бы найти хотя бы одного мейнтейнера кто не я. Давайте сначала определимся, есть ли такой человек. Если нет, то надо будет кого-то найти )
@lex111 @another-guy @Heegiiny @gcor @ntishkevich
Подтвердите пожалуйста, будет ли у вас возможность заниматься этим переводом? Если нет, давайте обновим список в https://github.com/reactjs/translations.react.dev/blob/main/langs/ru.json, чтобы было понятно, надо ли искать мейнтейнеров. Я готов помочь с консультациями и ревью по мере возможности, но я не уверен, что я могу тащить весь проект.
@gaearon Будет возможность.
Привет! Хотел бы взять Keeping Components Pure
.
@gaearon тоже смогу
Возьму Editor Setup
Возьму React Developer Tools
UPD: Editor Setup готово (случайно закинул перевод в тот же #845 ) Освобождаю React Developer Tools, желающие могут брать на перевод.
Возьму
Editor Setup
ВозьмуReact Developer Tools
@Hellnar Закрепил за вами пока Editor Setup
. Просьба брать по одной статье, чтобы потом не подвисали другие. Не переживайте, как закончите с Editor Setup
, то смело сможете брать React Developer Tools
.
Я начал новый тред про стилистические вопросы: https://github.com/reactjs/ru.react.dev/issues/851.
Возьму useState
Возьму Responding to Events
UPD: Переведена в #861
Возьму Importing and Exporting Components UPD: перевод в #853
Привет, не смогу перевести JavaScript in JSX with Curly Braces
Всем привет!
Возьму State: A Component's Memory
UPD: https://github.com/reactjs/ru.react.dev/pull/888
Привет. Возьму useId.
UPD: #856
React Developer Tools
свободно для перевода, снимаю свою бронь.
возьму useMemo
upd. https://github.com/reactjs/ru.react.dev/pull/870
Возьму useDeferredValue.
UPD: https://github.com/reactjs/ru.react.dev/pull/866
Привет, ~~хотела бы взять Fragment (<>)~~
Увидела, что он уже в висит в PR. Тогда взяла бы StrictMode
UPD: #871
Возьму React Developer Tools
UPD: Переведено #863
Куда лучше писать и кого квотить по всяким мелочам, которые возникают по ходу дела? Сюда, в "стилистические вопросы", в отдельный тикет, какой-нибудь "чатик для переводчиков"?
Пример вопроса:
Иногда в скрытом коде есть весьма содержательные комментарии: например, https://github.com/reactjs/ru.react.dev/blob/1166f14a011c2519287f3eeeb92a9cee38c29198/src/content/reference/react/useDeferredValue.md?plain=1#L134-L138 – их лучше переводить или не трогать?