i18n เชฎเชพเชŸเซ‡ เช…เช‚เชคเชฟเชฎ DX

Unbreakable i18n for agents loved by humans

No key to name, no locale file to sync, no a.b.c on screen
The source text is the key, translations are unbreakable.

5-เชฎเชฟเชจเชฟเชŸเชจเซ€ เชธเซ‡เชŸเช…เชช

เชคเชฎเชพเชฐเซเช‚ เชธเช‚เชชเซ‚เชฐเซเชฃ i18n เช…เชฎเชฒเซ€เช•เชฐเชฃ 5 เชฎเชฟเชจเชฟเชŸเชฎเชพเช‚. เชฎเชœเชพเช• เชจเชฅเซ€.

เช•เซ‹เชˆ เช•เซ€ เชธเชฟเชธเซเชŸเชฎ เชจเชฅเซ€

เชคเชฎเชพเชฐเชพ เชฎเช—เชœเชจเซ‡ เช†เชตเชพ เช…เชฐเซเชฅเชนเซ€เชจ เช•เชพเชฐเซเชฏเซ‹เชฎเชพเช‚ เชธเชพเชฎเซ‡เชฒ เชฅเชตเซเช‚ เชœเซ‹เชˆเช เชจเชนเซ€เช‚.

เชชเซเชฐเชฅเชฎ เชฆเชฟเชตเชธเชฅเซ€ เชตเซˆเชถเซเชตเชฟเช•

เช†เช‚เชคเชฐเชฐเชพเชทเซเชŸเซเชฐเซ€เชฏ เชฌเชœเชพเชฐเซ‹เชฎเชพเช‚ เชตเชงเชพเชฐเชพเชจเซ€ เชฎเชนเซ‡เชจเชค เชตเชฟเชจเชพ เชฎเซ‹เช•เชฒเซ‹.

เชธเซ‡เชŸเช…เชช i18n, เชคเชฎเชพเชฐเซ‹ เช•เซ‹เชกเชฌเซ‡เช เชธเชพเชซ เชฐเชพเช–เซ‹ เช…เชจเซ‡ เชเชกเชชเชฅเซ€ เชถเชฟเชช เช•เชฐเซ‹

เชนเชพเชฒเชจเชพ i18n เช‰เช•เซ‡เชฒเซ‹ เชธเชพเชฅเซ‡ เช…เชจเซ‡เช• PITA เช›เซ‡. เชชเซ€เชกเชพเช“ เชเชŸเชฒเซ€ เชฎเซ‹เชŸเซ€ เช›เซ‡ เช•เซ‡ เชคเชฎเซ‡ i18n เชจเซ‡ เชถเช•เซเชฏ เชคเซ‡เชŸเชฒเซเช‚ เชฎเซ‹เชกเซเช‚ เช•เชฐเซ‹ เช›เซ‹.

เชคเซ‡ เชธเชฎเชฏเชจเซ‹ เชตเชชเชฐเชพเชถ เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡ เชคเชฎเชพเชฐเซ‡ เชฌเซ€เชš เชชเชฐ เชตเชฟเชคเชพเชตเชตเซ‹ เชœเซ‹เชˆเช

เชธเชฟเชธเซเชŸเชฎเชจเซ€ เช•เซ€ เชธเซ‡เชŸ เช•เชฐเซ‹: เช“เช›เชพเชฎเชพเช‚ เช“เช›เซเช‚ 1 เช•เชฒเชพเช• เชธเชฟเชจเชฟเชฏเชฐ เชกเซ‡เชตเชฒเชชเชฐเชจเซ‹ เชธเชฎเชฏ

เชฆเชฐเซ‡เช• เชจเชตเชพ เช•เซ€ เชฎเชพเชŸเซ‡ เช†เช—เชณ เช…เชจเซ‡ เชชเชพเช›เชณ: เชชเซเชฐเชคเชฟ เช•เซ€ 1 เชฎเชฟเชจเชฟเชŸ, x500 เช•เซ€, x2 เชญเชพเชทเชพเช“ = 17 เช•เชฒเชพเช•

i18n-keyless เชธเชพเชฅเซ‡, เชคเชฎเซ‡ i18n เชธเชฟเชธเซเชŸเชฎเชจเซ€ เชšเชฟเช‚เชคเชพ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€. เชคเชฎเซ‡ เชฌเซ€เชš เชชเชฐ เชœเชˆ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชเช• เชฎเซ‹เชœเชฟเชŸเซ‹ เช“เชฐเซเชกเชฐ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

เช†เชœเซ‡ เชฎเซ‹เชŸเชพเชญเชพเช—เชจเซ€ เชธเชฟเชธเซเชŸเชฎเซ‹ เชฒเช–เชพเชฃ เช…เชจเซเชตเชพเชฆเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช•เซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡

เช† เช‰เชคเซเชชเชจเซเชจ เช•เชฐเชตเซเช‚ เชชเซ€เชกเชพเชฆเชพเชฏเช• เช›เซ‡. เช† เชœเชพเชณเชตเชตเซเช‚ เชชเซ€เชกเชพเชฆเชพเชฏเช• เช›เซ‡.

เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เชเชชเชฎเชพเช‚ เชฒเช–เชพเชฃ เชœเซเช“ เช›เซ‹, เช…เชจเซ‡ เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ‹ เช›เซ‹, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ เชธเช‚เชฌเช‚เชงเชฟเชค เช•เซ€ เชถเซ‹เชงเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

i18n-keyless เชธเชพเชฅเซ‡, เชคเชฎเซ‡ i18n เชธเชฟเชธเซเชŸเชฎเชจเซ€ เชšเชฟเช‚เชคเชพ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€. เชคเชฎเชพเชฐเชพ เชฎเช—เชœเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เช‚เชˆเช• เชตเชงเซ เชฐเชธเชชเซเชฐเชฆ เชฎเชพเชŸเซ‡ เช•เชฐเซ‹.

เชเช†เชˆเชจเซ‡ เช…เชจเซเชตเชพเชฆ เช•เชฐเชตเชพ เชฆเซ‹

เช•เซ€ เชธเชฟเชธเซเชŸเชฎ เชธเชพเชฅเซ‡, เชคเชฎเชพเชฐเซ‡ เชเชชเชฎเชพเช‚ เช…เชจเซเชตเชพเชฆเซ‹เชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

เช…เชฅเชตเชพ เชคเซ‹ เชคเชฎเชพเชฐเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชคเซ‡เชฎเชจเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชฎเชพเช‚ someheader.welcome.title เชœเซ‹เชถเซ‡.

i18n-keyless เชธเชพเชฅเซ‡, เชคเชฎเชจเซ‡ i18n เชธเชฟเชธเซเชŸเชฎเชจเซ€ เช•เซ‹เชˆ เชšเชฟเช‚เชคเชพ เชจเชฅเซ€. เชธเชฐเชธ เชนเซ‡เชกเชฒเชพเช‡เชจเซเชธ เชฒเช–เซ‹, เชฎเชพเชฐเซเช•เซ‡เชŸเชฟเช‚เช— เชชเชฐ เชงเซเชฏเชพเชจ เช†เชชเซ‹ เช…เชจเซ‡ เชตเซ‡เชšเชพเชฃ เช•เชฐเซ‹.

เช•เซ‹เชกเชฌเซ‡เช เชธเซเช‚เชฆเชฐ เช›เซ‡... เชœเซเชฏเชพเช‚ เชธเซเชงเซ€ i18n เช•เซ€เช“ เชšเซ‡เชช เชจ เชฒเชพเช—เซ‡

เช•เซ€ เชธเชฟเชธเซเชŸเชฎ เชธเชพเชฅเซ‡, เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เช•เซ‹เชก เช…เชจเซ‡ เชธเชพเชฎเช—เซเชฐเซ€ เชตเชพเช‚เชšเซ‹ เช›เซ‹, เชคเซเชฏเชพเชฐเซ‡ เชคเชฎเชพเชฐเซ‡ เช•เซ€ เชตเชพเช‚เชšเชตเซ€ เชชเชกเชถเซ‡, เช•เซเชฆเชฐเชคเซ€ เชญเชพเชทเชพ เชจเชนเซ€เช‚.

เช•เซเชฏเชพเชฐเซ‡เช• เชคเชฎเชพเชฐเซ‡ เชเช• เชธเซเชงเชพเชฐเซ‹ เช•เชฐเชตเซ‹ เชœเซ‹เชˆเช เช•เชพเชฐเชฃ เช•เซ‡ เชเช• เชตเชพเช•เซเชฏ เชตเซเชฏเชพเช•เชฐเชฃเชจเซ€ เชฐเซ€เชคเซ‡ เชธเชพเชšเซเช‚ เชจเชฅเซ€. เชชเชฐเช‚เชคเซ เชคเชฎเซ‡ เชคเซ‡ เชœเชพเชฃเชคเชพ เชจเชฅเซ€ เช•เชพเชฐเชฃ เช•เซ‡ เชคเชฎเซ‡ เช•เซ€ เชตเชพเช‚เชšเซ‹ เช›เซ‹.

