Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
locizeでいい感じにi18n対応する
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
tsukui.tomohiro
June 18, 2019
Programming
0
2k
locizeでいい感じにi18n対応する
React Nativeにlocizeとi18nextを導入することで文言リソースの管理を開発チームから独立させました。
tsukui.tomohiro
June 18, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
Best-Practices-for-Cortex-Analyst-and-AI-Agent
ryotaroikeda
1
110
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
6
4.6k
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
330
ぼくの開発環境2026
yuzneri
0
240
CSC307 Lecture 05
javiergs
PRO
0
500
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
300
CSC307 Lecture 07
javiergs
PRO
1
560
CSC307 Lecture 06
javiergs
PRO
0
690
MUSUBIXとは
nahisaho
0
140
2026年 エンジニアリング自己学習法
yumechi
0
140
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
470
Faster Mobile Websites
deanohume
310
31k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
Designing for humans not robots
tammielis
254
26k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
58
50k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
180
Transcript
locizeでいい感じにi18n対応する 読めない⾔言語をコピペする作業が⾟辛いので
ecbo 株式会社 Tech Lead Tsukui Tomohiro @two2q 2018年年4⽉月からecbo cloakというアプリ をReact
Nativeで開発しています。 もともと業務系Webサービスを開発して いたのでecbo cloakが初めてのアプリで す。
エクボクローク 「荷物を預けたい⼈人」と、 「荷物を預かるスペースを持つお店」 をつなぐシェアリングサービス。
ビジネスモデル
ビジネスモデル 荷物を預けるユーザー ・アプリDL→検索→予約→クレカ決済 ・バッグサイズ 300円 /スーツケースサイズ 600円
ビジネスモデル 荷物を預けるユーザー ・アプリDL→検索→予約→クレカ決済 ・バッグサイズ 300円 /スーツケースサイズ 600円 荷物を預かるオーナー ・登録/導⼊入/維持費 ¥0
・利利⽤用料料⾦金金の50%が 店舗の副収⼊入に ・新規顧客獲得も
先週⾦金金曜⽇日に今⽇日のAPPに取り上げていただきました :tada:
ecbo cloakは半数以上が外国⼈人ユーザー i18n対応はかなり重要!
翻訳はエンジニアにとって完全に専⾨門外 理理想を⽬目指した エンジニアはラベルの配置のみに責任を持ち、 ラベルの中身については翻訳チームに委ねたい
ecbo cloakでは結構理理想系に近づけたので 共有させてください!
この組み合わせ
None
locizeが提供しているもの ・ダッシュボード ・翻訳管理理 ・権限管理理 ・バージョン管理理 ・検索 ・Slack通知 ・API
ダッシュボード
ダッシュボード 翻訳済の進捗がわかる
ダッシュボード メモもつけられるよ!
これだけだとただの翻訳管理理
locizeの翻訳データをアプリと同期する
i18nextを使う JSのためのi18nライブラリ locizeの創業者がメンテナンス
i18nextのbackendにlocizeを指定する i18nextは翻訳データの取得先をカスタマイズが可能。 ファイルから取得やAsyncStorageから取得ができる。 locizeからも取得できる
i18nextのbackendにlocizeを指定する # yarn $ yarn add i18next i18next-locize-backend
i18nextのbackendにlocizeを指定する import i18next from 'i18next'; import LocizeBackend from 'i18next-locize-backend'; export
default (callback) => i18next .use(LocizeBackend) .init({ lng: 'ja', debug: true, fallbackLng: { // lngに指定した⾔言語が翻訳されていない場合に参照する⾔言語 default: ['en'] }, // locizeに登録されているnamespace。demoの場合はtranslation defaultNS: 'translation', backend: { // locizeのプロジェクトIDです projectId: 'your project id', // saveMissingがtrueの時に必要です。 apiKey: 'your api kei', // locizeで設定されているreferenceLngを指定してください。saveMissingがtrueのときに必要です。 referenceLng: 'en', // locizeのどのバージョンの⾔言語を取得するのかを指定します。デフォルトはlatestです version: 'latest', }, }, callback ); 起動時のオプションで⾔言語をjaでは なくdevにすることで画⾯面にキーが 表示される
i18nextのbackendにlocizeを指定する import i18next from 'i18next' {...} <Text>{i18next.t('key')}</Text> keyがlocizeに登録されていなかった 場合にはlocizeに⾃自動で登録するオ プションもある!
起動時にlocizeから翻訳ファイルを取得するので 常に最新の⽂文⾔言のアプリを提供できる
弊社の流れ デザイナー:⽂文⾔言は配置だけfixしてデザインする。 エンジニア:実装とlocizeへのキー登録 翻訳チーム・デザイナー:実機で確認して、違和感があれば随時変更更 翻訳チーム:新しいキーが登録されたことがSlackに通知されるので翻訳
⽂文⾔言修正業務を翻訳チームやデザイナーなどに⽢甘えることができる Engineers Translators 強⼒力力なダッシュボードを獲得できる(検索、進捗管理理、バージョン管理理など) 翻訳チームだけで他国展開可能に! ⽂文⾔言の確定を遅延できる。リリース後の変更更も⾃自分のタイミングで可能! Designers
神ツールとの声 実機で確認しながら翻訳できる翻訳チームと 中国語のコピペから解放されたエンジニアチームの 稀に⾒見見るWin-Winな関係!
いつの間にかアプリが韓国語対応していた セールスチームが韓国翻訳者に依頼し、 韓国語対応を実現。エンジニアはほぼ何もしていない。
気になるお値段は?
Tips 起動時にlocizeに翻訳ファイルを取得しに⾏行行くので、 電波が悪い時には⾔言語のキーのみが出てしまう可能性がある i18nextのbackendをlocizeとfileの⼆二つにすることで、locizeからの 取得に失敗した時にはfileから読めるようにする。 fileはpostInstallでlocizeからAPI経由で取得するようにして⾃自動化。
少ない⼈人数で プロダクトをスケール出来る仕組みを構築したいので いいサービスご存知でしたら教えてください!
Qiitaにもコードがあります https://qiita.com/tsukushi0104/items/74a380ea9642cae91990
FIN.