diff --git a/web/i18n/zh/a11y/dialog.json b/web/i18n/zh/a11y/dialog.json
new file mode 100644
index 00000000..74c39b86
--- /dev/null
+++ b/web/i18n/zh/a11y/dialog.json
@@ -0,0 +1,5 @@
+{
+ "picker.item.photo": "照片缩略图",
+ "picker.item.video": "视频缩略图",
+ "picker.item.gif": "gif 缩略图"
+}
diff --git a/web/i18n/zh/a11y/donate.json b/web/i18n/zh/a11y/donate.json
new file mode 100644
index 00000000..c9e0a406
--- /dev/null
+++ b/web/i18n/zh/a11y/donate.json
@@ -0,0 +1,4 @@
+{
+ "share.qr.expand": "二维码。点击以展开。",
+ "share.qr.collapse": "展开显示的二维码。点击以收起。"
+}
diff --git a/web/i18n/zh/a11y/general.json b/web/i18n/zh/a11y/general.json
new file mode 100644
index 00000000..00683616
--- /dev/null
+++ b/web/i18n/zh/a11y/general.json
@@ -0,0 +1,3 @@
+{
+ "back": "返回"
+}
diff --git a/web/i18n/zh/a11y/save.json b/web/i18n/zh/a11y/save.json
new file mode 100644
index 00000000..b62b1412
--- /dev/null
+++ b/web/i18n/zh/a11y/save.json
@@ -0,0 +1,12 @@
+{
+ "link_area.turnstile": "链接输入区。正在检查你是不是机器人。",
+ "link_area": "链接输入区",
+ "clear_input": "清除输入",
+ "download": "下载",
+ "download.think": "处理链接...",
+ "download.check": "验证下载...",
+ "download.done": "下载完成",
+ "download.error": "下载错误",
+ "tutorial.shortcut.photos": "添加照片快捷方式",
+ "tutorial.shortcut.files": "快捷指令文件指令"
+}
diff --git a/web/i18n/zh/a11y/tabs.json b/web/i18n/zh/a11y/tabs.json
new file mode 100644
index 00000000..cafde6d7
--- /dev/null
+++ b/web/i18n/zh/a11y/tabs.json
@@ -0,0 +1,3 @@
+{
+ "tab_panel": "标签面板"
+}
diff --git a/web/i18n/zh/about.json b/web/i18n/zh/about.json
new file mode 100644
index 00000000..38657288
--- /dev/null
+++ b/web/i18n/zh/about.json
@@ -0,0 +1,35 @@
+{
+ "page.general": "什么是cobalt?",
+ "page.community": "社区和支持",
+ "page.faq": "常见问题",
+ "page.privacy": "隐私政策",
+ "page.terms": "条款和道德",
+ "community.github": "github 仓库",
+ "community.twitter": "Twitter 新闻帐户",
+ "page.credits": "感谢和许可证",
+ "community.discord": "社区 discord 服务器",
+ "heading.privacy": "领先的隐私保护",
+ "heading.summary": "保存您所爱的最佳方式",
+ "heading.licenses": "许可证",
+ "heading.general": "一般条款",
+ "community.telegram": "Telegram 上的频道",
+ "community.email": "支持电子邮件",
+ "heading.testers": "beta 测试人员",
+ "heading.motivation": "激励",
+ "heading.abuse": "举报滥用行为",
+ "heading.responsibility": "用户责任",
+ "heading.cloudflare": "网络隐私安全",
+ "heading.plausible": "匿名流量分析",
+ "heading.encryption": "加密",
+ "heading.saving": "保存",
+ "heading.local": "设备端处理",
+ "heading.community": "开放社区",
+ "support.discord": "与社区和开发人员讨论 cobalt 或寻求帮助",
+ "support.twitter": "在您的 twitter 时间轴上关注 cobalt 的更新和发展动态",
+ "support.telegram": "通过 telegram 频道了解最新的 cobalt 更新信息",
+ "support.description.issue": "如果您想报告错误或其他经常出现的问题,请在 github 上报告。",
+ "support.description.best-effort": "所有支持都是尽最大努力提供的,但不保证一定能提供,回复可能需要一些时间。",
+ "support.github": "查看 cobalt 的源代码,修改或报告问题",
+ "support.description.help": "将Discord用于任何其他问题。在#cobalt-support中正确描述问题,否则没有人能为您提供帮助。",
+ "support.bluesky": "在您的 bluesky feed 上关注 cobalt 的更新和发展"
+}
diff --git a/web/i18n/zh/about/credits.md b/web/i18n/zh/about/credits.md
new file mode 100644
index 00000000..4df8d484
--- /dev/null
+++ b/web/i18n/zh/about/credits.md
@@ -0,0 +1,67 @@
+
+
+
+
+
+cobalt是由[imput](https://imput.net/)研发团队以爱与关心制成的。
+
+您可以通过 [捐赠页面](/donate)支持我们!
+
+
+
+
+
+感谢我们的测试人员及早测试更新并确保其稳定性。他们还帮助我们发布了 cobalt 10!
+
+all links are external and lead to their personal websites or social media.
+
+
+
+
+
+meowbalt is cobalt's speedy mascot. he is an extremely expressive cat that loves
+fast internet.
+
+all amazing drawings of meowbalt that you see in cobalt were made by
+[GlitchyPSI](https://glitchypsi.xyz/). he is also the original designer of the
+character.
+
+you cannot use or modify GlitchyPSI's artworks of meowbalt without his explicit
+permission.
+
+you cannot use or modify the meowbalt character design commercially or in any
+form that isn't fan art.
+
+
+
+
+
+cobalt processing server is open source and licensed under
+[AGPL-3.0]({docs.apiLicense}).
+
+cobalt frontend is [source first](https://sourcefirst.com/) and licensed under
+[CC-BY-NC-SA 4.0]({docs.webLicense}). we decided to use this license to stop
+grifters from profiting off our work & from creating malicious clones that
+deceive people and hurt our public identity.
+
+we rely on many open source libraries, create & distribute our own. you can see
+the full list of dependencies on [github]({contacts.github}).
+
diff --git a/web/i18n/zh/about/general.md b/web/i18n/zh/about/general.md
new file mode 100644
index 00000000..4850fa90
--- /dev/null
+++ b/web/i18n/zh/about/general.md
@@ -0,0 +1,87 @@
+
+
+
+
+
+cobalt helps you save anything from your favorite websites: video, audio, photos
+or gifs. just paste the link and you're ready to rock!
+
+no ads, trackers, paywalls, or other nonsense. just a convenient web app that
+works anywhere, whenever you need it.
+
+
+
+
+
+cobalt was created for public benefit, to protect people from ads and malware
+pushed by its alternatives. we believe that the best software is safe, open, and
+accessible.
+
+it's possible to keep the main instances up thanks to our long-standing
+infrastructure partner, [royalehosting.net]({partners.royalehosting})!
+
+
+
+
+
+all requests to the backend are anonymous and all information about tunnels is
+encrypted. we have a strict zero log policy and don't track *anything* about
+individual people.
+
+when a request needs additional processing, cobalt processes files on-the-fly.
+it's done by tunneling processed parts directly to the client, without ever
+saving anything to disk. for example, this method is used when the source
+service provides video and audio channels as separate files.
+
+additionally, you can [enable forced tunneling](/settings/privacy#tunnel) to
+protect your privacy. when enabled, cobalt will tunnel all downloaded files. 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.
+
+
+
+
+
+
+
+newest features, such as [remuxing](/remux), work locally on your device.
+on-device processing is efficient and never sends anything over the internet. it
+perfectly aligns with our future goal of moving as much processing as possible
+to the client.
+
diff --git a/web/i18n/zh/about/privacy.md b/web/i18n/zh/about/privacy.md
new file mode 100644
index 00000000..6ddf12d3
--- /dev/null
+++ b/web/i18n/zh/about/privacy.md
@@ -0,0 +1,96 @@
+
+
+
+
+
+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 hoster for accurate info.
+
+
+
+
+
+tools that use on-device processing work offline, locally, and never send any
+data anywhere. they are explicitly marked as such whenever applicable.
+
+
+
+
+
+when using saving functionality, in some cases cobalt will encrypt & temporarily
+store information needed for tunneling. it's stored in processing server's RAM
+for 90 seconds and irreversibly purged afterwards. no one has access to it, even
+instance owners, as long as they don't modify the official cobalt image.
+
+processed/tunneled files are never cached anywhere. everything is tunneled live.
+cobalt's saving functionality is essentially a fancy proxy service.
+
+
+
+
+
+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}
+
+
+
+for sake of privacy, we use [plausible's anonymous traffic
+analytics](https://plausible.io/) to get an approximate number of active cobalt
+users. no identifiable information about you or your requests is ever stored.
+all data is anonymized and aggregated. the plausible instance we use is hosted &
+managed by us.
+
+plausible doesn't use cookies and is fully compliant with GDPR, CCPA, and PECR.
+
+[learn more about plausible's dedication to
+privacy.](https://plausible.io/privacy-focused-web-analytics)
+
+if you wish to opt out of anonymous analytics, you can do it in [privacy
+settings](/settings/privacy#analytics).
+
+{/if}
+
+
+
+
+we use cloudflare services for ddos & bot protection. we also use cloudflare
+pages for deploying & hosting the static web app. all of these are required to
+provide the best experience for everyone. it's the most private & reliable
+provider 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/zh/about/terms.md b/web/i18n/zh/about/terms.md
new file mode 100644
index 00000000..e2e0b478
--- /dev/null
+++ b/web/i18n/zh/about/terms.md
@@ -0,0 +1,64 @@
+
+
+
+
+
+these terms are applicable only when using the official cobalt instance. in
+other cases, you may need to contact the hoster for accurate info.
+
+
+
+
+
+saving functionality simplifies downloading content from the internet and takes
+zero liability for what the saved content is used for. processing servers work
+like advanced proxies and don't ever write any content to disk. everything is
+handled in RAM and permanently purged once the tunnel is done. we have no
+downloading logs and can't identify anyone.
+
+[you can read more about how tunnels work in our 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
+100% 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, contact us via any preferred method on [the
+support page](/about/community).
+
diff --git a/web/i18n/zh/button.json b/web/i18n/zh/button.json
new file mode 100644
index 00000000..217030c3
--- /dev/null
+++ b/web/i18n/zh/button.json
@@ -0,0 +1,7 @@
+{
+ "download": "下载",
+ "save": "保存",
+ "cancel": "取消",
+ "reset": "重置",
+ "gotit": "明白"
+}
diff --git a/web/i18n/zh/dialog.json b/web/i18n/zh/dialog.json
new file mode 100644
index 00000000..1a28449f
--- /dev/null
+++ b/web/i18n/zh/dialog.json
@@ -0,0 +1,6 @@
+{
+ "reset.body": "您确定要重置所有数据吗?此操作是立即且不可逆的。",
+ "picker.title": "选择保存内容",
+ "reset.title": "重置所有数据?",
+ "picker.description.desktop": "单击一个项目即可保存它。也可以通过右键菜单保存图像。"
+}
diff --git a/web/i18n/zh/donate.json b/web/i18n/zh/donate.json
new file mode 100644
index 00000000..2406e5a0
--- /dev/null
+++ b/web/i18n/zh/donate.json
@@ -0,0 +1,6 @@
+{
+ "banner.title": "支持安全\n开放的互联网",
+ "banner.subtitle": "向imput捐款或与朋友分享\ncobalt的快乐",
+ "body.motivation": "cobalt 帮助制作人、教育工作者、视频制作者以及其他许多人做他们喜欢的事情。它是一种充满爱意而非以盈利为目的的不同类型的服务。",
+ "body.no_bullshit": "我们相信互联网并不可怕,这就是为什么钴永远不会有广告或其他类型的恶意内容。这是我们坚定信守的承诺。我们所做的一切都是以隐私、可访问性和易用性为出发点,让每个人都能使用钴。"
+}
diff --git a/web/i18n/zh/error.json b/web/i18n/zh/error.json
new file mode 100644
index 00000000..f93fe0fd
--- /dev/null
+++ b/web/i18n/zh/error.json
@@ -0,0 +1,41 @@
+{
+ "remux.out_of_resources": "这与浏览器方面的限制有关。请尝试刷新或重新打开应用程序再试一次。有些设备只能处理很小的文件。",
+ "captcha_ongoing": "仍在检查您是否不是机器人。等待旋转器消失,然后重试。\n\n如果花费的时间太长,请告诉我们!我们使用 cloudflare turntile 来保护机器人,有时它会无缘无故地阻止人们。",
+ "api.youtube.decipher": "YouTube 更新了它的破译算法,我无法提取有关视频的信息。\n\n请在几秒钟内重试,但如果问题仍然存在,请联系我们寻求支持。",
+ "import.no_data": "文件中没有要加载的内容。您确定这是正确的吗?",
+ "import.invalid": "您的文件没有要导入的有效 Cobalt 设置。您确定这是正确的吗?",
+ "remux.corrupted": "无法从该文件读取元数据,它可能已损坏。",
+ "tunnel.probe": "无法验证您是否可以下载该文件。请稍后再试!",
+ "api.auth.jwt.invalid": "无法确认您是否不是机器人,因为您的访问令牌已过期且未更新。请在几秒钟后重试或重新加载页面!",
+ "api.auth.turnstile.missing": "无法确认您是否不是机器人,因为处理服务器没有收到访问令牌。请在几秒钟后重试或重新加载页面!",
+ "api.auth.turnstile.invalid": "无法确认您是否不是机器人,因为您的访问令牌已过期且未更新。请在几秒钟后重试或重新加载页面!",
+ "api.unreachable": "无法连接到处理服务器。请检查您的互联网连接并重试。",
+ "api.timed_out": "处理服务器响应的时间太长。它此刻可能不堪重负,请过几秒钟再试!",
+ "api.rate_exceeded": "您发出的请求太多了。请在 {{ limit }} 秒后重试!",
+ "api.capacity": "cobalt 已满负荷,目前无法处理您的请求。请过几秒钟再试。如果仍然不起作用,请告诉我们,我们会尽力帮助您!",
+ "api.generic": "出了点问题,我无法为您提供任何帮助。请过几秒钟再试一次,但如果问题仍然存在,请告诉我们,我们会尽力帮助您!",
+ "api.unknown_response": "无法解析来自服务器的响应。这可能是由版本不匹配引起的。您确定您使用的是最新版本的 Cobalt 吗?",
+ "api.service.unsupported": "目前尚不支持此服务。您粘贴了正确的链接吗?",
+ "api.service.disabled": "cobalt 支持此服务,但在此实例中已禁用!",
+ "api.link.invalid": "您的链接无效或此服务尚不受支持。您粘贴了正确的链接吗?",
+ "api.link.unsupported": "{{ service }} 是支持的,但我无法识别您的链接。你粘贴对了吗?",
+ "api.fetch.fail": "从 {{ service }} 获取信息时出错,我找不到任何信息。您确定您的链接有效吗?如果有效但您仍然看到此错误,请告知我们,我们会尽力帮助您!",
+ "api.fetch.critical": "{{ service }} 模块返回了一个我无法识别的错误。请在几秒钟后重试,但如果问题仍然存在,请告诉我们!",
+ "api.fetch.empty": "找不到可以为您下载的任何媒体。您确定粘贴了正确的链接吗?",
+ "api.fetch.rate": "Cobalt 处理服务器受到 {{ service }} API 的速率限制。请稍后再试一次!",
+ "api.fetch.short_link": "无法从短链接获取链接信息。你确定它有效吗?如果有效但你仍然收到此错误,请告诉我们,我们会尽力提供帮助!",
+ "api.content.too_long": "您请求的媒体太长。当前时长限制为 {{ limit }} 分钟。请尝试更短一些!",
+ "api.content.video.unavailable": "我无法访问该视频。它可能受到 {{ service }} 方面的限制。您粘贴了正确的链接吗?",
+ "api.content.video.live": "该视频目前正在直播,所以我还无法下载。请等待直播结束后再试一次!",
+ "api.content.video.private": "该视频是私人的,所以我无法访问。更改其可见性或尝试另一个!",
+ "api.content.video.age": "该视频有年龄限制,因此我无法匿名访问。请尝试另一个!",
+ "api.content.video.region": "该视频是区域锁定的,处理服务器位于不同的位置。请尝试另一个!",
+ "api.content.post.unavailable": "找不到关于此帖子的任何内容。其可见性可能有限,或者根本不存在。请确保您的链接有效,然后在几秒钟后重试!",
+ "api.content.post.private": "此帖子来自私人账户,所以我无法访问。您粘贴了正确的链接吗?",
+ "api.content.post.age": "此帖子有年龄限制,所以我无法匿名访问。您粘贴了正确的链接吗?",
+ "api.youtube.codec": "Youtube 没有返回任何与您首选的视频编解码器相关的内容。请在设置中尝试其他编解码器!",
+ "api.youtube.login": "无法获取此视频,因为 youtube 将我标记为机器人。这可能是由于处理实例没有任何活动帐户令牌造成的。请在几秒钟后重试,但如果仍然不起作用,请将此错误告知实例所有者!",
+ "api.youtube.token_expired": "无法获取此视频,因为 YouTube 令牌已过期,我无法刷新它。请在几秒钟后重试,但如果仍然不起作用,请将此错误告知实例所有者!",
+ "import.unknown": "无法从文件加载数据。它可能已损坏或格式错误。这是我得到的错误:\n\n{{ value }}",
+ "api.auth.jwt.missing": "无法确认您是否不是机器人,因为处理服务器没有收到访问令牌。请在几秒钟后重试或重新加载页面!"
+}
diff --git a/web/i18n/zh/general.json b/web/i18n/zh/general.json
new file mode 100644
index 00000000..ec3fbfeb
--- /dev/null
+++ b/web/i18n/zh/general.json
@@ -0,0 +1,5 @@
+{
+ "cobalt": "cobalt",
+ "meowbalt": "喵巴尔特",
+ "beta": "测试版"
+}
diff --git a/web/i18n/zh/notification.json b/web/i18n/zh/notification.json
new file mode 100644
index 00000000..ec9e1294
--- /dev/null
+++ b/web/i18n/zh/notification.json
@@ -0,0 +1,4 @@
+{
+ "update.title": "可进行更新!",
+ "update.subtext": "按下重新装弹"
+}
diff --git a/web/i18n/zh/receiver.json b/web/i18n/zh/receiver.json
new file mode 100644
index 00000000..642dd0fc
--- /dev/null
+++ b/web/i18n/zh/receiver.json
@@ -0,0 +1,5 @@
+{
+ "title": "拖动或选择文件",
+ "title.drop": "将文件拖放到这儿!",
+ "accept": "支持的格式:{{formats}}。"
+}
diff --git a/web/i18n/zh/remux.json b/web/i18n/zh/remux.json
new file mode 100644
index 00000000..b95d8cbf
--- /dev/null
+++ b/web/i18n/zh/remux.json
@@ -0,0 +1,3 @@
+{
+ "description": "重新混合通常可以修复与旧软件的兼容性问题。它速度快、无损,并且一切都在设备上处理。"
+}
diff --git a/web/i18n/zh/save.json b/web/i18n/zh/save.json
new file mode 100644
index 00000000..726957b8
--- /dev/null
+++ b/web/i18n/zh/save.json
@@ -0,0 +1,5 @@
+{
+ "paste.long": "粘贴并下载",
+ "paste": "粘贴",
+ "auto": "自动"
+}
diff --git a/web/i18n/zh/settings.json b/web/i18n/zh/settings.json
new file mode 100644
index 00000000..44ea29df
--- /dev/null
+++ b/web/i18n/zh/settings.json
@@ -0,0 +1,97 @@
+{
+ "processing.enable_custom.description": "如果您选择,cobalt 将使用自定义处理服务器。尽管 cobalt 已采取一些安全措施,但我们对通过社区实例造成的任何损害不承担任何责任,因为我们无法控制它们。\n\n请注意您使用的实例,并确保它们由您信任的人托管。",
+ "page.appearance": "外观",
+ "page.privacy": "隐私",
+ "page.video": "视频",
+ "page.audio": "音频",
+ "page.download": "下载中",
+ "page.advanced": "进阶",
+ "page.debug": "调试信息",
+ "page.instances": "实例",
+ "section.general": "一般",
+ "section.save": "保存",
+ "theme": "风格",
+ "theme.auto": "自动",
+ "theme.light": "明亮",
+ "theme.dark": "暗黑",
+ "theme.description": "自动主题根据您设备的显示模式在明暗主题之间切换。",
+ "video.quality": "视频质量",
+ "video.quality.max": "8k+",
+ "video.quality.2160": "4k",
+ "video.quality.1440": "1440p",
+ "video.quality.1080": "1080p",
+ "video.quality.720": "720p",
+ "video.quality.480": "480p",
+ "video.quality.360": "360p",
+ "video.quality.240": "240p",
+ "video.quality.144": "144p",
+ "video.youtube.codec": "YouTube 视频编解码器和容器",
+ "video.twitter.gif": "twitter/x",
+ "video.twitter.gif.title": "将循环视频转换为 GIF",
+ "video.twitter.gif.description": "GIF 转换效率低,转换后的文件可能非常大而且质量低下。",
+ "video.tiktok.h265": "tiktok",
+ "video.tiktok.h265.title": "首选 HEVC/H265 格式",
+ "video.tiktok.h265.description": "允许以兼容性为代价下载 1080p 的视频。",
+ "audio.format": "音频格式",
+ "audio.format.best": "最好",
+ "audio.format.mp3": "mp3",
+ "audio.format.ogg": "ogg",
+ "audio.format.wav": "wav",
+ "audio.format.opus": "opus",
+ "audio.bitrate": "音频比特率",
+ "audio.bitrate.kbps": "kb/s",
+ "audio.youtube.dub": "youtube",
+ "audio.youtube.dub.title": "使用浏览器语言观看配音视频",
+ "audio.youtube.dub.description": "即使 cobalt 没有翻译成您的语言也可以工作。",
+ "audio.tiktok.original": "tiktok",
+ "audio.tiktok.original.title": "下载原声",
+ "audio.tiktok.original.description": "cobalt 将从视频中下载声音,而不会对帖子的作者进行任何更改。",
+ "metadata.filename": "文件名样式",
+ "metadata.filename.classic": "标准",
+ "metadata.filename.basic": "基本",
+ "metadata.filename.pretty": "优化",
+ "metadata.filename.nerdy": "笨拙",
+ "metadata.filename.description": "文件名样式将仅用于由 cobalt 发送的文件,某些服务不支持标准文件名样式。",
+ "metadata.filename.preview.video": "视频标题",
+ "metadata.filename.preview.audio": "音频标题 - 音频作者",
+ "metadata.file": "文件元数据",
+ "metadata.disable.title": "禁用文件元数据",
+ "metadata.disable.description": "标题、艺术家和其他信息将不会添加到文件中。",
+ "saving.title": "保存方法",
+ "saving.ask": "询问",
+ "saving.download": "下载",
+ "saving.share": "分享",
+ "saving.copy": "复制",
+ "accessibility": "无障碍",
+ "accessibility.transparency.title": "降低视觉透明度",
+ "accessibility.transparency.description": "降低表面透明度并禁用模糊效果。",
+ "accessibility.motion.title": "减少动画",
+ "accessibility.motion.description": "尽可能禁用动画和过渡。",
+ "language": "语言",
+ "language.auto.title": "自动选择",
+ "language.auto.description": "如果有翻译,cobalt 将使用您浏览器的默认语言。如果没有,则将使用英语。",
+ "language.preferred.title": "首选语言",
+ "privacy.analytics": "匿名流量分析",
+ "privacy.analytics.title": "不参与分析",
+ "privacy.analytics.description": "需要匿名流量分析来获取活跃 Cobalt 用户的大致数量。不会存储任何有关您的身份信息。所有处理的数据都经过匿名和汇总。\n\n我们使用自托管的 Plausible 实例,该实例不使用 Cookie,并且完全符合 GDPR、CCPA 和 PECR。",
+ "privacy.analytics.learnmore": "了解有关 plausible 隐私保护的更多信息。",
+ "privacy.tunnel": "隧道",
+ "advanced.debug": "调试",
+ "advanced.debug.title": "启用调试功能",
+ "advanced.debug.description": "使您能够访问包含各种可用于调试的信息的页面。",
+ "advanced.data": "设置数据",
+ "processing.override": "默认实例覆盖",
+ "processing.override.title": "使用实例提供的处理服务器",
+ "processing.community": "社区实例",
+ "processing.enable_custom.title": "使用自定义处理服务器",
+ "processing.custom.placeholder": "自定义实例域名",
+ "video.quality.description": "如果没有首选的视频质量,则选择次优质量。",
+ "video.youtube.codec.description": "H264:兼容性最好,比特率一般。最高质量为 1080p。\nAV1:最佳质量、效率和比特率。支持 8k 和 HDR。\nvp9:质量和比特率与 av1 相同,但文件大约大两倍。支持 4k 和 HDR。\n\nav1 和 vp9 的支持范围不如 h264 广泛。",
+ "audio.format.description": "除“最佳”格式外,所有格式都会被转换,这意味着会有一些质量损失。只有在选择“最佳”格式时才会重新编码音频。",
+ "language.preferred.description": "当自动选择被禁用时,将使用此语言。任何未翻译的文本将以英文显示。\n\n对于英语、俄语和捷克语以外的语言,我们使用社区来源的翻译。它们可能不准确或不完整。",
+ "audio.bitrate.description": "比特率仅在将音频转换为有损格式时应用。钴无法提高源音频质量,因此选择超过 128kbps 的比特率可能会增加文件大小,而不会产生可听见的差别。感知质量可能因格式而异。",
+ "saving.description": "从 Cobalt 保存文件或链接的首选方式。如果首选方法不可用或出现问题,Cobalt 将询问您下一步该怎么做。",
+ "privacy.tunnel.description": "Cobalt 将隐藏您的 IP 地址、浏览器信息并绕过本地网络限制。启用后,文件也将具有可读的文件名,否则将是乱码。",
+ "privacy.tunnel.title": "始终通过隧道传输文件",
+ "processing.override.description": "如果 web 实例提供了自己的默认处理服务器,您可以选择使用它而不是主处理服务器。确保它是您信任的服务器。"
+}
diff --git a/web/i18n/zh/tabs.json b/web/i18n/zh/tabs.json
new file mode 100644
index 00000000..1319dee4
--- /dev/null
+++ b/web/i18n/zh/tabs.json
@@ -0,0 +1,5 @@
+{
+ "save": "保存",
+ "settings": "设置",
+ "updates": "更新日志"
+}
diff --git a/web/i18n/zh/updates.json b/web/i18n/zh/updates.json
new file mode 100644
index 00000000..1e06cdcd
--- /dev/null
+++ b/web/i18n/zh/updates.json
@@ -0,0 +1,4 @@
+{
+ "button.next": "转到较旧的更新日志({{ value }})",
+ "button.previous": "转到较新的变更日志 ({{ value }})"
+}