diff --git a/web/i18n/ru/a11y/dialog.json b/web/i18n/ru/a11y/dialog.json new file mode 100644 index 00000000..0967ef42 --- /dev/null +++ b/web/i18n/ru/a11y/dialog.json @@ -0,0 +1 @@ +{} diff --git a/web/i18n/ru/a11y/donate.json b/web/i18n/ru/a11y/donate.json new file mode 100644 index 00000000..fcf93fad --- /dev/null +++ b/web/i18n/ru/a11y/donate.json @@ -0,0 +1,4 @@ +{ + "share.qr.expand": "qr-код. нажми, чтобы развернуть.", + "share.qr.collapse": "развернутый qr-код. нажми, чтобы свернуть." +} diff --git a/web/i18n/ru/a11y/save.json b/web/i18n/ru/a11y/save.json index d6def5e5..d8b1c7a2 100644 --- a/web/i18n/ru/a11y/save.json +++ b/web/i18n/ru/a11y/save.json @@ -1,9 +1,9 @@ { "link_area": "зона вставки ссылки", - "clear_input": "clear input", + "clear_input": "", "download": "скачать", "download.think": "обрабатываю ссылку...", "download.check": "проверяю загрузку...", - "download.done": "загрузка завершена!", + "download.done": "загрузка завершена", "download.error": "ошибка загрузки" } diff --git a/web/i18n/ru/about.json b/web/i18n/ru/about.json new file mode 100644 index 00000000..0652a582 --- /dev/null +++ b/web/i18n/ru/about.json @@ -0,0 +1,34 @@ +{ + "page.general": "что за кобальт?", + "heading.general": "", + "heading.saving": "", + "heading.encryption": "", + "heading.abuse": "", + "heading.motivation": "", + "heading.licenses": "", + "heading.summary": "", + "heading.privacy": "", + "page.faq": "", + "page.community": "", + "page.privacy": "", + "page.terms": "", + "page.credits": "", + "community.discord": "", + "community.twitter": "", + "community.github": "", + "community.email": "", + "community.telegram": "", + "heading.testers": "", + "heading.community": "", + "heading.local": "", + "heading.plausible": "", + "heading.cloudflare": "", + "heading.responsibility": "", + "support.github": "", + "support.discord": "", + "support.description.issue": "", + "support.description.help": "", + "support.twitter": "", + "support.telegram": "", + "support.description.best-effort": "" +} diff --git a/web/i18n/ru/about/credits.md b/web/i18n/ru/about/credits.md new file mode 100644 index 00000000..b9ec1768 --- /dev/null +++ b/web/i18n/ru/about/credits.md @@ -0,0 +1,69 @@ + + +
+ + +cobalt is made with love and care by the [imput](https://imput.net/) research +and development team. + +you can support us on the [donate page](/donate)! +
+ +
+ + +huge shoutout to our thing breakers 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. +
+ +
+ + +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/ru/about/general.md b/web/i18n/ru/about/general.md new file mode 100644 index 00000000..4850fa90 --- /dev/null +++ b/web/i18n/ru/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. +
+ +
+ + +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! +
+ +
+ + +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/ru/about/privacy.md b/web/i18n/ru/about/privacy.md new file mode 100644 index 00000000..6ddf12d3 --- /dev/null +++ b/web/i18n/ru/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/ru/about/terms.md b/web/i18n/ru/about/terms.md new file mode 100644 index 00000000..e2e0b478 --- /dev/null +++ b/web/i18n/ru/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/ru/button.json b/web/i18n/ru/button.json new file mode 100644 index 00000000..95c829ae --- /dev/null +++ b/web/i18n/ru/button.json @@ -0,0 +1,17 @@ +{ + "download.audio": "скачать аудио", + "import": "импортировать", + "copied": "скопировано", + "copy": "скопировать", + "share": "поделиться", + "download": "скачать", + "no": "нет", + "yes": "да", + "save": "сохранить", + "continue": "продолжить", + "done": "готово", + "reset": "сбросить", + "cancel": "отменить", + "export": "экспортировать", + "gotit": "понятно" +} diff --git a/web/i18n/ru/dialog.json b/web/i18n/ru/dialog.json new file mode 100644 index 00000000..d41a39d2 --- /dev/null +++ b/web/i18n/ru/dialog.json @@ -0,0 +1,7 @@ +{ + "reset.title": "cбросить все настройки?", + "reset.body": "ты уверен что хочешь сбросить все настройки? это действие немедленно и необратимо.", + "picker.title": "укажи, что хочешь сохранить", + "saving.title": "выбери как хочешь сохранить", + "saving.timeout": "кобальт попытался сохранить файл автоматически, но твой браузер остановил это. выбери способ вручную." +} diff --git a/web/i18n/ru/donate.json b/web/i18n/ru/donate.json new file mode 100644 index 00000000..0f94b23e --- /dev/null +++ b/web/i18n/ru/donate.json @@ -0,0 +1,21 @@ +{ + "card.once": "одноразовый донат", + "card.option.30": "обед для двоих", + "body.no_bullshit": "мы считаем, что интернет не должен быть пугающим, поэтому в кобальте никогда не будет рекламы или вредоносного контента. мы твёрдо выполняем это обещание. всё, что мы делаем, создаётся с учётом конфиденциальности, доступности и простоты использования, что делает кобальт доступным для всех.", + "card.custom": "своя сумма (начиная с $2)", + "card.processor": "через {{value}}", + "card.option.5": "чашка кофе", + "card.option.50": "10 кг кошачьего корма", + "card.option.1599": "обычный macbook pro", + "card.option.4900": "10,000 яблок", + "share.title": "поделись кобальтом с другом", + "alternative.title": "альтернативные способы доната", + "alt.copy": "{{ value }}. адрес криптокошелька. нажми, чтобы скопировать.", + "alt.open": "{{ value }}. нажми, чтобы открыть.", + "body.motivation": "кобальт помогает продюсерам, преподавателям, видеомейкерам и многим другим заниматься тем, что они любят. это особый сервис создающийся с любовью, а не ради прибыли.", + "body.keep_going": "если для тебя кобальт оказался полезным, пожалуйста, рассмотри возможность поддержать нашу работу! ты можешь помочь нам донатом, либо поделившись кобальтом с другом. каждый донат высоко ценится и помогает нам продолжать работу над кобальтом и другими проектами.", + "card.recurring": "постоянный донат", + "card.option.10": "большая пицца", + "card.option.15": "полный обед", + "card.custom.submit": "своя сумма" +} diff --git a/web/i18n/ru/error.json b/web/i18n/ru/error.json new file mode 100644 index 00000000..0c93977f --- /dev/null +++ b/web/i18n/ru/error.json @@ -0,0 +1,4 @@ +{ + "api.link.invalid": "ваша ссылка недействительная либо этот сервис ещё не поддерживается. вы вставили правильную ссылку?", + "api.rate_exceeded": "вы делаете слишком много запросов. попробуйте снова через {{ limit }} секунд!" +} diff --git a/web/i18n/ru/general.json b/web/i18n/ru/general.json index 90cbfef5..920f277d 100644 --- a/web/i18n/ru/general.json +++ b/web/i18n/ru/general.json @@ -2,6 +2,5 @@ "cobalt": "кобальт", "meowbalt": "мяубальт", "beta": "бета", - "embed.description": "сохраняй то, что любишь: без рекламы, трекеров и прочей чепухи. кобальт создан с любовью, а не с целью заработать." } diff --git a/web/i18n/ru/notification.json b/web/i18n/ru/notification.json new file mode 100644 index 00000000..14822cf3 --- /dev/null +++ b/web/i18n/ru/notification.json @@ -0,0 +1,4 @@ +{ + "update.title": "доступно обновление!", + "update.subtext": "нажми, чтобы обновить" +} diff --git a/web/i18n/ru/receiver.json b/web/i18n/ru/receiver.json new file mode 100644 index 00000000..6864d1b9 --- /dev/null +++ b/web/i18n/ru/receiver.json @@ -0,0 +1,5 @@ +{ + "accept": "поддерживаемые форматы: {{ formats }}.", + "title": "перетащи или выбери файл", + "title.drop": "скинь файл сюда!" +} diff --git a/web/i18n/ru/remux.json b/web/i18n/ru/remux.json new file mode 100644 index 00000000..82faf1d0 --- /dev/null +++ b/web/i18n/ru/remux.json @@ -0,0 +1,3 @@ +{ + "description": "ремукс помогает решить проблемы с совместимостью файлов в старых приложениях. файлы обрабатываются быстро, без потери качества и локально на устройстве." +} diff --git a/web/i18n/ru/save.json b/web/i18n/ru/save.json index ce64917a..f45a956e 100644 --- a/web/i18n/ru/save.json +++ b/web/i18n/ru/save.json @@ -10,5 +10,13 @@ "services.title": "поддерживаемые сервисы", "services.title_show": "показать поддерживаемые сервисы", "services.title_hide": "скрыть поддерживаемые сервисы", - "services.disclaimer": "кобальт не аффилирован ни с одним из перечисленных выше сервисов.\n\nдеятельность meta platforms (владельца facebook и instagram) запрещена на территории РФ и признана экстремистской." + "services.disclaimer": "кобальт не аффилирован ни с одним из перечисленных выше сервисов.\n\nдеятельность meta platforms (владельца facebook и instagram) запрещена на территории РФ и признана экстремистской.", + "tutorial.step.1": "добавь команды-компаньоны:", + "tutorial.step.2": "нажми кнопку \"поделиться\" в диалоге сохранения кобальта.", + "tutorial.step.3": "выбери нужную команду в окне обмена.", + "tutorial.shortcut.photos": "в фото", + "tutorial.shortcut.files": "в файлы", + "tutorial.title": "как сохранить на ios?", + "tutorial.intro": "чтобы удобно сохранять файлы на ios, придётся использовать команду siri из меню обмена.", + "tutorial.outro": "эти команды siri будут работать только из приложения кобальта, использовать их из других приложений не получится." } diff --git a/web/i18n/ru/settings.json b/web/i18n/ru/settings.json new file mode 100644 index 00000000..4387622e --- /dev/null +++ b/web/i18n/ru/settings.json @@ -0,0 +1,55 @@ +{ + "theme.auto": "авто", + "theme.light": "белая", + "audio.bitrate.kbps": "кбит/с", + "theme.dark": "тёмная", + "audio.youtube.dub": "youtube", + "video.quality.max": "8k+", + "page.video": "видео", + "page.audio": "аудио", + "page.download": "скачивание", + "section.save": "сохранить", + "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", + "metadata.file": "метаданные файла", + "saving.title": "метод сохранения", + "saving.ask": "спросить", + "saving.download": "скачать", + "saving.share": "поделиться", + "saving.copy": "скопировать", + "accessibility": "доступность", + "language": "язык", + "language.preferred.title": "предпочитаемый язык", + "privacy.analytics": "анонимная аналитика трафика", + "audio.tiktok.original.title": "скачать оригинальный звук", + "privacy.tunnel": "туннелирование", + "privacy.tunnel.title": "всегда туннелировать файлы", + "video.tiktok.h265": "tiktok", + "audio.format.mp3": "mp3", + "audio.format.ogg": "ogg", + "audio.format.wav": "wav", + "audio.format.opus": "opus", + "page.privacy": "конфиденциальность", + "theme": "тема", + "video.quality": "качество видео", + "video.twitter.gif": "twitter/x", + "video.quality.2160": "4k", + "audio.format": "формат аудио", + "audio.bitrate": "битрейт аудио", + "audio.tiktok.original": "tiktok", + "metadata.disable.title": "отключить метаданные файла", + "language.auto.title": "автоматический выбор", + "metadata.disable.description": "название, исполнитель и другая информация не будут добавлены в файл.", + "language.preferred.description": "этот язык будет использоваться когда автоматический выбор отключен. любой непереведённый текст будет отображаться на английском языке.\n\nмы используем переводы, предоставленные сообществом, для языков, отличных от английского, русского и чешского. они могут быть неточными или неполными.", + "audio.youtube.dub.description": "работает даже если кобальт не переведен на твой язык.", + "language.auto.description": "если доступен перевод, кобальт будет использовать язык твоего браузера, в ином случае будет использоваться английский.", + "theme.description": "", + "page.debug": "", + "section.general": "", + "page.appearance": "" +} diff --git a/web/i18n/ru/tabs.json b/web/i18n/ru/tabs.json index 0b93cc7f..a8cdab96 100644 --- a/web/i18n/ru/tabs.json +++ b/web/i18n/ru/tabs.json @@ -1,5 +1,5 @@ { - "save": "скачать", + "save": "сохранить", "settings": "настройки", "updates": "новости", "donate": "донаты", diff --git a/web/i18n/ru/updates.json b/web/i18n/ru/updates.json new file mode 100644 index 00000000..3f6d5fd3 --- /dev/null +++ b/web/i18n/ru/updates.json @@ -0,0 +1,4 @@ +{ + "button.next": "перейти к более старому обновлению ({{ value }})", + "button.previous": "перейти к более новому обновлению ({{ value }})" +}