i18n-keyless เชธเชพเชฅเซ‡, เชคเชฎเซ‡ i18n เชธเชฟเชธเซเชŸเชฎเชจเซ€ เชšเชฟเช‚เชคเชพ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€. เช•เซ‹เชกเชฌเซ‡เช เชธเซเช‚เชฆเชฐ เชฐเชนเซ‡ เช›เซ‡.

เชชเซเชฐเชฅเชฎ เชฆเชฟเชตเชธเชฅเซ€ เชœ เชคเชฎเชพเชฐเชพ เชตเชฟเช•เชพเชธเชจเชพ เช—เชคเชฟ เชชเชฐ เช•เซ‹เชˆ เช…เชธเชฐ เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ i18n เช‰เชฎเซ‡เชฐเซ‹
เช•เซ‹เชกเชฟเช‚เช— เชเชœเชจเซเชŸเซเชธ เชฎเชพเชŸเซ‡ เชฌเชจเชพเชตเซ‡เชฒเซเช‚

MCP เชธเชฐเซเชตเชฐ เชคเชฎเชพเชฐเซ€ i18n เชœเชฐเซ‚เชฐเชฟเชฏเชพเชคเซ‹เชจเซ‡ เช†เชตเชฐเซ€ เชฒเซ‡เชตเชพ เชฎเชพเชŸเซ‡

เชเชœเชจเซเชŸเชฟเช• เช•เซ‹เชกเชฟเช‚เช— เชฎเชพเชŸเซ‡ เชธเชฟเชธเซเชŸเชฎ เชเชŸเชฒเซ€ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซเชก เชนเซ‹เชฏ เชคเซ‡เชจเชพ เช…เชจเซเชฏ เช› เช•เชพเชฐเชฃเซ‹.

เช•เซ‹เชˆ เชจเชพเชฎ เชถเซ‹เชงเชตเชพ เชฎเชพเชŸเซ‡

เชเช• เช•เซ€ เช เชจเชพเชฎ เช†เชชเชตเชพเชจเซ‹ เชจเชฟเชฐเซเชฃเชฏ เช›เซ‡ เชœเซ‡เชจเซ‹ เช•เซ‹เชˆ เชธเชพเชšเซ‹ เชœเชตเชพเชฌ เชจเชฅเซ€. เชฌเซ‡ เชเชœเชจเซเชŸเซ‹ เชเช• เชœ เชฌเชŸเชจ เชฎเชพเชŸเซ‡ login.submit เช…เชจเซ‡ auth.button.send เชฒเช–เซ‡ เช›เซ‡. เช•เซ€ เชตเช—เชฐ เช•เซ‹เชˆ เชจเชฟเชฐเซเชฃเชฏ เชฒเซ‡เชตเชพเชจเซ‹ เชจเชฅเซ€.

เชเช• เชซเชพเช‡เชฒ เชธเช‚เชชเชพเชฆเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชตเซ€เชธ เชจเชนเซ€เช‚

เชเช• เช•เซ€-เชธเช‚เชšเชพเชฒเชฟเชค เชซเซ‡เชฐเชซเชพเชฐ เช˜เชŸเช• เช…เชจเซ‡ เชฆเชฐเซ‡เช• เชธเซเชฅเชพเชจเชฟเช• JSON เชซเชพเช‡เชฒเชจเซ‡ เช…เชธเชฐ เช•เชฐเซ‡ เช›เซ‡, เช…เชจเซ‡ เชเชœเชจเซเชŸเซ‹ เชซเชพเช‡เชฒเซ‹ เชญเซ‚เชฒเซ€ เชœเชพเชฏ เช›เซ‡. เช…เชนเซ€เช‚, เชเช• เชจเช•เชฒ เชซเซ‡เชฐเชซเชพเชฐ เช เชเช•เชฒ-เชซเชพเช‡เชฒ เชธเช‚เชชเชพเชฆเชจ เช›เซ‡.

เชเชœเชจเซเชŸ เชซเซเชฒเซ€เชŸเซ‹เชฎเชพเช‚ เชถเซ‚เชจเซเชฏ เชฎเชฐเซเชœ เชธเช‚เช˜เชฐเซเชทเซ‹

เชชเชพเช‚เชš เชเชœเชจเซเชŸ เชชเชพเช‚เชš เชถเชพเช–เชพเช“ เชชเชฐ เชฌเชงเชพ en.json เชธเช‚เชชเชพเชฆเชฟเชค เช•เชฐเซ‡ เช›เซ‡: เชเช• เช—เซ‡เชฐเช‚เชŸเซ€เชตเชพเชณเซ‹ เชธเช‚เช˜เชฐเซเชท. เช•เซ‹เชˆ เชถเซ‡เชฐ เช•เชฐเซ‡เชฒ เชซเชพเช‡เชฒ เชจเชฅเซ€, เชคเซ‡เชฅเซ€ เชตเชฐเซเช•เชŸเซเชฐเซ€เชธ เช…เชจเซ‡ เชฌเซ‡เช•เช—เซเชฐเชพเช‰เชจเซเชก เชเชœเชจเซเชŸ เช•เซเชฏเชพเชฐเซ‡เชฏ เช…เชฅเชกเชพเชคเชพ เชจเชฅเซ€.

เชŸเซ‹เช•เชจเซเชธเชฎเชพเช‚ เชธเชธเซเชคเซเช‚

เชซเชฐเซ€เชฅเซ€ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชเช• เชเชœเชจเซเชŸเซ‡ เชฆเชฐเซ‡เช• เชธเช‚เชชเชพเชฆเชจ เชชเชฐ เชธเซเชฅเชพเชจเชฟเช• เชซเชพเช‡เชฒเซ‹เชจเซ‡ เชธเช‚เชฆเชฐเซเชญเชฎเชพเช‚ เชฒเซ‹เชก เช•เชฐเชตเซ€ เช†เชตเชถเซเชฏเช• เช›เซ‡. เช•เซ€-เชฐเชนเชฟเชค เชฒเซ‹เชก เช•เช‚เชˆ เช•เชฐเชคเซเช‚ เชจเชฅเซ€: เชฒเช–เชพเชฃ เช˜เชŸเช•เชฎเชพเช‚ เชœ เช›เซ‡.

เชตเชพเช‚เชšเซ€ เชถเช•เชพเชฏ เชคเซ‡เชตเชพ เชคเชซเชพเชตเชคเซ‹

เชชเซเชฒ เชตเชฟเชจเช‚เชคเซ€ เชตเชพเชธเซเชคเชตเชฟเช• เชตเชพเช•เซเชฏเซ‹ เชฌเชคเชพเชตเซ‡ เช›เซ‡. เชเช• เชฎเชพเชจเชต เช…เชฅเชตเชพ เชธเชฎเซ€เช•เซเชทเชพ เชเชœเชจเซเชŸ เช•เซ‹เชˆ เช•เซ€ เชถเซเช‚ เชฐเชœเซ‚ เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡เชจเซ€ เชถเซ‹เชงเช–เซ‹เชณ เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ เชจเช•เชฒเชจเซเช‚ เชฎเซ‚เชฒเซเชฏเชพเช‚เช•เชจ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.

เชคเชฎเชพเชฐเชพ CLAUDE.md เชฎเชพเช‚ เชเช• เชจเชฟเชฏเชฎ

เชคเชฎเซ‡ เชฒเช–เซ‡เชฒเซ€ เชฆเชฐเซ‡เช• i18n เชจเชฟเชฏเชฎ เช เชเช• เชจเชฟเชฏเชฎ เช›เซ‡ เชœเซ‡ เชเชœเชจเซเชŸ เชคเซ‹เชกเซ€ เชถเช•เซ‡ เช›เซ‡. เช† เชจเชฟเชฏเชฎเชจเซ‡ เชฎเชพเชคเซเชฐ เชเช• เชœ เชฒเชพเช‡เชจเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ โ€” เช…เชจเซ‡ เชซเซ‹เชฒเชฌเซ‡เช• เช เชตเชพเชธเซเชคเคตเคฟเค• เชฒเช–เชพเชฃ เช›เซ‡, เชคเซ‡เชฅเซ€ เชเช• เชญเซ‚เชฒ เชธเซเช•เซเชฐเซ€เชจ เชชเชฐ a.b.c เชฌเชคเชพเชตเซ€ เชถเช•เชถเซ‡ เชจเชนเซ€เช‚.

เชคเชฎเชพเชฐเชพ เชเชœเชจเซเชŸเชจเซ‡ เชœเชฐเซ‚เชฐเซ€ เชเช•เชฎเชพเชคเซเชฐ i18n เชจเชฟเชฏเชฎ

# CLAUDE.md
Write the UI copy in English and wrap it in <T>โ€ฆ</T> from i18n-keyless-react.
That is the whole i18n setup.

