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. +
+ +
+ + +cobalt is used by countless artists, educators, and content creators to do what +they love. we're always on the line with our community and work together to make +cobalt even more useful. feel free to [join the conversation](/about/community)! + +we believe that the future of the internet is open, which is why cobalt is +[source first](https://sourcefirst.com/) and [easily +self-hostable]({docs.instanceHosting}). + +if your friend hosts a processing instance, just ask them for a domain and [add +it in instance settings](/settings/instances#community). + +you can check the source code and contribute [on github]({contacts.github}) at +any time. we welcome all contributions and suggestions! +
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 }})" +}