diff --git a/web/i18n/ja/a11y/dialog.json b/web/i18n/ja/a11y/dialog.json
new file mode 100644
index 00000000..77548ef6
--- /dev/null
+++ b/web/i18n/ja/a11y/dialog.json
@@ -0,0 +1,5 @@
+{
+ "picker.item.photo": "画像サムネ",
+ "picker.item.gif": "GIFサムネ",
+ "picker.item.video": "動画サムネ"
+}
diff --git a/web/i18n/ja/a11y/donate.json b/web/i18n/ja/a11y/donate.json
new file mode 100644
index 00000000..0e8fbf0e
--- /dev/null
+++ b/web/i18n/ja/a11y/donate.json
@@ -0,0 +1,4 @@
+{
+ "share.qr.expand": "QRコード(クリックして拡大)",
+ "share.qr.collapse": "大きなqrコード。クリックして小さくする。"
+}
diff --git a/web/i18n/ja/a11y/general.json b/web/i18n/ja/a11y/general.json
new file mode 100644
index 00000000..21d020a3
--- /dev/null
+++ b/web/i18n/ja/a11y/general.json
@@ -0,0 +1,3 @@
+{
+ "back": "戻る"
+}
diff --git a/web/i18n/ja/a11y/queue.json b/web/i18n/ja/a11y/queue.json
new file mode 100644
index 00000000..0967ef42
--- /dev/null
+++ b/web/i18n/ja/a11y/queue.json
@@ -0,0 +1 @@
+{}
diff --git a/web/i18n/ja/a11y/save.json b/web/i18n/ja/a11y/save.json
new file mode 100644
index 00000000..2074fc8f
--- /dev/null
+++ b/web/i18n/ja/a11y/save.json
@@ -0,0 +1,10 @@
+{
+ "link_area": "リンクを入力してください",
+ "link_area.turnstile": "リンク入力エリア。あなたがロボットでないか確認中です。",
+ "clear_input": "削除",
+ "download": "ダウンロード",
+ "download.think": "リンクを処理しています。。。",
+ "download.error": "エラーが発生しました",
+ "tutorial.shortcut.photos": "写真のショートカットを追加",
+ "tutorial.shortcut.files": "ファイルのショートカットを追加"
+}
diff --git a/web/i18n/ja/a11y/tabs.json b/web/i18n/ja/a11y/tabs.json
new file mode 100644
index 00000000..6bd72f64
--- /dev/null
+++ b/web/i18n/ja/a11y/tabs.json
@@ -0,0 +1,3 @@
+{
+ "tab_panel": "タブパネル"
+}
diff --git a/web/i18n/ja/about.json b/web/i18n/ja/about.json
new file mode 100644
index 00000000..2c8cb7ee
--- /dev/null
+++ b/web/i18n/ja/about.json
@@ -0,0 +1,28 @@
+{
+ "page.general": "コバルトについて",
+ "page.faq": "よくある質問",
+ "page.community": "コミュニティー&サポート",
+ "page.privacy": "プライバシーポリシー",
+ "heading.summary": "愛するものを守る最善の方法",
+ "heading.licenses": "ライセンス規約",
+ "page.terms": "ご利用規約",
+ "heading.privacy": "プライバシーの保護",
+ "heading.community": "コミュニティー",
+ "heading.local": "デバイス上処理",
+ "heading.saving": "保存",
+ "heading.encryption": "暗号化",
+ "heading.plausible": "匿名トラフィック分析",
+ "heading.cloudflare": "ウェブプライバシーとセキュリティー",
+ "heading.responsibility": "ユーザーの責任",
+ "heading.testers": "ベータテスター",
+ "heading.abuse": "悪用などの報告",
+ "support.github": "コバルトのソースコード閲覧、問題の報告などはこちらから",
+ "heading.motivation": "モチベーション",
+ "support.discord": "コミュニティや開発者とコバルトについて話したり、助けを求めたりする。",
+ "support.twitter": "cobaltの最新情報と開発をツイッターのタイムラインでフォローする",
+ "support.telegram": "テレグラムでcobaltの最新情報を確認",
+ "support.bluesky": "ブルースカイでcobaltの最新情報を確認",
+ "support.description.issue": "バグなどの報告はGithubにてお願いします。",
+ "support.description.help": "その他の質問は discord を使ってね。#cobalt-support で問題をきちんと説明しないと、誰も助けてくれないよ。",
+ "support.description.best-effort": "すべてのサポートはベストエフォートであり、保証するものではない。"
+}
diff --git a/web/i18n/ja/about/credits.md b/web/i18n/ja/about/credits.md
new file mode 100644
index 00000000..2f67e132
--- /dev/null
+++ b/web/i18n/ja/about/credits.md
@@ -0,0 +1,89 @@
+
+
+
+
+
+cobalt is made with love and care by [imput](https://imput.net/) ❤️
+
+we're a small team of two guys, but we work really hard to make great software
+that benefits everyone. if you like our work, please consider supporting it on
+the [donate page](/donate)!
+
+
+
+
+
+huge shout-out to our testers for testing updates early and making sure they're
+stable. they also helped us ship cobalt 10!
+
+all links are external and lead to their personal websites or social media.
+
+
+
+
+
+a portion of cobalt's processing infrastructure is provided by our long-standing
+partner, [royalehosting.net]({partners.royalehosting})!
+
+
+
+
+
+meowbalt is cobalt's speedy mascot, a very expressive cat who loves fast
+internet.
+
+all amazing art of meowbalt that you see in cobalt was made by
+[GlitchyPSI](https://glitchypsi.xyz/). he's also the original creator of the
+character.
+
+imput holds legal rights to meowbalt's character design, but not specific
+artworks that were created by GlitchyPSI.
+
+we love meowbalt, so we have to set a few rules in place to protect him:
+- you cannot use meowbalt's character design in any form that isn't fan art.
+- you cannot use meowbalt's design or artworks commercially.
+- you cannot use meowbalt's design or artworks in your own projects.
+- you cannot use or modify GlitchyPSI's artworks of meowbalt in any form.
+
+if you create fan art of meowbalt, please share it in [our discord
+server](/about/community), we'd love to see it!
+
+
+
+
+
+cobalt api (processing server) code is open source and licensed under
+[AGPL-3.0]({docs.apiLicense}).
+
+cobalt frontend code is [source first](https://sourcefirst.com/) and is licensed
+under [CC-BY-NC-SA 4.0]({docs.webLicense}).
+
+we had to make frontend source first to stop grifters from profiting off our
+work & from creating malicious clones that deceive people and hurt our public
+identity. other than commercial use, it follows same principles as many open
+source licenses.
+
+we rely on many open source libraries, but also create & distribute our own. you
+can see the full list of dependencies on [github]({contacts.github})!
+
diff --git a/web/i18n/ja/about/general.md b/web/i18n/ja/about/general.md
new file mode 100644
index 00000000..f8b31614
--- /dev/null
+++ b/web/i18n/ja/about/general.md
@@ -0,0 +1,74 @@
+
+
+
+
+
+cobalt helps you save anything from your favorite websites: video, audio, photos
+or gifs. just paste the link and you're ready to rock!
+
+怪しい広告もトラッカーも無し。いつでもどこでも『無料』で使える、純粋に便利なウェブアプリがここにあります。
+
+
+
+
+
+cobalt was created for public benefit, to protect people from ads and malware
+pushed by alternative downloaders. we believe that the best software is safe,
+open, and accessible. all imput project follow these basic principles.
+
+
+
+
+
+all requests to the backend are anonymous and all information about potential
+file tunnels is encrypted. we have a strict zero log policy and don't store or
+track *anything* about individual people.
+
+if a request requires additional processing, such as remuxing or transcoding,
+cobalt processes media directly on your device. this ensures best efficiency and
+privacy.
+
+if your device doesn't support local processing, then server-based live
+processing is used instead. in this scenario, processed media is streamed
+directly to client, without ever being stored on server's disk.
+
+you can [enable forced tunneling](/settings/privacy#tunnel) to boost privacy
+even further. when enabled, cobalt will tunnel all downloaded files, not just
+those that require it. no one will know where you download something from, even
+your network provider. all they'll see is that you're using a cobalt instance.
+
+
+
diff --git a/web/i18n/ja/about/privacy.md b/web/i18n/ja/about/privacy.md
new file mode 100644
index 00000000..d4cb2d84
--- /dev/null
+++ b/web/i18n/ja/about/privacy.md
@@ -0,0 +1,123 @@
+
+
+
+
+
+cobalt's privacy policy is simple: we don't collect or store anything about you.
+what you do is solely your business, not ours or anyone else's.
+
+these terms are applicable only when using the official cobalt instance. in
+other cases, you may need to contact the instance hoster for accurate info.
+
+
+
+
+
+tools that use on-device processing work offline, locally, and never send any
+processed data anywhere. they are explicitly marked as such whenever applicable.
+
+
+
+
+
+when using saving functionality, cobalt may need to proxy or remux/transcode
+files. if that's the case, then a temporary tunnel is created for this purpose
+and minimal required information about the media is stored for 90 seconds.
+
+on an unmodified & official cobalt instance, **all tunnel data is encrypted with
+a key that only the end user has access to**.
+
+encrypted tunnel data may include:
+- origin service's name.
+- original URLs for media files.
+- internal arguments needed to differentiate between types of processing.
+- minimal file metadata (generated filename, title, author, creation year,
+ copyright info).
+- minimal information about the original request that may be used in case of an
+ URL failure during the tunnelling process.
+
+this data is irreversibly purged from server's RAM after 90 seconds. no one has
+access to cached tunnel data, even instance owners, as long as cobalt's source
+code is not modified.
+
+media data from tunnels is never stored/cached anywhere. everything is processed
+live, even during remuxing and transcoding. cobalt tunnels function like an
+anonymous proxy.
+
+if your device supports local processing, then encrypted tunnel info includes
+way less info, because it's returned to client instead.
+
+see the [related source code on
+github](https://github.com/imputnet/cobalt/tree/main/api/src/stream) to learn
+more about how it works.
+
+
+
+
+
+temporarily stored tunnel data is encrypted using the AES-256 standard.
+decryption keys are only included in the access link and never
+logged/cached/stored anywhere. only the end user has access to the link &
+encryption keys. keys are generated uniquely for each requested tunnel.
+
+
+{#if env.PLAUSIBLE_ENABLED}
+
+
+
+we use [plausible](https://plausible.io/) to get an approximate number of active
+cobalt users, fully anonymously. no identifiable information about you or your
+requests is ever stored. all data is anonymized and aggregated. we self-host and
+manage the [plausible instance](https://{env.PLAUSIBLE_HOST}/) that cobalt uses.
+
+plausible doesn't use cookies and is fully compliant with GDPR, CCPA, and PECR.
+
+if you wish to opt out of anonymous analytics, you can do it in [privacy
+settings](/settings/privacy#analytics). if you opt out, the plausible script
+will not be loaded at all.
+
+[learn more about plausible's dedication to
+privacy](https://plausible.io/privacy-focused-web-analytics).
+
+{/if}
+
+
+
+
+we use cloudflare services for:
+- ddos & abuse protection.
+- bot protection (cloudflare turnstile).
+- hosting & deploying the statically rendered web app (cloudflare workers).
+
+all of these are required to provide the best experience for everyone.
+cloudflare is the most private & reliable provider for all mentioned solutions
+that we know of.
+
+cloudflare is fully compliant with GDPR and HIPAA.
+
+[learn more about cloudflare's dedication to
+privacy](https://www.cloudflare.com/trust-hub/privacy-and-data-protection/).
+
diff --git a/web/i18n/ja/about/terms.md b/web/i18n/ja/about/terms.md
new file mode 100644
index 00000000..39df9098
--- /dev/null
+++ b/web/i18n/ja/about/terms.md
@@ -0,0 +1,65 @@
+
+
+
+
+
+these terms are applicable only when using the official cobalt instance. in
+other cases, you may need to contact the instance hoster for accurate info.
+
+
+
+
+
+saving functionality simplifies downloading content from the internet and we
+take zero liability for what the saved content is used for.
+
+processing servers operate like advanced proxies and don't ever write any
+requested content to disk. everything is handled in RAM and permanently purged
+once the tunnel is completed. we have no downloading logs and cannot identify
+anyone.
+
+you can learn more about how tunnels work in [privacy policy](/about/privacy).
+
+
+
+
+
+you (end user) are responsible for what you do with our tools, how you use and
+distribute resulting content. please be mindful when using content of others and
+always credit original creators. make sure you don't violate any terms or
+licenses.
+
+when used in educational purposes, always cite sources and credit original
+creators.
+
+fair use and credits benefit everyone.
+
+
+
+
+
+we have no way of detecting abusive behavior automatically because cobalt is
+fully anonymous. however, you can report such activities to us via email and
+we'll do our best to comply manually: abuse[at]imput.net
+
+**this email is not intended for user support, you will not get a response if
+your concern is not related to abuse.**
+
+if you're experiencing issues, you can reach out for support via any preferred
+method on [the community page](/about/community).
+
diff --git a/web/i18n/ja/button.json b/web/i18n/ja/button.json
new file mode 100644
index 00000000..8b631511
--- /dev/null
+++ b/web/i18n/ja/button.json
@@ -0,0 +1,17 @@
+{
+ "save": "保存",
+ "cancel": "キャンセル",
+ "gotit": "わかりました",
+ "done": "完了",
+ "download.audio": "音声をダウンロード",
+ "copy.section": "セクションリンクをコピー",
+ "download": "ダウンロード",
+ "copy": "コピー",
+ "copied": "コピーしました",
+ "import": "インポート",
+ "continue": "続ける",
+ "follow": "フォローする",
+ "export": "エクスポート",
+ "yes": "はい",
+ "no": "いいえ"
+}
diff --git a/web/i18n/ja/dialog.json b/web/i18n/ja/dialog.json
new file mode 100644
index 00000000..e9ca7f1c
--- /dev/null
+++ b/web/i18n/ja/dialog.json
@@ -0,0 +1,16 @@
+{
+ "reset.body": "本当にすべてのデータをリセットしますか?この操作は即時かつ不可逆的です。",
+ "reset.title": "すべてのデータをリセットしますか?",
+ "picker.title": "保存する内容を選択する",
+ "picker.description.desktop": "項目をクリックして保存します。右クリックメニューから画像を保存することもできます。",
+ "picker.description.phone": "項目を押して保存します。長押しして画像を保存することもできます。",
+ "saving.timeout": "cobalt はファイルを自動的に保存しようとしましたが、ブラウザーによって停止されました。手動でお好きな方法を選択してください。",
+ "saving.blocked": "cobalt は新しいタブでファイルを開こうとしましたが、ご利用のブラウザーでブロックされました。cobalt のポップアップを許可することで、次回からこれを防ぐことができます。",
+ "safety.title": "重要な安全上の注意",
+ "import.body": "未知のファイルや破損したファイルをインポートすると、Cobalt の機能が予期せず変更されたり壊れたりすることがあります。あなたが個人的にエクスポートし、変更していないファイルのみをインポートしてください。もしこのファイルをインポートするよう、誰かに頼まれた場合は、やらないでください。\n\n未知の設定ファイルをインポートすることによって生じたいかなる損害にも、私たちは責任を負いません。",
+ "api.override.title": "インスタンスオーバーライドの処理",
+ "api.override.body": "{{ value }} が処理インスタンスになりました。信頼できない場合は、「キャンセル」を押すと無視されます。\n\n後で処理設定で選択を変更することができます。",
+ "safety.custom_instance.body": "カスタムインスタンスは、潜在的にプライバシーと安全性のリスクをもたらす可能性があります。\n\n悪意のあるインスタンスは以下のことができます。\n1. cobalt からあなたを遠ざけて詐欺をする。\n2. リクエストに関するすべての情報を記録し、永久に保存し、ユーザーを追跡するために使用する。\n3. 悪意のあるファイル (マルウェアなど) を提供する。\n4. 広告を見ることを強制したり、ダウンロードのためにお金を払わせたりする。\n\nこの時点で、私たちはあなたを保護できません。どのインスタンスを使用するかに注意し、常に自分の直感を信じてください。もし何かおかしいと感じたら、このページに戻ってカスタムインスタンスをリセットし、GitHub で報告してください。",
+ "processing.ongoing": "cobalt は現在このタブでメディアを処理しています。このタブを離れると処理は中断されます。本当に実行しますか?",
+ "processing.title.ongoing": "処理はキャンセルされます"
+}
diff --git a/web/i18n/ja/donate.json b/web/i18n/ja/donate.json
new file mode 100644
index 00000000..7643a6dc
--- /dev/null
+++ b/web/i18n/ja/donate.json
@@ -0,0 +1,28 @@
+{
+ "banner.title": "安全で開かれた\nインターネットを支援する",
+ "banner.subtitle": "imput に寄付するか、友人に\ncobalt についてシェアしましょう",
+ "body.motivation": "cobalt は、プロデューサー、教育者、ビデオ制作者、その他多くの人たちが、自分の好きなことをするのに役立ちます。利益のためではなく、愛をもって作られた一線を画すサービスです。",
+ "body.no_bullshit": "私たちは、インターネットは恐れるものである必要はないと信じています。そのため、cobalt には広告やその他の種類の迷惑なコンテンツは一切ありません。それは私たちが固く守る約束です。私たちが行うすべてのことは、プライバシー、アクセシビリティ、使いやすさを念頭に置いて構築されており、誰もが cobalt を利用できるようになっています。",
+ "body.keep_going": "もし Cobalt が役に立つと感じたなら、ぜひ私たちの活動を支援することをご検討ください!寄付をしたり、友人に Cobalt を共有したりすることで、私たちを支援することができます。どのような寄付でも非常に歓迎しており、Cobalt やその他のプロジェクトの継続に役立っています。",
+ "card.once": "一回限りの寄付",
+ "card.processor": "{{value}} 経由",
+ "card.custom": "カスタムの金額 (2 ドルから)",
+ "card.option.5": "コーヒー1杯分",
+ "card.option.10": "ピザ1つの分",
+ "card.option.15": "ランチ一食分",
+ "card.option.30": "ランチ二食分",
+ "card.option.50": "キャットフード10キロの分",
+ "card.option.100": "ドメインの年間費用",
+ "card.option.200": "エアフライヤー",
+ "card.option.500": "高級オフィスチェア",
+ "card.option.1599": "Macbook Pro",
+ "card.option.4900": "リンゴ一万個",
+ "card.option.7398": "最高の Macbook Pro",
+ "card.option.8629": "小さな土地",
+ "share.title": "cobalt を友達と共有する",
+ "card.option.9433": "高級浴槽",
+ "card.custom.submit": "カスタム金額を寄付する",
+ "alternative.title": "その他の寄付する方法",
+ "alt.copy": "{{value}}. 暗号ウォレットアドレス。コピーするには押してください。",
+ "alt.open": "{{ value }}. クリックして開きます。"
+}
diff --git a/web/i18n/ja/error.json b/web/i18n/ja/error.json
new file mode 100644
index 00000000..0967ef42
--- /dev/null
+++ b/web/i18n/ja/error.json
@@ -0,0 +1 @@
+{}
diff --git a/web/i18n/ja/error/api.json b/web/i18n/ja/error/api.json
new file mode 100644
index 00000000..0967ef42
--- /dev/null
+++ b/web/i18n/ja/error/api.json
@@ -0,0 +1 @@
+{}
diff --git a/web/i18n/ja/error/queue.json b/web/i18n/ja/error/queue.json
new file mode 100644
index 00000000..0967ef42
--- /dev/null
+++ b/web/i18n/ja/error/queue.json
@@ -0,0 +1 @@
+{}
diff --git a/web/i18n/ja/general.json b/web/i18n/ja/general.json
new file mode 100644
index 00000000..82327970
--- /dev/null
+++ b/web/i18n/ja/general.json
@@ -0,0 +1,6 @@
+{
+ "cobalt": "cobalt",
+ "meowbalt": "ニャーバルト",
+ "beta": "ベータ",
+ "embed.description": "cobalt は、広告、追跡、ペイウォール、その他の無駄なものは一切なく、好きなものを保存することができます。リンクを貼り付けるだけです!"
+}
diff --git a/web/i18n/ja/notification.json b/web/i18n/ja/notification.json
new file mode 100644
index 00000000..689cdbc7
--- /dev/null
+++ b/web/i18n/ja/notification.json
@@ -0,0 +1,4 @@
+{
+ "update.subtext": "プレスして再読込",
+ "update.title": "更新が利用可能です!"
+}
diff --git a/web/i18n/ja/queue.json b/web/i18n/ja/queue.json
new file mode 100644
index 00000000..0967ef42
--- /dev/null
+++ b/web/i18n/ja/queue.json
@@ -0,0 +1 @@
+{}
diff --git a/web/i18n/ja/receiver.json b/web/i18n/ja/receiver.json
new file mode 100644
index 00000000..7860dadc
--- /dev/null
+++ b/web/i18n/ja/receiver.json
@@ -0,0 +1,5 @@
+{
+ "title": "ファイルをドラッグまたは選択",
+ "accept": "対応フォーマット: {{ formats }}.",
+ "title.drop": "ここにファイルをドロップしてください!"
+}
diff --git a/web/i18n/ja/remux.json b/web/i18n/ja/remux.json
new file mode 100644
index 00000000..c30a78cd
--- /dev/null
+++ b/web/i18n/ja/remux.json
@@ -0,0 +1,7 @@
+{
+ "bullet.purpose.description": "Remux は、時刻情報の欠落などファイルコンテナの問題を修正します。Vegas Pro や Windows Media Player などの古いソフトウェアとの互換性を高めるのに役立ちます。",
+ "bullet.purpose.title": "remux は何をしますか?",
+ "bullet.explainer.title": "どのように機能しますか?",
+ "bullet.explainer.description": "Remux は、既存のコーデックデータを新しいメディアコンテナにコピーします。ロスレスで、メディアデータは再エンコードされません。",
+ "bullet.privacy.title": "デバイス上での処理"
+}
diff --git a/web/i18n/ja/save.json b/web/i18n/ja/save.json
new file mode 100644
index 00000000..bbdd345a
--- /dev/null
+++ b/web/i18n/ja/save.json
@@ -0,0 +1,21 @@
+{
+ "paste": "ペースト",
+ "paste.long": "ペーストしてダウンロード",
+ "auto": "自動",
+ "audio": "オーディオ",
+ "mute": "ミュート",
+ "terms.note.link": "利用規約と倫理規定",
+ "services.title": "サポートされているサービス",
+ "services.title_show": "サポートされているサービスを表示",
+ "services.title_hide": "サポートされているサービスを非表示",
+ "services.disclaimer": "cobalt は上記のいずれのサービスとも提携していません。",
+ "tutorial.title": "iOS ではどのように保存するのですか?",
+ "tutorial.intro": "iOSでメディアを快適に保存するには、共有シートから Siri ショートカットを使用する必要があります。",
+ "tutorial.step.1": "コンパニオン Siri ショートカットを追加:",
+ "tutorial.step.3": "共有シートでそれぞれのショートカットを選択します。",
+ "tutorial.step.2": "Cobalt の保存ダイアログの「共有」ボタンを押します。",
+ "tutorial.outro": "これらのショートカットは cobalt アプリからのみ機能し、他のアプリからのリンクの共有は機能しません。",
+ "label.community_instance": "コミュニティインスタンス",
+ "tutorial.shortcut.photos": "写真へ",
+ "tutorial.shortcut.files": "ファイルへ"
+}
diff --git a/web/i18n/ja/settings.json b/web/i18n/ja/settings.json
new file mode 100644
index 00000000..511abeba
--- /dev/null
+++ b/web/i18n/ja/settings.json
@@ -0,0 +1,25 @@
+{
+ "page.privacy": "プライバシー",
+ "page.appearance": "外観",
+ "page.video": "ビデオ",
+ "page.audio": "オーディオ",
+ "page.instances": "インスタンス",
+ "section.general": "一般",
+ "section.save": "保存",
+ "theme": "テーマ",
+ "theme.auto": "オート",
+ "theme.light": "ライト",
+ "theme.dark": "ダーク",
+ "video.quality.max": "8k+",
+ "theme.description": "自動テーマは、あなたのデバイスの表示モードに応じて、明るいテーマと暗いテーマを切り替える。",
+ "video.quality": "ビデオ品質",
+ "video.quality.480": "480p",
+ "video.quality.2160": "4k",
+ "video.quality.1440": "1440p",
+ "video.quality.720": "720p",
+ "video.quality.1080": "1080p",
+ "video.quality.360": "360p",
+ "video.quality.240": "240p",
+ "video.quality.144": "144p",
+ "video.quality.description": "選択した画質が利用できない場合は次に近い画質が適用されます。"
+}
diff --git a/web/i18n/ja/tabs.json b/web/i18n/ja/tabs.json
new file mode 100644
index 00000000..1f8f2c01
--- /dev/null
+++ b/web/i18n/ja/tabs.json
@@ -0,0 +1,8 @@
+{
+ "save": "保存",
+ "updates": "変更履歴",
+ "settings": "設定",
+ "donate": "寄付",
+ "about": "概要",
+ "remux": "remux"
+}
diff --git a/web/i18n/ja/updates.json b/web/i18n/ja/updates.json
new file mode 100644
index 00000000..c259bebc
--- /dev/null
+++ b/web/i18n/ja/updates.json
@@ -0,0 +1,4 @@
+{
+ "button.next": "前のアップデートを見る ({{ value }})",
+ "button.previous": "新しい変更履歴へ移動 ({{ value }})"
+}