Translators! Please ensure you are copying over {{common.filter}} or {{num}} over EXACTLY to the localized. Do not localize anything inside or translate {{common.filter}} -> Filter in your language. These are substitution strings and must be used exactly as seen.

If you want to test a localization, you can download the json files and place them in your Kavita install at:

./I18N/ (backend) ./wwwroot/assets/langs (frontend)

Translation status

89 Strings
0%
562 Words
0%
3,798 Characters
0%

Strings status

Strings Words Characters
89 562 3,798
All strings Browse Translate Zen
89 562 3,798
Unfinished strings Browse Translate Zen
89 562 3,798
Untranslated strings Browse Translate Zen

Other components

Component Translated Unfinished Unfinished words Unfinished characters Untranslated Checks Suggestions Comments
backend GPL-3.0-or-later 0% 279 1,822 10,541 0 0 0 0
ui GPL-3.0-or-later 0% 3,221 12,374 86,501 0 0 0 0

Summary

Project website www.kavitareader.com
Instructions for translators

If you see "{{common.submit}}" or other markup like this, you do not need to translate that string. This will reference another string that's already been translated. Copy and Paste this as-is over to the translation. If you see {{num}} like that, this is a variable and gives context to what will be transposed there. If you see {0} like that, this is a variable from backend project. If you see the string key as "part-1" or "continued", this string is used where part of the string has html and is thus broken up. Please try to make it as fluent as possible. If you see the key have -alt/-tooltip, this is either accessibility text or helper text. If you see the key starts with "Kavita -", then this is the title of the browser tab.

When in doubt, please reach out to majora2007 in our Kavita Discord. You can join our translation channel on discord here

Thank you for your help translating the project.

Project maintainers2 User avatar ThePromidiusUser avatar kavitareader
Translation license GNU General Public License v3.0 or later
Translation process
  • Translations can be made directly.
  • Translation suggestions can be made.
  • Any authenticated user can contribute.
  • The translation uses monolingual files.
  • The translation base language is editable.
Source code repository https://github.com/Kareadita/tach-extension
Repository branch master
Last remote commit Merge pull request #51 from MajorTanya/fix-hard-crash-loop 230cf3764
User avatar dear-clouds authored 12/22/2025
Last commit in Weblate Translated using Weblate (Czech) a4d7cc803
User avatar helak authored 05/05/2026
Weblate repository https://hosted.weblate.org/git/kavita/tachiyomi/
File mask src/all/kavita/assets/i18n/messages_*.properties
Monolingual base language file src/all/kavita/assets/i18n/messages_en.properties
Translation file Download src/all/kavita/assets/i18n/messages_pt_pt.properties
Last change April 29, 2026, 11:27 p.m.
Last change made by None
Language Portuguese (Portugal)
Language code pt_PT
Text direction Left to right
Case sensitivity Case-sensitive
Number of speakers 9,798,912
Number of plurals 3
Plural type One/many/other
Plurals One 1
Many 1000000, 2000000
Other 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, …
Plural formula (n == 1) ? 0 : ((n != 0 && n % 1000000 == 0) ? 1 : 2)
04/29/2026

String statistics

Strings percent Hosted strings Words percent Hosted words Characters percent Hosted characters
Total 89 562 3,798
Translated 0% 0 0% 0 0% 0
Needs editing 0% 0 0% 0 0% 0
Read-only 0% 0 0% 0 0% 0
Failing checks 0% 0 0% 0 0% 0
Strings with suggestions 0% 0 0% 0 0% 0
Untranslated strings 100% 89 100% 562 100% 3,798

Quick numbers

562
Hosted words
89
Hosted strings
0%
Translated
and previous 30 days

Trends of last 30 days

+100%
Hosted words
+100%
Hosted strings
Translated
Contributors
User avatar None

Resource updated

File “src/all/kavita/assets/i18n/messages_pt_pt.properties” was added. 04/29/2026
User avatar None

String added in the repository

 
04/29/2026
User avatar None

String added in the repository

 
04/29/2026
User avatar None

String added in the repository

 
04/29/2026
User avatar None

String added in the repository

 
04/29/2026
User avatar None

String added in the repository

 
04/29/2026
User avatar None

String added in the repository

 
04/29/2026
User avatar None

String added in the repository

 
04/29/2026
User avatar None

String added in the repository

 
04/29/2026
User avatar None

String added in the repository

 
04/29/2026
Browse all translation changes