เชคเชฎเชพเชฐเซเช‚ เชเชœเชจเซเชŸ เชคเซ‡เชจเซ‡ เชšเชฒเชพเชตเซ€ เชถเช•เซ‡ เช›เซ‡, เชซเช•เซเชค เชฒเช–เซ€ เชถเช•เซ‡ เช›เซ‡ เชเชตเซเช‚ เชจเชนเซ€เช‚

MCP เชธเชฐเซเชตเชฐ เชฆเซเชตเชพเชฐเชพ, เชเชœเชจเซเชŸ เช—เซเชฃเชตเชคเซเชคเชพเชตเชพเชณเชพ เช…เชจเซเชตเชพเชฆเซ‹เชจเซ€ เชฏเชพเชฆเซ€ เชฌเชจเชพเชตเซ‡ เช›เซ‡, เชเช• เชตเชพเช‚เชšเซ‡ เช›เซ‡, เช–เชฐเชพเชฌเชจเซ‡ เช“เชตเชฐเชฐเชพเช‡เชก เช•เชฐเซ‡ เช›เซ‡, เช…เชฅเชตเชพ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชนเซ‹เชฏ เชคเซ‡ เช•เซ‹เชชเซ€เชจเซ‡ เช‡เชฎเซเชชเซ‹เชฐเซเชŸ เช•เชฐเซ‡ เช›เซ‡ โ€” เชคเซ‡เชจเชพ เชชเซ‹เชคเชพเชจเชพ OAuth เชฒเซ‰เช—เชฟเชจ เชธเชพเชฅเซ‡, เช•เซ‹เชˆ เช•เซ€เชจเซ‡ เชชเซ‡เชธเซเชŸ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชตเช—เชฐ.

MCP เชฎเชพเชฐเซเช—เชฆเชฐเซเชถเชฟเช•เชพ เชตเชพเช‚เชšเซ‹
MVP เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ

เชชเซเชฐเชฅเชฎ เชฆเชฟเชตเชธเชฅเซ€ เชœ เชตเซˆเชถเซเชตเชฟเช• เชฐเซ€เชคเซ‡ เชถเชฐเซ‚ เช•เชฐเซ‹

เชœเชŸเชฟเชฒเชคเชพ เชจเชพ เช•เชพเชฐเชฃเซ‡ i18n เชจเซ‡ เชตเชฟเชฒเช‚เชฌเชฟเชค เช•เชฐเชตเชพเชจเซเช‚ เชฌเช‚เชง เช•เชฐเซ‹. เชคเซ‡เชจเซ‡ 5 เชฎเชฟเชจเชฟเชŸเชฎเชพเช‚, เชฆเชฟเชตเชธเซ‹เชฎเชพเช‚ เชจเชนเซ€เช‚, เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เซ‹. เชคเชฎเชพเชฐเซ€ เชตเชฟเช•เชพเชธ เช—เชคเชฟ เชœเชพเชณเชตเซ‹ เชœเชพเชฃเซ‡ เช•เซ‡ i18n เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชพเชฏเซเช‚ เชจ เชนเซ‹เชฏ.

  • เซซ เชฎเชฟเชจเชฟเชŸเชจเซ€ เช…เชฎเชฒเชตเชพเชฐเซ€. เชฎเชœเชพเช• เชจเชฅเซ€.

    เชเช• เชธเชฐเชณ เช•เซ‹เชจเซเชซเชฟเช— เช“เชฌเซเชœเซ‡เช•เซเชŸ เช…เชจเซ‡ เชคเชฎเซ‡ เชชเซ‚เชฐเซเช‚ เช•เชฐเซ€ เชฒเซ€เชงเซเช‚ เช›เซ‡.

  • เชตเชฟเช•เชพเชธเชจเซ€ เช—เชคเชฟ เชœเชพเชณเชตเซ€ เชฐเชพเช–เซ‹

    เชœเซ‡เชฎ เช•เซ‡ i18n เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชพเชฏเซเช‚ เชจ เชนเซ‹เชฏ เชคเซ‡เชฎ เช•เซ‹เชก เช•เชฐเซ‹.

  • เชตเซˆเชถเซเชตเชฟเช• เชฌเชœเชพเชฐเซ‹เชฎเชพเช‚ เชฎเซ‹เช•เชฒเซ‹

    เชจเชตเชพ เชญเชพเชทเชพเช“เชฎเชพเช‚ เชธเซเช•เซ‡เชฒ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชฐเชฟเชซเซ‡เช•เซเชŸเชฐเชฟเช‚เช—เชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€.

  • SSR เช…เชจเซ‡ SEO เชคเซˆเชฏเชพเชฐ เช›เซ‡

    Next.js, Remix, TanStack Start เช…เชจเซ‡ Astro เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡. เชถเซ‹เชง เชเชจเซเชœเชฟเชจ เชฎเชพเชŸเซ‡ เชธเชฐเซเชตเชฐ-เชฐเซ‡เชจเซเชกเชฐ เช•เซ‹เชˆเชชเชฃ เชญเชพเชทเชพ โ€” เชธเชฎเชพเชจ 5-เชฎเชฟเชจเชฟเชŸเชจเซ€ เชธเซ‡เชŸเช…เชช.

เชชเชพเชฐเช‚เชชเชฐเชฟเช• i18n

เชธเซ‡เชŸเช…เชช เช•เซ€ เชธเชฟเชธเซเชŸเชฎ (เซง เช•เชฒเชพเช•)
เชญเชพเชทเชพเช‚เชคเชฐ เชซเชพเช‡เชฒเซ‹ เชฌเชจเชพเชตเซ‹ (เซจ เช•เชฒเชพเช•)
เช˜เชŸเช•เซ‹เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชฐเชšเซ‹ (4 เช•เชฒเชพเช•)
เชฌเชงเซ€ เชญเชพเชทเชพเช“เชจเซเช‚ เชชเชฐเซ€เช•เซเชทเชฃ เช•เชฐเซ‹ (2 เช•เชฒเชพเช•)
เชฒเซ‡เช†เช‰เชŸ เชธเชฎเชธเซเชฏเชพเช“เชจเซ‡ เช เซ€เช• เช•เชฐเซ‹ (3 เช•เชฒเชพเช•)
เซงเซจ+ เช•เชฒเชพเช•เชจเซเช‚ เช•เชพเชฎ

i18n-เช•เซ€เชตเชฟเชจ

เชชเซ‡เช•เซ‡เชœ เช‰เชฎเซ‡เชฐเซ‹ (เซง เชฎเชฟเชจเชฟเชŸ)
API เช•เซ€ เชธเชพเชฅเซ‡ เช—เซ‹เช เชตเซ‹ (เซจ เชฎเชฟเชจเชฟเชŸ)
เชŸเซ‡เช•เซเชธเซเชŸ เช˜เชŸเช•เซ‹เชจเซ‡ เชฒเชชเฅ‡เคŸเซ‹ (เซจ เชฎเชฟเชจเชฟเชŸ)
5 เชฎเชฟเชจเชฟเชŸเชจเซเช‚ เช•เชพเชฎ
เชคเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡

เชคเซ‡ เชธเซ‡เชŸเช…เชช เช•เชฐเชตเซเช‚ เช•เซ‹เชˆ เชฎเช—เชœเชจเซเช‚ เช•เชพเชฎ เชจเชฅเซ€

เชฎเชพเชคเซเชฐ เชธเชฐเชณเชคเชฎ เช•เซ‹เชจเซเชซเชฟเช— เช“เชฌเซเชœเซ‡เช•เซเชŸ เช…เชจเซ‡ เชคเชฎเซ‡ เชตเซˆเชถเซเชตเชฟเช• เชฅเชตเชพ เชฎเชพเชŸเซ‡ เชคเซˆเชฏเชพเชฐ เช›เซ‹.
เช…เชจเซ‡ เชตเชงเซ, เชคเชฎเชพเชฐเซเช‚ เชเชœเชจเซเชŸ เชคเซ‡เชจเซ‡ เชคเชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เชธเซ‡เชŸ เช•เชฐเชถเซ‡.

เซง. เชฎเซ‚เชณเชญเซ‚เชค เชธเซ‡เชŸเช…เชช

import * as I18nKeyless from "i18n-keyless-react";

I18nKeyless.init({
  API_KEY: "YOUR_API_KEY",
  storage: window.localStorage,
  languages: {
    primary: "en",
    supported: ["en", "fr"],
  },
});

เซจ. เช˜เชŸเช• เชตเชชเชฐเชพเชถ

import { I18nKeylessText } from "i18n-keyless-react";
// import { T } from "i18n-keyless-react"; // also works

// Just write in your primary language
<I18nKeylessText>
  Welcome to our website
</I18nKeylessText>

เซฉ. เชธเชฐเซเชตเชฐ-เชธเชพเช‡เชก เชตเชชเชฐเชพเชถ (เชฆเชพ.เชค. Node.js)

import { awaitForTranslationOrFallbackToOriginal, type Lang } from 'i18n-keyless-node';

const title = await awaitForTranslationOrFallbackToOriginal('Come see my app!', user.lang as Lang);
const body = await awaitForTranslationOrFallbackToOriginal('So many new stuff!', user.lang as Lang);

await sendExpoPushNotification({ user, title, body });

4. เช˜เชŸเช•เซ‹เชจเซ€ เชฌเชนเชพเชฐเชจเชพ เชฒเช–เชพเชฃ เชฎเชพเชŸเซ‡

import { getTranslation } from "i18n-keyless-react";

export default function Navigation() {
  return (
    <HomeTabs.Navigator>
      <HomeTabs.Screen
        options={{ tabBarLabel: getTranslation("Welcome") }}
        name="WELCOME"
      />
    </HomeTabs.Navigator>
  );
}

เช…เชจเซเชตเชพเชฆเซ‹ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡

i18n-keyless เช เชเช• เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€ เช›เซ‡, เชœเซ‡ API เชธเชฐเซเชตเชฟเชธ เชธเชพเชฅเซ‡ เชœเซ‹เชกเชพเชฏเซ‡เชฒ เช›เซ‡, เชœเซ‡ เชคเชฎเชจเซ‡ เชคเชฎเชพเชฐเชพ เชŸเซ‡เช•เซเชธเซเชŸเชจเซ‡ เช•เซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ เช…เชจเซเชตเชพเชฆ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡.

เชœเซ‹ เช…เชจเซเชตเชพเชฆ เชฎเชณเซ€ เชจ เชถเช•เซ‡, เชคเซ‹ I18nKeylessเชจเซ€ API เชชเชฐ เชเช• เช…เชธเชฟเช‚เฆ•เงเฆฐเซ‹เชจเชธ เชซเซ‡เชš เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡ เชœเซ‡เชฅเซ€ AI API เช•เซ‰เชฒ เชฆเซเชตเชพเชฐเชพ เช…เชจเซเชตเชพเชฆ เชฎเซ‡เชณเชตเซ€ เชถเช•เชพเชฏ.

เช† เช“เชชเชฐเซ‡เชถเชจ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชกเซ‡เชต เชฎเซ‹เชกเชฎเชพเช‚ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เช•เซ‹เชกเชฟเช‚เช— เช•เชฐเซ€ เชฐเชนเซเชฏเชพเช‚ เชนเซ‹เชต. เชœเซ‹ เชคเชฎเซ‡ เชเช• เชšเซ‚เช•เซ€ เช—เชฏเชพ เชนเซ‹เชฏ, เชคเซ‹ เชชเซเชฐเซ‹เชกเช•เซเชถเชจเชฎเชพเช‚ เชซเช•เซเชค เชชเซเชฐเชฅเชฎ เชตเชชเชฐเชพเชถเช•เชพเชฐ เชœเซ‡เชจเซ‡ เช…เชจเซเชตเชพเชฆเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ เชคเซ‡เชจเซ‡ เชเช• เช–เชพเชฎเซ€ เชฆเซ‡เช–เชพเชถเซ‡, เชชเช›เซ€ เชคเซ‡ เชคเชฐเชค เชœ เชธเชฎเช—เซเชฐ เชตเชฟเชถเซเชตเชจเชพ เชตเชชเชฐเชพเชถเช•เชพเชฐเซ‹ เชฎเชพเชŸเซ‡ เช‰เชชเชฒเชฌเซเชง เชฅเชˆ เชœเชถเซ‡.

เชเชช เชธเซเชŸเซ‹เชฐ เช…เชจเซ‡ เช—เซ‚เช—เชฒ เชชเซเชฒเซ‡

เชคเชฎเชพเชฐเซ€ เชฆเซเช•เชพเชจเชจเซ€ เชฏเชพเชฆเซ€ เชฆเชฐเซ‡เช• เชญเชพเชทเชพเชฎเชพเช‚, เชฆเชฐเซ‡เช• เชฐเชฟเชฒเซ€เช เชชเชฐ

เชฆเชฐเซ‡เช• เช…เชชเชกเซ‡เชŸเชจเซ‹ เช…เชฐเซเชฅ เช›เซ‡ เชจเชตเซ€ เชฐเชฟเชฒเซ€เช เชจเซ‹เช‚เชงเซ‹, เชตเชฐเซเชฃเชจ เช…เชจเซ‡ เช•เซ€เชตเชฐเซเชกเซเชธ โ€” เชฆเชฐเซ‡เช• เชญเชพเชทเชพ เชฎเชพเชŸเซ‡, เชฌเช‚เชจเซ‡ เชธเซเชŸเซ‹เชฐเซเชธ เชชเชฐ. เชคเซ‡ เช›เซ‡ เชœเซ‡ เชคเชฎเชจเซ‡ เชญเชพเชทเชพเช“ เช‰เชฎเซ‡เชฐเชคเชพ เช…เชŸเช•เชพเชตเซ‡ เช›เซ‡. เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชจเชนเซ€เช‚.

  • เชนเชฐ เชญเชพเชทเชพ เชฎเชพเชŸเซ‡ เชฐเชฟเชฒเชฟเช เชจเซ‹เช‚เชงเซ‹, เชเช• เช•เซ‰เชฒเชฎเชพเช‚

    เช…เชชเชกเซ‡เชŸ เชเช• เชตเชพเชฐ เชฒเช–เซ‹. awaitForTranslation เชคเซ‡เชจเซ‡ เชคเชฎเชพเชฐเซ€ เชตเซ‡เชšเชพเชฃเชจเซ€ เชฆเชฐเซ‡เช• เชญเชพเชทเชพเชฎเชพเช‚ เชชเชฐเชค เช†เชชเซ‡ เช›เซ‡, เช…เชจเซ‡ เชคเชฎเชพเชฐเชพ เชธเซเชŸเซ‹เชฐเชจเชพ เช•เชจเซเชซเชฟเช— เชคเซ‡เชจเซ‡ EAS เช…เชฅเชตเชพ fastlane เชชเชฐ เชซเซ€เชก เช•เชฐเซ‡ เช›เซ‡.

  • 48 เชญเชพเชทเชพเช“, เชเชช เชธเซเชŸเซ‹เชฐ เชธเซเชฒเซ‹เชŸเซเชธ เชธเชพเชฅเซ‡ เชฎเซ‡เชช เช•เชฐเซ‡เชฒเซ€ เช›เซ‡

    pt-BR เช…เชจเซ‡ pt-PT เชฌเซ‡ เชฏเชพเชฆเซ€เช“ เช›เซ‡; en-GB, en-AU เช…เชจเซ‡ en-CA เชคเซเชฐเชฃ เช›เซ‡. toAppStoreLocale เชฆเชฐเซ‡เช• เช…เชจเซเชตเชพเชฆเชจเซ‡ เชฏเซ‹เช—เซเชฏ เชœเช—เซเชฏเชพเช เชฎเซ‚เช•เซ‡ เช›เซ‡.

  • เชฐเชฟเชฒเซ€เช เชตเช—เชฐ เช–เชฐเชพเชฌ เช…เชจเซเชตเชพเชฆเชจเซ‡ เช เซ€เช• เช•เชฐเซ‹

    เชเชชเชฎเชพเช‚, เชกเซ‡เชถเชฌเซ‹เชฐเซเชกเชฎเชพเช‚ เชเช• เช“เชตเชฐเชฐเชพเช‡เชก เชเช•เชธเชพเชฅเซ‡ เชฒเชพเช‡เชต เช›เซ‡ โ€” เช•เซ‹เชˆ เชนเซ‹เชŸเชซเชฟเช•เซเชธ เชฌเชฟเชฒเซเชก เชจเชนเซ€เช‚, เช•เซ‹เชˆ เชธเซเชŸเซ‹เชฐ เชธเชฎเซ€เช•เซเชทเชพ เชจเชนเซ€เช‚. เชฏเชพเชฆเซ€เชฎเชพเช‚, เชชเซเชถ เชซเชฐเซ€เชฅเซ€ เชšเชฒเชพเชตเซ‹.

  • เชถเชฌเซเชฆ เชชเซเชฐเชฎเชพเชฃเซ‡ เชญเชพเชต เชจเชฅเซ€

    เชเช• เช…เชจเซเชตเชพเชฆเช• เชฒเช—เชญเช— โ‚ฌ0.10 เชชเซเชฐเชคเชฟ เชถเชฌเซเชฆ เชฒเซ‡ เช›เซ‡. 10 เชญเชพเชทเชพเช“เชฎเชพเช‚ 2,000 เชธเซเชŸเซเชฐเชฟเช‚เช—เซเชธ เชเชตเซเช‚ เชฌเชœเซ‡เชŸ เช›เซ‡ เชœเซ‡ เชเช• เชธเซ‹เชฒเซ‹ เชกเซ‡เชตเชฒเชชเชฐ เชชเชพเชธเซ‡ เชจเชฅเซ€. เช…เชนเซ€เช‚ เชถเชฌเซเชฆเซ‹เชจเซ€ เช—เชฃเชคเชฐเซ€ เชฅเชคเซ€ เชจเชฅเซ€.

เชเช•เซเชธเซเชชเซ‹ เชเชช เชฎเชพเชŸเซ‡เชจเซเช‚ เชธเช‚เชชเซ‚เชฐเซเชฃ เชฐเซ‡เชธเซ€เชชเซ€

// store.config.js โ€” EAS Metadata awaits an async config
const { init, awaitForTranslation, toAppStoreLocale } = require("i18n-keyless-node");

const LANGS = ["en", "fr", "de", "ja", "pt-BR"];
const DESCRIPTION = "Bibi translates your app while you sleepโ€ฆ";

module.exports = async () => {
  init({ API_KEY: process.env.I18N_KEYLESS_KEY, languages: { primary: "en", supported: LANGS } });
  const info = {};
  for (const lang of LANGS) {
    info[toAppStoreLocale(lang)] = {
      title: await awaitForTranslation("Bibi", lang, { context: "App Store app name, 30 characters max" }),
      subtitle: await awaitForTranslation("Keyless i18n", lang, { context: "App Store subtitle, 30 characters max" }),
      description: await awaitForTranslation(DESCRIPTION, lang, { context: "App Store description" }),
    };
  }
  return { configVersion: 0, apple: { info } };
};

เช เชœ เช•เซ‰เชฒ Google Play เชฎเชพเชŸเซ‡ fastlane เชฎเซ‡เชŸเชพเชกเซ‡เชŸเชพ เชซเชพเช‡เชฒเซ‹ เชฒเช–เซ‡ เช›เซ‡. เช•เซ‡เชชเซเชธ เชธเชฒเชพเชนเช•เชพเชฐ เช›เซ‡: เชฎเชฐเซเชฏเชพเชฆเชพเชจเซ‡ เชธเช‚เชฆเชฐเซเชญเชฎเชพเช‚ เชฎเซ‚เช•เซ‹ เช…เชจเซ‡ เชชเซเชถ เช•เชฐเชคเชพ เชชเชนเซ‡เชฒเชพ เชฒเช‚เชฌเชพเชˆ เชคเชชเชพเชธเซ‹.

เชคเชฎเชพเชฐเซ€ เชœเชพเชคเซ‡ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‹

เช‡เชจเซเชŸเชฐเซ‡เช•เซเชŸเชฟเชต เชธเซ‡เชจเซเชกเชฌเซ‹เช•เซเชธ

เชœเซเช“ เช•เซ‡ i18n-keyless เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎเชฎเชพเช‚ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡

เชเช• เชฒเชพเช‡เชต, เชธเช‚เชชเชพเชฆเฆจเชฏเซ‹เช—เซเชฏ StackBlitz เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เช–เซ‹เชฒเซ‹ เชœเซ‡เชฅเซ€ เชคเชฎเซ‡ เชŸเชพเช‡เชช เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เช…เชจเซเชตเชพเชฆเซ‹ เช‰เช•เซ‡เชฒเชพเชคเชพ เชœเซ‹เชˆ เชถเช•เซ‹.

เชนเชœเซ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เชจเชฅเซ€ เชคเซ‡เชตเชพ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹

เชกเซ‡เชตเชฒเชชเชฐเซเชธ เชธเชฐเชณเชคเชพเชจเซ‡ เชชเซเชฐเซ‡เชฎ เช•เชฐเซ‡ เช›เซ‡

เชฌเซ€เชœเชพ เชฒเซ‹เช•เซ‹ i18n-keyless เชตเชฟเชถเซ‡ เชถเซเช‚ เช•เชนเซ‡ เช›เซ‡ เชคเซ‡ เชœเซเช“

เชฎเซ‡เช‚ เช†เชชเชฃเชพ MVPเชฎเชพเช‚ i18n เชฎเชพเชคเซเชฐ 5 เชฎเชฟเชจเชฟเชŸเชฎเชพเช‚ เช‰เชฎเซ‡เชฐเซ€ เชถเช•เซเชฏเซ‹. เช…เชฎเซ‡ เช•เซ‹เชˆ เชตเชงเชพเชฐเชพเชจเซ‹ เชกเซ‡เชตเชฒเชชเชฎเซ‡เชจเซเชŸ เชธเชฎเชฏ เชตเชฟเชจเชพ 7 เชญเชพเชทเชพเช“เชฎเชพเช‚ เชฒเซ‹เชจเซเชš เช•เชฐเซเชฏเซเช‚. เช…เชฎเชพเชฐเซ‹ เช•เซ‹เชกเชฌเซ‡เช เชธเชพเชซ เชฐเชนเซเชฏเซ‹ เช…เชจเซ‡ เช…เชฎเซ‡ เช…เชจเซเชตเชพเชฆ เช•เซ€เชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเชตเชพเชจเซ‡ เชฌเชฆเชฒเซ‡ เชซเซ€เชšเชฐเซเชธ เชฌเชจเชพเชตเชตเชพ เชชเชฐ เชงเซเชฏเชพเชจ เช•เซ‡เชจเซเชฆเซเชฐเชฟเชค เช•เชฐเซ€ เชถเช•เซเชฏเชพ.

JS

Jamie Smith

เชเช• เช•เซ‚เชฒ เชธเซเชŸเชพเชฐเซเชŸเช…เชชเชฎเชพเช‚ เชธเซ€เชŸเซ€เช“

เช…เชจเซเชตเชพเชฆ เช•เซ€เชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเชตเชพเชจเซ‹ เชฎเชพเชจเชธเชฟเช• เช“เชตเชฐเชนเซ‡เชก เช…เชฎเชพเชฐเซ€ เช‰เชคเซเชชเชพเชฆเช•เชคเชพเชจเซ‹ เชจเชพเชถ เช•เชฐเซ€ เชฐเชนเซเชฏเซ‹ เชนเชคเซ‹. i18n-keyless เชธเชพเชฅเซ‡, เช…เชฎเซ‡ เชซเช•เซเชค เชชเซเชฐเชพเช•เซƒเชคเชฟเช• เชญเชพเชทเชพเชฎเชพเช‚ เชฒเช–เซ€เช เช›เซ€เช เช…เชจเซ‡ เชฌเชงเซเช‚ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡. เชคเซ‡ เชเชตเซเช‚ เช›เซ‡ เชœเชพเชฃเซ‡ เช•เซ‡ i18n เช…เชฎเชพเชฐเชพ เช•เชพเชฐเซเชฏเชชเซเชฐเชตเชพเชนเชฎเชพเช‚ เชนเชตเซ‡ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เชœ เชจเชฅเซ€.

AL

Alex Lee

เชฌเซ€เชœเซ€ เชเช• เช•เซ‚เชฒ เชธเซเชŸเชพเชฐเซเชŸเช…เชชเชฎเชพเช‚ เชฒเซ€เชก เชกเซ‡เชตเชฒเชชเชฐ

เช…เชฎเซ‡ เช…เชฎเชพเชฐเชพ เช‰เชคเซเชชเชพเชฆเชจ เชฎเชพเชŸเซ‡ เชฒเซ‹เชจเซเชš เชชเช›เซ€ i18n เชตเชฟเชฒเช‚เชฌเชฟเชค เช•เชฐเชตเชพเชจเชพ เชนเชคเชพ. i18n-keyless เชธเชพเชฅเซ‡, เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เช…เชฎเชพเชฐเชพ MVP เชคเชฌเช•เซเช•เชพเชฎเชพเช‚ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เซเชฏเซเช‚ เช…เชจเซ‡ เชชเซเชฐเชฅเชฎ เชฆเชฟเชตเชธเชฅเซ€ เชตเซˆเชถเซเชตเชฟเช• เชธเซเชคเชฐเซ‡ เชฒเซ‹เชจเซเชš เช•เชฐเซเชฏเซเช‚. ROI เช…เชฆเซเชญเซเชค เชฐเชนเซเชฏเซเช‚ เช›เซ‡.

MR

Maria Rodriguez

เช—เซเชฒเซ‹เชฌเชฒเชเชชเชจเชพ เชธเซเชฅเชพเชชเช•

เชญเชพเชต เชจเชฟเคฐเฅเคงเชพเชฐเชฃ

เชธเชฐเชณ, เช…เชจเซเชฎเชพเชจเชฟเชค เชญเชพเชต เชจเชฟเชฐเซเชงเชพเชฐเชฃ

เชคเชฎเชพเชฐเชพ เชธเซเช•เซ‡เชฒ เชฎเชพเชŸเซ‡ เชเช• เชซเซเชฒเซ‡เชŸ เช•เชฟเช‚เชฎเชค.
เชนเชฐ เชเช• เชฏเซ‹เชœเชจเชพเชฎเชพเช‚ เชฆเชฐเซ‡เช• เชธเซเชตเชฟเชงเชพ.
เชถเชฌเซเชฆ เชฆเซ€เช  เช•เซ‹เชˆ เชซเซ€ เชจเชฅเซ€, เชŸเซ‹เช•เชจ เช—เชฃเชคเชฐเซ€ เชจเชฅเซ€.

เชชเซเชฐเชพเชฐเช‚เชญเชฟเช•
โ‚ฌ4/ เชฎเชนเชฟเชจเซ‡

เชฆเชฐ เชฎเชนเชฟเชจเซ‡ 1,000 เชธเช•เซเชฐเชฟเชฏ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“

เช‡เชจเซเชกเซ€ เชเชชเซเชธ เช…เชจเซ‡ เชจเชตเชพ เช‰เชคเซเชชเชพเชฆเชจเซ‹ เชฎเชพเชŸเซ‡

เช‡เชจเซเชกเซ€
โ‚ฌ9/ เชฎเชนเชฟเชจเซ‡

เชฆเชฐ เชฎเชนเชฟเชจเซ‡ 5,000 เชธเช•เซเชฐเชฟเชฏ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชธเซเชงเซ€

เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เชฎเชพเชŸเซ‡ เชœเซ‡ เชคเซ‡เชฎเชจเซเช‚ เชชเซเชฐเซ‡เช•เซเชทเช•เซ‹ เชถเซ‹เชงเซ‡ เช›เซ‡

เชตเซƒเชฆเซเชงเชฟ
โ‚ฌ29/ เชฎเชนเชฟเชจเซ‡

เชนเช‚เชฎเซ‡เชถเชพ 50,000 เชฎเชพเชธเชฟเช• เชธเช•เซเชฐเชฟเชฏ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“

เชตเชพเชธเซเชคเชตเชฟเช• เชŸเซเชฐเซ‡เช•เซเชถเชจ เชงเชฐเชพเชตเชคเซ€ เชเชชเซเชธ เชฎเชพเชŸเซ‡

เชฎเชพเชช
โ‚ฌ99/ เชฎเชนเชฟเชจเซ‡

เช‰เชชเชฐ 500,000 เชฎเชพเชธเชฟเช• เชธเช•เซเชฐเชฟเชฏ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“

เชธเซเช•เซ‡เชฒ เชชเชฐเชจเชพ เช‰เชคเซเชชเชพเชฆเชจเซ‹ เชฎเชพเชŸเซ‡

เชฆเชฐเซ‡เช• เชฏเซ‹เชœเชจเชพเชฎเชพเช‚ เชถเชพเชฎเซ‡เชฒ เช›เซ‡:

เชฌเชงเซ€ 48 เชญเชพเชทเชพเช“. เชธเชฎเช—เซเชฐ เชตเชฟเชถเซเชต, เชชเซเชฐเชฅเชฎ เชฆเชฟเชตเชธเชฅเซ€

เช…เชฎเชฐเซเชฏเชพเชฆเชฟเชค เช…เชจเซเชตเชพเชฆเซ‹, AI เชธเชนเชฟเชค. เชจเชตเชพ เชธเซเชŸเซเชฐเชฟเช‚เช—เซเชธ เช‰เชคเซเชชเชพเชฆเชจเชฎเชพเช‚ เช†เชชเซ‹เช†เชช เช…เชจเซเชตเชพเชฆเชฟเชค เชฅเชพเชฏ เช›เซ‡

UGC (เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ-เชœเชจเชฐเซ‡เชŸเซ‡เชก เชธเชพเชฎเช—เซเชฐเซ€) เชจเซเช‚ เชฒเชพเช‡เชต เช…เชจเซเชตเชพเชฆ

เช•เซ‹เชˆเชชเชฃ เชธเชฎเชฏเซ‡ เช…เชชเช—เซเชฐเซ‡เชก, เชกเชพเช‰เชจเช—เซเชฐเซ‡เชก เช…เชฅเชตเชพ เชฐเชฆ เช•เชฐเซ‹

500,000 เชฅเซ€ เชตเชงเซ เชฎเชพเชธเชฟเช• เชธเช•เซเชฐเชฟเชฏ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“? เช…เชฎเชพเชฐเซ‹ เชธเช‚เชชเชฐเซเช• เช•เชฐเซ‹

เช เชœ เชเชช เชฌเซ€เชœเซ‡ เช•เซเชฏเชพเช‚ เช–เชฐเซเชš เช•เชฐเซ‡ เช›เซ‡

เชฌเซ‡ เชธเซเชฒเชพเช‡เชกเชฐเซเชธ เช–เชธเซ‡เชกเซ‹. เชคเชฎเชพเชฐเชพ เชเชช เชฎเชพเชŸเซ‡ เชฌเชฟเชฒ 48 เชญเชพเชทเชพเช“เชฎเชพเช‚ เช›เซ‡.

1,000
2,500
เชธเซ‹เชฒเซเชฏเซเชถเชจเชคเชฎเชพเชฐเซเช‚ เชฎเชพเชธเชฟเช• เชฌเชฟเชฒเชคเชฎเซ‡ เชชเซเชฐเชคเชฟ เชšเซ‚เช•เชตเซ‹เชญเชพเชทเชพเช‚เชคเชฐเชญเชพเชทเชพเช“
i18n-keylessเช…เชฎเซ‡โ‚ฌ4/ เชฎเชนเชฟเชจเซ‡เชฎเชพเชธเชฟเช• เชธเช•เซเชฐเชฟเชฏ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“
เชœเซ€เชค เชœเซ€เชค.
AI, เช…เชจเช‚เชค, เชธเชฎเชพเชตเชฟเชทเซเชŸเชฌเชงเชพ 48, เชชเชนเซ‡เชฒเชพ เชฆเชฟเชตเชธเชฅเซ€
Crowdinโ‚ฌ88/ เชฎเชนเชฟเชจเซ‡1เชนเซ‹เชธเซเชŸเซ‡เชก เชถเชฌเซเชฆเซ‹: เชคเชฎเชพเชฐเชพ เชถเชฌเซเชฆเซ‹ ร— 48
เช•เซเชฐเชพเช‰เชกเชฟเชจ AI, เช•เซเชตเซ‹เชŸเชพ เชจเซ€ เช…เช‚เชฆเชฐเชคเชฎเซ‡ เชฆเชฐเซ‡เช• เชเช• เช‰เชฎเซ‡เชฐเซ‹
Intlayerโ‚ฌ27/ เชฎเชนเชฟเชจเซ‡2เชฌเซ‡เช เช•เซ‹ เช…เชจเซ‡ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเซเชธ
AI เชœเชจเชฐเซ‡เชถเชจ, เช•เซเชตเซ‹เชŸเชพเชจเซ€ เช…เช‚เชฆเชฐเชคเชฎเซ‡ เชฆเชฐเซ‡เช• เชเช• เช‰เชฎเซ‡เชฐเซ‹
Lingo.devโ‚ฌ91/ เชฎเชนเชฟเชจเซ‡3เชเช• เชฌเซ‡เช เชซเซ€, เชชเช›เซ€ AI เชŸเซ‹เช•เชจเซเชธ
AI เชฌเชฟเชฒ เชธเซ€เชงเซเช‚ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชœเชพเชฏ เช›เซ‡เชคเชฎเซ‡ เชฆเชฐเซ‡เช• เชเช• เช‰เชฎเซ‡เชฐเซ‹
Locizeโ‚ฌ77/ เชฎเชนเชฟเชจเซ‡4เชถเชฌเซเชฆเซ‹ ร— 48, เช…เชจเซ‡ CDN เชกเชพเช‰เชจเชฒเซ‹เชกเซเชธ
เชคเชฎเซ‡ เชคเชฎเชพเชฐเซ€ เชชเซ‹เชคเชพเชจเซ€ AI เช•เซ€ เชฒเชพเชตเซ‹ เช›เซ‹เซงเซฆ เชธเซŒเชฅเซ€ เชฎเซ‹เชŸเชพ เชชเซเชฐเช•เชพเชถเชฟเชค เช†เชฏเซ‹เชœเชจเชฎเชพเช‚
Lokaliseโ‚ฌ132/ เชฎเชนเชฟเชจเซ‡5เชฌเซ‡เช เช•เซ‹, เชชเช›เซ€ เชšเชพเชตเซ€เช“
เช…เชจเซเชตเชพเชฆเช•เซ‹ เช…เชฒเช— เชฐเซ€เชคเซ‡ เชฌเชฟเชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡เชคเชฎเซ‡ เชฆเชฐเซ‡เช• เชเช• เช‰เชฎเซ‡เชฐเซ‹
Phraseโ‚ฌ483/ เชฎเชนเชฟเชจเซ‡6เชฌเซ‡เช เช•เซ‹, เชชเช›เซ€ เชธเช‚เชšเชพเชฒเชฟเชค เชถเชฌเซเชฆเซ‹
เชฆเชฐ เชถเชฌเซเชฆเซ‡ $0.06, เช…เชฒเช—เชฅเซ€ เชฌเชฟเชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡เชคเชฎเซ‡ เชฆเชฐเซ‡เช• เชเช• เช‰เชฎเซ‡เชฐเซ‹
Smartlingโ‚ฌ552/ เชฎเชนเชฟเชจเซ‡7เชฆเชฐเซ‡เช• เชถเชฌเซเชฆ, เชฆเชฐเซ‡เช• เชญเชพเชทเชพ
AI เช…เชจเซเชตเชพเชฆ $0.06 เชถเชฌเซเชฆ เชฆเซ€เช เชคเชฎเซ‡ เชฆเชฐเซ‡เช• เชเช• เช‰เชฎเซ‡เชฐเซ‹
Tolgeeโ‚ฌ49/ เชฎเชนเชฟเชจเซ‡8เช•เซ€เช“ เช…เชจเซ‡ เชฌเซ‡เช เช•เซ‹
เชฏเช‚เชคเซเชฐ เช…เชจเซเชตเชพเชฆ เช•เซเชฐเซ‡เชกเชฟเชŸเซเชธเชคเชฎเซ‡ เชฆเชฐเซ‡เช•เชจเซ‡ เชญเชฐเซ‹
Weglotโ‚ฌ1,678/ เชฎเชนเชฟเชจเซ‡9เชถเชฌเซเชฆเซ‹ ร— เชญเชพเชทเชพเช“, เชเช• เชตเซ‡เชฌ เชชเซ‡เชœ เชชเชฐ
เชฏเช‚เชคเซเชฐ, เช•เซเชตเซ‹เชŸเชพเชจเซ€ เช…เช‚เชฆเชฐ20 เชธเซŒเชฅเซ€ เชฎเซ‹เชŸเชพ เชชเซเชฐเช•เชพเชถเชฟเชค เชฏเซ‹เชœเชจเชพเชฎเชพเช‚

เชœเชพเชนเซ‡เชฐ เชฏเชพเชฆเซ€เชจเซ€ เช•เชฟเช‚เชฎเชคเซ‹, เช“เช—เชธเซเชŸ 2026 เชฎเชพเช‚ เชตเชพเช‚เชšเซ‡เชฒเซ€. เชตเชฟเช•เซเชฐเซ‡เชคเชพเช“ เชคเซ‡เชฎเชจเซ‡ เชฌเชฆเชฒเซ‡ เช›เซ‡, เชคเซ‡เชฅเซ€ เช•เซƒเชชเชพ เช•เชฐเซ€เชจเซ‡ เชคเชชเชพเชธเซ‹. เชฆเชฐเซ‡เช• เชฌเชฟเชฒ เช…เชฎเชพเชฐเซ€ เชชเซเชฐเช•เชพเชถเชฟเชค เชธเซ€เชกเซ€เชจเซ€ เชตเชพเช‚เชšเชจ เช›เซ‡, เช…เชจเซ‡ เช…เชฎเซ‡ เชนเช‚เชฎเซ‡เชถเชพเช‚ เชคเชฎเชพเชฐเซเช‚ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชœเชพเชณเชตเซ€ เชฐเชพเช–เชคเซเช‚ เชธเชธเซเชคเชพเชฎเชพเช‚ เชธเชธเซเชคเซเช‚ เชšเซ‚เช•เชตเซ‡เชฒ เชชเซเชฒเชพเชจ เชฒเชˆเช เช›เซ€เช. เชœเซเชฏเชพเชฐเซ‡ เช•เซ‹เชˆ เชตเชฟเช•เซเชฐเซ‡เชคเชพ เชชเซเชฐเชฅเชฎ เช…เชจเซเชตเชพเชฆ เชเช•เชตเชพเชฐ เชฌเชฟเชฒ เช•เชฐเซ‡ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เชฌเชพเชฐ เชฎเชนเชฟเชจเชพเชฎเชพเช‚ เชซเซ‡เชฒเชพเชตเซ€เช เช›เซ€เช.

1 Crowdin เชชเซเชฐเซ‹ เชชเซเชฒเชพเชจ เชชเชฐ 60,000 เชนเซ‹เชธเซเชŸ เช•เชฐเซ‡เชฒ เชถเชฌเซเชฆเซ‹ เชฎเชพเชŸเซ‡ เชฎเชพเชธเชฟเช• 44 เชฏเซเชฐเซ‹ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡ เชตเชพเชฐเซเชทเชฟเช• เชฌเชฟเชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชเช• เชนเซ‹เชธเซเชŸ เช•เชฐเซ‡เชฒ เชถเชฌเซเชฆ เช เชเช• เชฒเช•เซเชทเซเชฏ เชญเชพเชทเชพเชฎเชพเช‚ เชเช• เชถเชฌเซเชฆ เช›เซ‡. เช…เชฎเซ‡ 60,000 เชฅเซ€ เช‰เชชเชฐเชจเชพ เช† เชฌเซเชฒเซ‹เช•เชจเซ€ เช•เชฟเช‚เชฎเชคเชจเซเช‚ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชจ เช•เชฐเซ€เช เช›เซ€เช.

2 Intlayer เช“เชชเชจ เชธเซ‹เชฐเซเชธ เช›เซ‡. $29 เชชเซเชฐเชคเชฟ เชฎเชนเชฟเชจเซ‡ CMS เช…เชจเซ‡ AI เชœเชจเชฐเซ‡เชถเชจ เช•เซเชตเซ‹เชŸเชพ เช–เชฐเซ€เชฆเซ‡ เช›เซ‡. เช•เซเชตเซ‹เชŸเชพ เช‰เชชเชฐเชพเช‚เชค, เชคเชฎเซ‡ เชคเชฎเชพเชฐเซ€ เชชเซ‹เชคเชพเชจเซ€ AI เช•เซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เชฎเซ‹เชกเซ‡เชฒ เชฌเชฟเชฒ เชชเซเชฐเชคเชฟ เชฆเชธ เชฒเชพเช– เชŸเซ‹เช•เชจเซเชธ เชฎเชพเชŸเซ‡ $10 เช‰เชฎเซ‡เชฐเซ€เช เช›เซ€เช, เชœเซ‡ เชฌเชพเชฐ เชฎเชนเชฟเชจเชพเชฎเชพเช‚ เชตเชนเซ‡เช‚เชšเชพเชฏเซ‡เชฒเซเช‚ เชนเซ‹เชฏ เช›เซ‡.

3 เชฒเชฟเช‚เช—เซ‹.เชกเซ‡เชต เชฆเชฐ เชฎเชนเชฟเชจเซ‡ 99 เชกเซ‹เชฒเชฐ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เช‰เชชเชฐเชพเช‚เชค เช‡เชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐเชจเชพ เชฆเชฐเซ‡เช• เชฎเชฟเชฒเชฟเชฏเชจ เชŸเซ‹เช•เชจเซเชธ เชฎเชพเชŸเซ‡ เชตเชงเชพเชฐเชพเชจเชพ 2 เชกเซ‹เชฒเชฐ, เช…เชจเซ‡ เชคเซ‡ เชคเชฎเชจเซ‡ เชฎเซ‹เชกเซ‡เชฒเชจเซเช‚ เชฌเชฟเชฒ เชชเชธเชพเชฐ เช•เชฐเซ‡ เช›เซ‡. เช…เชฎเซ‡ เชฆเชฐเซ‡เช• เชถเชฌเซเชฆ เชฎเชพเชŸเซ‡ 1.4 เชŸเซ‹เช•เชจเซเชธ เช…เชจเซ‡ เชฎเซ‹เชกเซ‡เชฒเชจเชพ เช–เชฐเซเชšเชจเชพ เชฆเชฐเซ‡เช• เชฎเชฟเชฒเชฟเชฏเชจ เชŸเซ‹เช•เชจเซเชธ เชฎเชพเชŸเซ‡ 10 เชกเซ‹เชฒเชฐเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเซ€เช เช›เซ€เช. เชฌเซ‡เช เชซเซ€ เช† เชธเช‚เช–เซเชฏเชพเชจเซ‹ เชฎเซ‹เชŸเซ‹ เชญเชพเช— เช›เซ‡.

4 เชฒเซ‹เช•เชพเช‡เช เชฆเชฐ เชฎเชนเชฟเชจเซ‡ 7, 19 เช…เชจเซ‡ 49 เชฏเซเชฐเซ‹ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡ เช…เชจเซเช•เซเชฐเชฎเซ‡ 15,000, 30,000 เช…เชจเซ‡ 60,000 เชถเชฌเซเชฆเซ‹ เชฎเชพเชŸเซ‡ เชนเซ‹เชฏ เช›เซ‡, เชœเซ‡เชจเซ€ เชธเชพเชฅเซ‡ 1, 3 เช…เชจเซ‡ 5 เชฎเชฟเชฒเชฟเชฏเชจ CDN เชกเชพเช‰เชจเชฒเซ‹เชกเซเชธ เชนเซ‹เชฏ เช›เซ‡. เชคเซ‡เชจเชพเชฅเซ€ เช‰เชชเชฐ, เชคเซ‡ เชฆเชฐ 1,000 เชตเชงเชพเชฐเชพเชจเชพ เชถเชฌเซเชฆเซ‹ เชฎเชพเชŸเซ‡ $0.50 เช…เชจเซ‡ เชฆเชฐ เชฎเชฟเชฒเชฟเชฏเชจ เชตเชงเชพเชฐเชพเชจเชพ เชกเชพเช‰เชจเชฒเซ‹เชกเซเชธ เชฎเชพเชŸเซ‡ $5 เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡. เช…เชฎเซ‡ เชฆเชฐ เชฎเชนเชฟเชจเซ‡ เชชเซเชฐเชคเซเชฏเซ‡เช• เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชฎเชพเชŸเซ‡ เชคเซเชฐเซ€เชธ เชกเชพเช‰เชจเชฒเซ‹เชกเซเชธเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเซ€เช เช›เซ€เช. เช•เซ‹เชˆ เชชเชฃ เชชเซเชฐเช•เชพเชถเชฟเชค เชฏเซ‹เชœเชจเชพ 48 เชญเชพเชทเชพเช“เชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเชคเซ€ เชจเชฅเซ€.

5 Lokalise เชฆเชฐ เชฎเชนเชฟเชจเซ‡ $144, $375 เช…เชจเซ‡ $999 เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เช…เชจเซ‡ เช•เซ‹เชˆ เช•เซ€ เชฎเชฐเซเชฏเชพเชฆเชพ เชจเชฅเซ€. เช…เชฎเซ‡ เชงเชพเชฐเซ€เช เช›เซ€เช เช•เซ‡ เชคเซเชฐเชฃ เชฏเซ‹เชœเชจเชพเช“เชฎเชพเช‚ 5,000, 20,000 เช…เชจเซ‡ 100,000 เช•เซ€ เช›เซ‡, เช…เชจเซ‡ เชฆเชฐเซ‡เช• เช•เซ€ เชฎเชพเชŸเซ‡ เชฌเชพเชฐ เชถเชฌเซเชฆเซ‹ เช›เซ‡. เชฎเชพเชจเชต เช…เชจเซเชตเชพเชฆ เช…เชฒเช—เชฅเซ€ เชฌเชฟเชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

6 เชตเชพเช•เซเชฏ เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เชฏเซ‹เชœเชจเชพเชฎเชพเช‚ 1 เชฎเชฟเชฒเชฟเชฏเชจ เชธเช‚เชšเชพเชฒเชฟเชค เชถเชฌเซเชฆเซ‹ เชฎเชพเชŸเซ‡ เชฆเชฐ เชฎเชนเชฟเชจเซ‡ $525 เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เช…เชจเซ‡ 3 เชฎเชฟเชฒเชฟเชฏเชจ เชฎเชพเชŸเซ‡ $1,245. เช…เชฎเซ‡ เชฆเชฐเซ‡เช• เชญเชพเชทเชพเชฎเชพเช‚เชจเชพ เชฆเชฐเซ‡เช• เชถเชฌเซเชฆ เชฎเชพเชŸเซ‡ เชเช• เชธเช‚เชšเชพเชฒเชฟเชค เชถเชฌเซเชฆเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเซ€เช เช›เซ€เช, เช…เชจเซ‡ เช…เชฎเซ‡ เช‰เชชเชฐเซ‹เช•เซเชค $1,245 เชฌเซเชฒเซ‹เช•เชจเซ‡ 3 เชฎเชฟเชฒเชฟเชฏเชจ เชฎเชพเชŸเซ‡ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชฟเชค เช•เชฐเซ€เช เช›เซ€เช.

7 Smartling เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎเชจเซ€ เช•เชฟเช‚เชฎเชค เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเชคเซเช‚ เชจเชฅเซ€. เช…เชฎเซ‡ เชฎเชพเชคเซเชฐ AI เช…เชจเซเชตเชพเชฆเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเซ€เช เช›เซ€เช, เชชเซเชฐเช•เชพเชถเชฟเชค เชฅเชฏเซ‡เชฒ $0.06 เชชเซเชฐเชคเชฟ เชถเชฌเซเชฆเชจเชพ เชฆเชฐเซ‡, เชฌเชพเชฐ เชฎเชนเชฟเชจเชพเชฎเชพเช‚ เชตเชนเซ‡เช‚เชšเชพเชฏเซ‡เชฒเซเช‚. เชคเชฎเชพเชฐเซเช‚ เชตเชพเชธเซเชคเชตเชฟเช• เชฌเชฟเชฒ เชตเชงเชพเชฐเซ‡ เช›เซ‡.

8 Tolgee เชฌเชฟเชฒ เช•เชฐเซ‡ เช›เซ‡ เช•เซ€, เชถเชฌเซเชฆเซ‹ เชจเชนเซ€เช‚, เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เชฆเชฐเซ‡เช• เช•เซ€ เชฎเชพเชŸเซ‡ เชฌเชพเชฐ เชถเชฌเซเชฆเซ‹ เช—เชฃเซ‡ เช›เซ‡. เชคเซ‡ 2,000 เช•เซ€ เชฎเชพเชŸเซ‡ โ‚ฌ49, 5,000 เชฎเชพเชŸเซ‡ โ‚ฌ179 เช…เชจเซ‡ 20,000 เชฎเชพเชŸเซ‡ โ‚ฌ499 เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡ เชตเชพเชฐเซเชทเชฟเช• เชงเซ‹เชฐเชฃเซ‡ เชฌเชฟเชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชคเซ‡เชจเชพเชฅเซ€ เช‰เชชเชฐ เช†เชชเชฃเซ‡ โ‚ฌ499 เชฌเซเชฒเซ‹เช•เชจเซเช‚ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชจ เช•เชฐเซ€เช เช›เซ€เช. เชฎเชถเซ€เชจ เช…เชจเซเชตเชพเชฆ เช•เซเชฐเซ‡เชกเชฟเชŸ เช…เชฒเช—เชฅเซ€ เช—เชฃเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

9 Weglot เชเช• เชตเซ‡เชฌ เชชเซ‡เชœเชจเซเช‚ เชญเชพเชทเชพเช‚เชคเชฐ เช•เชฐเซ‡ เช›เซ‡, เชเชชเชจเซเช‚ เชจเชนเซ€เช‚. เชคเซ‡เชจเซ€ เชธเซŒเชฅเซ€ เชฎเซ‹เชŸเซ€ เชชเซเชฐเช•เชพเชถเชฟเชค เชฏเซ‹เชœเชจเชพ 20 เชญเชพเชทเชพเช“ เชฎเชพเชŸเซ‡ เชฎเชพเชธเชฟเช• 699 เชฏเซเชฐเซ‹ เช›เซ‡, เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เชคเซ‡ เช•เชฟเช‚เชฎเชคเชจเซ‡ 48 เชญเชพเชทเชพเช“ เชธเซเชงเซ€ เชตเชฟเชธเซเชคเชพเชฐเซ€เช เช›เซ€เช. เชคเชฎเชพเชฐเชพ เชถเชฌเซเชฆเซ‹ เช† เชคเชฎเชพเชฎ เชฏเซ‹เชœเชจเชพเช“เชฎเชพเช‚ เชฌเช‚เชงเชฌเซ‡เชธเซ‡ เช›เซ‡.

เชฌเซ€เชœเซ€ เชฆเชฐเซ‡เช• เชฒเชพเช‡เชจ เชคเชฎเชพเชฐเชพ เช‰เชคเซเชชเชพเชฆเชจ เชธเชพเชฅเซ‡ เชตเชงเซ‡ เช›เซ‡. เช…เชฎเชพเชฐเซ€ เช•เชฟเช‚เชฎเชค เชธเซเชฅเชฟเชฐ เช›เซ‡.

เชคเชฎเชพเชฐเซ€ เชœเชพเชคเซ‡ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‹

เชกเซ‡เชฎเซ‹ เชœเซเช“

เช† เชŸเซ‚เช‚เช•เซ€ เชตเชฟเชกเชฟเชฏเซ‹ เชœเซเช“ เชœเซ‡เชฅเซ€ เชคเชฎเซ‡ i18n-keyless เชจเซ€ เช•เชพเชฐเซเชฏเชตเชพเชนเซ€ เชœเซ‹เชˆ เชถเช•เซ‹

เชเช• เชเชช เชฎเชพเชŸเซ‡ API เช•เซ€ เชฎเซ‡เชณเชตเซ‹

เชคเชฎเชพเชฐเซเช‚ เชธเช‚เชชเซ‚เชฐเซเชฃ i18n เช…เชฎเชฒเซ€เช•เชฐเชฃ เชฎเชพเชคเซเชฐ 5 เชฎเชฟเชจเชฟเชŸเชฎเชพเช‚. iykyk.