Skip to content

Swahili Translation Progress #1

Description

@gaearon

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. Please 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 (once they exist) to understand how to translate various technical and React-specific terms.

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:

- [ ] Some Page (@exampleusername) #12345

When PRs are merged, make sure to mark that page as completed like this:

- [x] Some Page (@exampleusername) #12345

This ensures your translation's progress is tracked correctly at https://translations.react.dev/.

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

    • Tutorial: Tic Tac Toe (@JaxiroKe)
    • Thinking in React (@JaxiroKe)
  • Installation

  • Describing the UI

  • Adding Interactivity

    • Responding to Events
    • State: A Component's Memory
    • Render and Commit
    • State as a Snapshot
    • Queueing a Series of State Updates
    • Updating Objects in State
    • Updating Arrays in State
  • Managing State

    • Reacting to Input with State
    • 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
    • useContext
    • useDebugValue
    • useDeferredValue
    • useEffect
    • useId
    • useImperativeHandle
    • useInsertionEffect
    • useLayoutEffect
    • useMemo
    • useReducer
    • useRef
    • useState
    • useSyncExternalStore
    • useTransition
  • react: Components

    • <Fragment> (<>)
    • <Profiler>
    • <StrictMode>
    • <Suspense>
  • react: APIs

    • createContext
    • forwardRef
    • lazy
    • 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

Maintainer List

This translation is maintained by:

If you want to become a maintainer, ask them to add you. If the original maintainers are no longer responsive, raise an issue in the main translations repository.

Activity

  1. SiroDevs commented on May 25, 2023

    @SiroDevs
    Contributor

    Hi, am on this and I started to work on

    • Tutorial: Tic Tac Toe
    • Thinking in React
  2. added a commit that references this issue on Jul 2, 2023
  3. kazz54 commented on Feb 13, 2024

    @kazz54

    Hi I, would like to translate

    Writing Markup with JSX

  4. orama254 commented on Feb 14, 2024

    @orama254
    Member

    @kazz54 Awesome,

    Go right ahead. Incase you need help with that feel free to reachout.

  5. shauritanga commented on May 16, 2024

    @shauritanga

    Hi there.
    I am translating installation topic

  6. katungi commented on May 16, 2024

    @katungi

    Hey @shauritanga , please go for it and make a PR!

  7. mmsaki commented on Oct 27, 2025

    @mmsaki

    Is this still active? I would like to contribute

  8. Omballa commented on Dec 21, 2025

    @Omballa
    Contributor

    Hi I would like to translate
    Start a New React Project

  9. shauritanga commented on Dec 21, 2025

    @shauritanga
  10. muchai254 commented on Jan 13, 2026

    @muchai254

    Hello, I'd like to take up:

    • Add React to an Existing Project
  11. SiroDevs commented on Feb 21, 2026

    @SiroDevs
    Contributor

    I really got tired doing work and it doesn't get to prod. @shauritanga mimi niliinua mikono.

    ukiangalia PRs zangu ni moja tu ilienda bila tatizo zingine tatu ni X

    https://github.com/reactjs/sw.react.dev/pulls?q=is%3Apr+author%3ASiroDevs+is%3Aclosed

  12. orama254 commented on Feb 26, 2026

    @orama254
    Member

    @SiroDevs Thanks for all the contributions you have made so far.

    I can confirm that the previews in prod are now visible. You can check them out at HERE

  13. orama254 commented on Feb 26, 2026

    @orama254
    Member

    @shauritanga Feel free to take up another topic of your choice.

  14. orama254 commented on Feb 26, 2026

    @orama254
    Member

    @muchai254 Feel free to submit a PR, Adding you to the topic

  15. DENNIS-CODES commented on Aug 11, 2026

    @DENNIS-CODES
    Contributor

    Hi @orama254 @katungi @bmwasonga 👋 I've prepared Swahili drafts for the Describing the UI chapter and would like to submit them as a single batch PR. @kazz54 already has Writing Markup with JSX, so I've left that out. Included: Your First Component, Importing and Exporting Components, JavaScript in JSX with Curly Braces, Passing Props to a Component, Conditional Rendering, Rendering Lists, Keeping Components Pure, and Your UI as a Tree , plus a Swahili glossary/style guide for consistent terminology. PR incoming.

  16. orama254 commented on Aug 13, 2026

    @orama254
    Member

    @DENNIS-CODES Feel free to submit a PR, Adding you to the topics

  17. DENNIS-CODES commented on Aug 13, 2026

    @DENNIS-CODES
    Contributor

    @orama254 the PR is already open here: #174

    I’ve cleaned it up and pushed the final whitespace cleanup. It only touches the Describing the UI Swahili translation pages plus TRANSLATION.md, leaves Writing Markup with JSX out, merges cleanly, and passes the focused checks (diff --check, markdown ESLint on touched content files, and heading ID lint). Ready to merge from my side.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions