Psiphon: Difference between revisions

From Localization Lab Wiki
Jump to navigation Jump to search
(Added information for InView & MalAware)
 
(60 intermediate revisions by one other user not shown)
Line 1: Line 1:
<div style="float:right; margin-left:2.5em">__TOC__</div>
<div style="float:right; margin-left:2.5em">__TOC__</div>


=About=
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#8de9f1;"
<div style="float:left; margin-right:1.0em">[[File:Psiphon.png|75px|center|Psiphon Logo]]</div>
|<div style="float:left; margin-right:.75em; margin-top:.75em; margin-left:.5em">[[File:Psiphon.png|75px|center|Psiphon Logo]]</div>
Psiphon is an open-source Internet censorship circumvention tool that allows users to access blocked content and websites on iOS, Android and Windows devices. Psiphon uses a combination of secure communication and obfuscation technologies (VPN, SSH, and HTTP Proxy) to ensure you always have access to the open Internet.
Psiphon is an open-source Internet censorship circumvention tool that allows users to access blocked content and websites on iOS, Android and Windows devices. Psiphon uses a combination of secure communication and obfuscation technologies ([https://en.wikipedia.org/wiki/Virtual_private_network VPN], [https://en.wikipedia.org/wiki/Secure_Shell SSH], and [https://en.wikipedia.org/wiki/Proxy_server HTTP Proxy]) to ensure you always have access to the open Internet.


'''Website:''' [https://psiphon.ca/ psiphon.ca]
'''Website:''' [https://psiphon.ca/ psiphon.ca]


'''Download Psiphon:'''<br>
'''Download Psiphon:'''<br>
Psiphon is available on Android, iOS, and Windows. To ensure you download a verified version of Psiphon and not an unofficial or malicious copy, download from the [https://psiphon.ca/en/download.html?psiphonca Psiphon Website].
Psiphon is available on Android, iOS, and Windows.


=Translate=
''To ensure you download a verified version of Psiphon and not an unofficial or malicious copy, download from the '''[https://psiphon.ca/en/download.html?psiphonca Psiphon Website]'''.''
'''Join the Psiphon Translation Team:'''<br>
|}
*[https://www.transifex.com/otf/Psiphon3/dashboard/ Psiphon 3]<br>
 
*[https://www.transifex.com/otf/Psiphon3_live/dashboard/ Psiphon 3_live] ''(Psiphon Home Page)''<br>
[[File:Psiphon_Fact_Sheet.png|thumb|Psiphon Fact Sheet<br>''[http://mailto:info@localizationlab.org Contact us] to localize this image.'']]
*[https://www.transifex.com/otf/psiphon-2/dashboard/ Psiphon 2]
[[File:Psiphon_Fact_Sheet_sw.png|thumb|Psiphon Fact Sheet - Swahili<br>'']]
 
=Translate Psiphon=
==Getting Started==
'''1. Create a Transifex Account:'''
:Haven't created a Transifex account yet? Create one '''[https://www.transifex.com/signup/ here]'''.
 
'''2. Join the Psiphon Translation Team:'''
*[https://www.transifex.com/otf/Psiphon3/dashboard/ Psiphon 3 & Psiphon Website Translation Team]<br>
*[https://www.transifex.com/otf/psiphon-2/dashboard/ Psiphon 2 Translation Team]
 
'''3. Download Psiphon:'''
:'''[https://psiphon.ca/en/download.html?psiphonca Download Psiphon] for the platforms you are translating!''' This is an important step that will allow you to get comfortable with the tool and view the original English strings and translations in context. Psiphon is available to download on ''Android'', ''iOS'' and ''Windows''.
 
'''4. Review the [[#Translation Guidelines]]:'''
:Make sure you are familiar with the Translation Guidelines before you begin translating. They contain important information like whether or not to translate or transliterate the Project name.
 
'''5. Start Translating from the [[#Translation Priorities & Resources]]:'''
:The list of resources and translation priorities will help you decide which content to work on first in the Psiphon project. Some resources are much more important to work on than others because they affect a larger number of Psiphon users. Dedicate your time on the resources that will make the most impact for users first.


==Resources==
==Translation Priorities & Resources==
Where should you start translating? Below is a list of the highest priority resources for Psiphon and which apps they correspond with. You should begin translating the resources marked <span style="color:#FF0000">'''Urgent'''</span>, then move to <span style="color:#ffb90f">'''High Priority'''</span> resources, finishing the rest of the resources last.
Where should you start translating? Below is a list of the highest priority resources for Psiphon and which apps they correspond with. You should begin translating the resources marked <span style="color:#FF0000">'''Urgent'''</span>, then move to <span style="color:#ffb90f">'''High Priority'''</span> resources, finishing the rest of the resources last.


===[https://www.transifex.com/otf/Psiphon3_live/dashboard/ Psiphon 3_live]===
===Psiphon Website Homepage (''[https://www.transifex.com/otf/Psiphon3_live/dashboard/ Psiphon 3_live]'')===
''"Psiphon 3_live" is the [https://psiphon.ca/ Psiphon website]. For many, this page may be their first introduction to the Psiphon applications and it is important that it be available in all of the languages Psiphon tools are available in.''
''"Psiphon 3_live" is the [https://psiphon.ca/ Psiphon website]. For many, this page may be their first introduction to the Psiphon applications and it is important that it be available in all of the languages Psiphon tools are available in.''


Line 26: Line 44:
! Resource !! Priority
! Resource !! Priority
|-
|-
| www.psiphon.ca ''([https://psiphon.ca/ Psiphon Home Page])'' || <span style="color:#FF0000">'''Urgent'''</span>
| [https://www.transifex.com/otf/Psiphon3_live/httpswwwpsiphonca/ www.psiphon.ca] ''([https://psiphon.ca/ Psiphon Home Page])'' || <span style="color:#FF0000">'''Urgent'''</span>
|}
|}


Line 39: Line 57:
! Resource !! Priority
! Resource !! Priority
|-
|-
| Android App browser strings || <span style="color:#FF0000">'''Urgent'''</span>
| [https://www.transifex.com/otf/Psiphon3/android-app-browser-strings/ Zirco aka Android App browser strings] || <span style="color:#FF0000">'''Urgent'''</span>
|-
|-
| Android App strings || <span style="color:#FF0000">'''Urgent'''</span>
| [https://www.transifex.com/otf/Psiphon3/android-app-strings/ Android App strings] || <span style="color:#FF0000">'''Urgent'''</span>
|-
|-
| Android Library strings || <span style="color:#FF0000">'''Urgent'''</span>
| [https://www.transifex.com/otf/Psiphon3/android-library-strings/ Android Library strings] || <span style="color:#FF0000">'''Urgent'''</span>
|-
|-
| Store Assets ''(Google Play Store Description)''|| <span style="color:#ffb90f">'''High Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/store-assets/ Store Assets ''(Google Play Store Description)'']|| <span style="color:#ffb90f">'''High Priority'''</span>
|}
|}


Line 54: Line 72:
! Resource !! Priority
! Resource !! Priority
|-
|-
| iOS Common Library: Root.strings || <span style="color:#FF0000">'''Urgent'''</span>
| [https://www.transifex.com/otf/Psiphon3/ios-common-library-rootstrings/ iOS Common Library: Root.strings] || <span style="color:#FF0000">'''Urgent'''</span>
|-
|-
| iOS VPN App: Localizable.strings || <span style="color:#FF0000">'''Urgent'''</span>
| [https://www.transifex.com/otf/Psiphon3/ios-vpn-app-localizablestrings/ iOS VPN App: Localizable.strings] || <span style="color:#FF0000">'''Urgent'''</span>
|-
|-
| iOS Common Library: Localizable.strings || <span style="color:#FF0000">'''Urgent'''</span>
| [https://www.transifex.com/otf/Psiphon3/ios-common-library-localizablestrings/ iOS Common Library: Localizable.strings] || <span style="color:#FF0000">'''Urgent'''</span>
|-
|-
| iOS VPN App: Store Assets ''(Apple AppStore Description)'' || <span style="color:#ffb90f">'''High Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/ios-vpn-app-store-assets/ iOS VPN App: Store Assets] ''(Apple AppStore Description)'' || <span style="color:#ffb90f">'''High Priority'''</span>
|}
|}


Line 68: Line 86:
! Resource !! Priority
! Resource !! Priority
|-
|-
| Email Template Strings || <span style="color:#ffb90f">'''High Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/email-template-strings/ Email Template Strings] || <span style="color:#ffb90f">'''High Priority'''</span>
|-
|-
| Feedback Auto-responses || <span style="color:#ffb90f">'''High Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/feedback-auto-responses/ Feedback Auto-responses] || <span style="color:#ffb90f">'''High Priority'''</span>
|-
|-
| Feedback Template Strings || <span style="color:#ffb90f">'''High Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/feedback-template-strings/ Feedback Template Strings] || <span style="color:#ffb90f">'''High Priority'''</span>
|}
|}


====Website Strings====
====Website Strings====
''The website strings correspond to the full Psiphon website as opposed to the home page which is translated in the [https://www.transifex.com/otf/Psiphon3/dashboard/ Psiphon 3_live Project].''
''The website strings correspond to the full Psiphon website ([https://psiphon.ca/en/faq.html FAQ], [https://psiphon.ca/en/user-guide.html User Guide] etc.)  as opposed to the home page which is translated in the [https://www.transifex.com/otf/Psiphon3/dashboard/ Psiphon 3_live Project].''


{| class="wikitable sortable"
{| class="wikitable sortable"
Line 82: Line 100:
! Resource !! Priority
! Resource !! Priority
|-
|-
| Website strings || <span style="color:#ffb90f">'''High Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/website-strings/ Website strings] || <span style="color:#ffb90f">'''High Priority'''</span>
|}
|}
''Please translate the [https://psiphon.ca/en/download.html?psiphonca Download Page] strings first. You can find them by typing "'''tags:Download-Page'''" into the filter in the Transifex web editor. The relevant strings will appear in the left-hand panel of the editor.''
''Please translate the [https://psiphon.ca/en/download.html?psiphonca Download Page] strings first. You can find them by typing "'''tags:Download-Page'''" into the filter in the Transifex web editor. The relevant strings will appear in the left-hand panel of the editor.''
Line 91: Line 109:
! Resource !! Priority
! Resource !! Priority
|-
|-
| Windows Client strings || <span style="color:#00bfff">'''Low Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/windows-client-strings/ Windows Client strings] || <span style="color:#00bfff">'''Low Priority'''</span>
|}
|}


Line 101: Line 119:
! Resource !! Priority
! Resource !! Priority
|-
|-
| iOS Browser App: IASKLocalizable.strings || <span style="color:#00bfff">'''Low Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/ios-browser-iasklocalizablestrings/ iOS Browser App: IASKLocalizable.strings] || <span style="color:#00bfff">'''Low Priority'''</span>
|-
|-
| iOS Browser App: InfoPlist.strings || <span style="color:#00bfff">'''Low Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/ios-browser-app-infopliststrings/ iOS Browser App: InfoPlist.strings] || <span style="color:#00bfff">'''Low Priority'''</span>
|-
| [https://www.transifex.com/otf/Psiphon3/ios-browser-localizablestrings/ iOS Browser App: Localizable.strings] || <span style="color:#00bfff">'''Low Priority'''</span>
|-
| [https://www.transifex.com/otf/Psiphon3/ios-browser-onepasswordextensionstrings/ iOS Browser App: OnePasswordExtension.strings] || <span style="color:#00bfff">'''Low Priority'''</span>
|-
| [https://www.transifex.com/otf/Psiphon3/ios-common-library-rootstrings/ iOS Browser App: Root.strings] || <span style="color:#00bfff">'''Low Priority'''</span>
|-
| [https://www.transifex.com/otf/Psiphon3/ios-browser-app-store-assets/ iOS Browser App: Store Assets] || <span style="color:#00bfff">'''Low Priority'''</span>
|}
 
====InView App====
''InView is a secure and private video conferencing platform powered by the Open Source project Jitsi. InView is developed and operated by Psiphon, with the aim of providing high speed, and dependable VOIP access to every global region.''
 
{| class="wikitable sortable"
|-
|-
| iOS Browser App: Localizable.strings || <span style="color:#00bfff">'''Low Priority'''</span>
! Resource !! Priority
|-
|-
| iOS Browser App: OnePasswordExtension.strings || <span style="color:#00bfff">'''Low Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/inview-app-strings/ InView App strings] || <span style="color:#00bfff">'''High Priority'''</span>
|}
 
====MalAware Feature for Andriod====
''MalAware is a new feature in Psiphon Android that allows users to enable in-app notifications if traffic from a device running Psiphon attempts to communicate with destinations associated with known or suspected malware activity. Here is  an introduction to the feature: [https://malaware.io/en/index.html MalAware]''
 
{| class="wikitable sortable"
|-
|-
| iOS Browser App: Root.strings || <span style="color:#00bfff">'''Low Priority'''</span>
! Resource !! Priority
|-
|-
| iOS Browser App: Store Assets || <span style="color:#00bfff">'''Low Priority'''</span>
| [https://www.transifex.com/otf/Psiphon3/malaware-website-strings/ MalAware Android strings] || <span style="color:#00bfff">'''High Priority'''</span>
|}
 
 
====Psiphon Outreach Material====
''The "Tell a Friend" campaign and "Psiphon Fact Sheet" are outreach materials used to help bring new users to Psiphon. When you finish the "Psiphon Fact Sheet" be sure to [mailto:erinm@localizationlab.org let Localization Lab know] so that a fact sheet can be produced for you to share.''
 
{| class="wikitable sortable"
|-
! Resource !! Priority
|-
| [https://www.transifex.com/otf/Psiphon3/tellafriend_enhtml/ Tell a Friend Campaign] || <span style="color:#00bfff">'''Low Priority'''</span>
|-
| [https://www.transifex.com/otf/Psiphon3/psiphon-fact-sheettxt/ Psiphon Fact Sheet] || <span style="color:#00bfff">'''Low Priority'''</span>
|-
| [https://www.transifex.com/otf/Psiphon3/telegram-bot/ Psiphon Telegram Bot] || <span style="color:#00bfff">'''Low Priority'''</span>
|}
|}


Line 121: Line 174:
! Resource !! Priority
! Resource !! Priority
|-
|-
| psiphon-2.po || <span style="color:#00bfff">'''Low Priority'''</span>
| [https://www.transifex.com/otf/psiphon-2/content/ psiphon-2.po] || <span style="color:#00bfff">'''Low Priority'''</span>
|}
|}
===[https://www.transifex.com/otf/psiphon-pro/dashboard/ Psiphon Pro]===
''Psiphon Pro is the commercial version of Psiphon 3. Proceeds from Psiphon Pro ensure that the free version of Psiphon remains available for users around the globe.''
{| class="wikitable sortable"
|-
! Resource !! Priority
|-
| [https://www.transifex.com/otf/psiphon-pro/psiphon-pro-android-strings/ Psiphon Pro Android Strings] || <span style="color:#ffb90f">'''High Priority'''</span>
|-
| [https://www.transifex.com/otf/psiphon-pro/descriptiontxt-1/ Google Play Store Listing Description] || <span style="color:#00bfff">'''Low Priority'''</span>
|}
=Localization Resources=
[https://psiphon.ca/en/download.html?10Years Download the Windows, Android and iOS app]<br>
[https://psiphon.ca/en/faq.html Psiphon FAQ]<br>
[https://www.localizationlab.org/psiphon-ama Psiphon AMA  (Ask Me Anything) with Localization Lab Highlights] ''(April 2019)''


==Translation Guidelines==
==Translation Guidelines==
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''1. Read the ''Developer Notes'' and ''Translation Instructions'' in Transifex.'''
:The ''Developer Notes'' and ''Instructions'' are located in the Web Editor in between the source text and the translation text field. Make sure to read and follow any available instructions for the string you are translating.


* Do not translate or transcribe "Psiphon". If you feel speakers of your language would benefit from a transcription of the project name, please place it in parentheses after the original name.
[[File:Developer notes.png|500px|center|Example of ''Developer Notes''.]]
::'''Example:''' Psiphon (سايفون)
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''2. Do not translate or transliterate "Psiphon" or other application or project names.'''<br>
:Do not translate or transliterate "Psiphon" or other project, company or application names that do not have an official or widely adopted regional variation.


=Localization Resources=
:Some projects have widely used and accepted translations or transliterations of their names. If this is the case in your language, feel free to use the localized version.
[https://psiphon.ca/en/download.html?10Years Download the Windows, Android and iOS app]
::'''Example:''' تويتر ''Transliteration of Twitter in Arabic''
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''3. Focus on consistency.'''
:Transifex has several features to help you manage consistency across translations:
:* The '''[https://docs.transifex.com/translation/using-translation-memory-and-concordance-search#concordance-search Concordance Search]''' allows you to search for words and phrases across multiple resources within the same project and across different projects within the same organization. You can use it to see how something is translated in different strings and contexts.<br>
:* Web Editor '''[https://docs.transifex.com/translation/translating-with-the-web-editor#searching-and-filtering-for-strings Filters]''' allow you to filter and search strings across one or multiple resources in a project. Among many options, you can filter by word or phrase in the source text or in the translation text.<br>
:* The Localization Lab '''[https://docs.transifex.com/translation/using-the-glossary Glossary]''' is very robust in English, however not all languages have translations for each term. Use the ''Glossary'' tab to double check translation of a term. If the term is not there, select ''View Glossary'' to [https://docs.transifex.com/setup/glossary/adding-termsadd the translation to the glossary].
:::Key Psiphon terms will have the label "[Psiphon]" in the ''Comments'' field for the term.
:* If a string that you are translating references what appears to be a tab, button, header etc from the software or another project, check to make sure your translation is consistent with the original translation.
:::'''Example:''' "Create Account" appears in a string in Psiphon. Use the [https://docs.transifex.com/translation/translating-with-the-web-editor#searching-and-filtering-for-strings filters] in the Web Editor to see where else "Create Account" appears in the Psiphon resources and make sure the translation is consistent.
[[File:Reference_to_another_string_1.png|500px|center|Reference to "Create Account" in a string.]]
 
[[File:Reference_to_another_string_2.png|500px|center|Original "Create Account" string.]]
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''4. Be aware of placeholders, HTML and Unicode character entities, and mark up language.'''<br>
:'''''Placeholders and variables'''''<br>
::Many Psiphon strings contain '''placeholders''' which may replace [https://www.quackit.com/html/tags/ HTML] or [https://www.quackit.com/xml/tutorial/about_xml.cfm XML] tags or variables. '''It is important to keep these placeholders in the translation'''. You can move the placeholders depending on where they grammatically make the most sense in your language.
[[File:variable.png|500px|center|Variables in Transifex]]
 
::Review the [https://docs.transifex.com/translation/html-files#in-the-new-editor Transifex documentation] to learn how to manage placeholders in the translation editor.
 
::Sometimes a variable will not be recognized by Transifex and will be editable in the web editor. If you see an element within curly brackets, double check the ''Developer Notes'' to see if this is a variable that should not be translated. If you are still unsure, create an "Issue" for the string so that a project maintainer can clarify.
 
[[File:Curly bracket variable.png|500px|center|Curly bracket variables in Transifex]]
 
:'''''HTML and Unicode character entities & mark down language'''''<br>
::Sometimes an HTML character entity will not be recognized and replaced by Transifex. In these cases, you can either copy the exact character entity or you can replace it with what it corresponds to.
::'''Examples:''' ''&nbsp;'' is equivalent to a non-breaking space; ''&lt;'' is equivalent to <; ''&gt;'' is equivalent to >.
 
[[File:HTML character entity 2.png|500px|center|HTML variable in Transifex]]
 
[[File:HTML character entity 1.png|500px|center|HTML variable in Transifex]]
 
:'''''New lines'''''<br>
::The little blue arrows in the source text are equivalent to a new line (''/n''). Make sure to input new lines where indicated in the source text. Do so by simply selecting the ''Enter'' or ''Return'' key on your keyboard.
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''5. Keep an eye out for the "notranslate" tag'''
:Some strings will be assigned the "notranslate" tag and you will find a special message at the bottom of the translation input field. These strings should be copied exactly using the copy icon in the web editor. If you do not copy these strings exactly, Transifex will give you an error warning.
 
::''The translation in the example below is '''incorrect''' because this string should be an exact copy of the English source text.''
 
[[File:Notranslate.png|500px|center|Notranslate tag in Transifex]]
 
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''6. Communicate!'''<br>
:'''''Leave '''[https://docs.transifex.com/translation/tools-in-the-editor#comments Comments]''' for other translators'''''
::Localization in the Localization Lab community is a group effort! If you are simply fixing a typo or grammatical error, feel free to make the changes necessary without leaving a comment. If you are changing key terminology or significantly changing the structure of a translation, leave a comment for the previous translator to briefly explain the change. Be sure the ''mention'' them by including @ followed by their username in your comment.
::Leaving comments ensures that other contributors understand why you have made changes, can learn from them, and can make sure to apply the changes to future translations.
:'''''Leave '''[https://docs.transifex.com/translation/tools-in-the-editor#issues Issues]''' for project maintainers'''''
::If you don't understand what a string means, need more context or there is a typo or fundamental issue with the source text, let the project maintainer know! You can do this by creating an ''Issue''. Developers and project maintainers are notified of issues so that they can be addressed efficiently.
|}


=Contact=
=Contact=
Contact [mailto:erinm@localizationlab.org erinm] if you are interested in contributing to Psiphon as a volunteer translator or reviewer or have feedback about the project.

Latest revision as of 20:30, 30 September 2021

Psiphon Logo
Psiphon Logo

Psiphon is an open-source Internet censorship circumvention tool that allows users to access blocked content and websites on iOS, Android and Windows devices. Psiphon uses a combination of secure communication and obfuscation technologies (VPN, SSH, and HTTP Proxy) to ensure you always have access to the open Internet.

Website: psiphon.ca

Download Psiphon:
Psiphon is available on Android, iOS, and Windows.

To ensure you download a verified version of Psiphon and not an unofficial or malicious copy, download from the Psiphon Website.

Psiphon Fact Sheet
Contact us to localize this image.
Psiphon Fact Sheet - Swahili

Translate Psiphon

Getting Started

1. Create a Transifex Account:

Haven't created a Transifex account yet? Create one here.

2. Join the Psiphon Translation Team:

3. Download Psiphon:

Download Psiphon for the platforms you are translating! This is an important step that will allow you to get comfortable with the tool and view the original English strings and translations in context. Psiphon is available to download on Android, iOS and Windows.

4. Review the #Translation Guidelines:

Make sure you are familiar with the Translation Guidelines before you begin translating. They contain important information like whether or not to translate or transliterate the Project name.

5. Start Translating from the #Translation Priorities & Resources:

The list of resources and translation priorities will help you decide which content to work on first in the Psiphon project. Some resources are much more important to work on than others because they affect a larger number of Psiphon users. Dedicate your time on the resources that will make the most impact for users first.

Translation Priorities & Resources

Where should you start translating? Below is a list of the highest priority resources for Psiphon and which apps they correspond with. You should begin translating the resources marked Urgent, then move to High Priority resources, finishing the rest of the resources last.

Psiphon Website Homepage (Psiphon 3_live)

"Psiphon 3_live" is the Psiphon website. For many, this page may be their first introduction to the Psiphon applications and it is important that it be available in all of the languages Psiphon tools are available in.

Resource Priority
www.psiphon.ca (Psiphon Home Page) Urgent

Psiphon 3

The Psiphon 3 project contains all of the resources associated with the various Psiphon 3 applications on Android, iOS and Windows. Some resources are higher priority than others based on user habits.

Psiphon VPN for Android

The Android application resources are the highest priority in this project because in most regions, Android devices are more common than iOS devices and mobile devices are more popular than computers.

Resource Priority
Zirco aka Android App browser strings Urgent
Android App strings Urgent
Android Library strings Urgent
Store Assets (Google Play Store Description) High Priority

Psiphon VPN for iOS

Resource Priority
iOS Common Library: Root.strings Urgent
iOS VPN App: Localizable.strings Urgent
iOS Common Library: Localizable.strings Urgent
iOS VPN App: Store Assets (Apple AppStore Description) High Priority

Email Template & Feedback Strings

Resource Priority
Email Template Strings High Priority
Feedback Auto-responses High Priority
Feedback Template Strings High Priority

Website Strings

The website strings correspond to the full Psiphon website (FAQ, User Guide etc.) as opposed to the home page which is translated in the Psiphon 3_live Project.

Resource Priority
Website strings High Priority

Please translate the Download Page strings first. You can find them by typing "tags:Download-Page" into the filter in the Transifex web editor. The relevant strings will appear in the left-hand panel of the editor.

Psiphon VPN for Windows

Resource Priority
Windows Client strings Low Priority

Psiphon Browser for iOS

The Psiphon Browser for iOS is one of the lowest priority applications. The majority of users interested in Psiphon will opt to use the iOS VPN application instead of the browser.

Resource Priority
iOS Browser App: IASKLocalizable.strings Low Priority
iOS Browser App: InfoPlist.strings Low Priority
iOS Browser App: Localizable.strings Low Priority
iOS Browser App: OnePasswordExtension.strings Low Priority
iOS Browser App: Root.strings Low Priority
iOS Browser App: Store Assets Low Priority

InView App

InView is a secure and private video conferencing platform powered by the Open Source project Jitsi. InView is developed and operated by Psiphon, with the aim of providing high speed, and dependable VOIP access to every global region.

Resource Priority
InView App strings High Priority

MalAware Feature for Andriod

MalAware is a new feature in Psiphon Android that allows users to enable in-app notifications if traffic from a device running Psiphon attempts to communicate with destinations associated with known or suspected malware activity. Here is an introduction to the feature: MalAware

Resource Priority
MalAware Android strings High Priority


Psiphon Outreach Material

The "Tell a Friend" campaign and "Psiphon Fact Sheet" are outreach materials used to help bring new users to Psiphon. When you finish the "Psiphon Fact Sheet" be sure to let Localization Lab know so that a fact sheet can be produced for you to share.

Resource Priority
Tell a Friend Campaign Low Priority
Psiphon Fact Sheet Low Priority
Psiphon Telegram Bot Low Priority

Psiphon 2

Psiphon 2 is currently not a priority for the Psiphon Project because it is only used by a select number of users. However, if you would like to see Psiphon 2 in your language, please contact us to let us know and we can help you coordinate the translation and review.

Resource Priority
psiphon-2.po Low Priority

Psiphon Pro

Psiphon Pro is the commercial version of Psiphon 3. Proceeds from Psiphon Pro ensure that the free version of Psiphon remains available for users around the globe.

Resource Priority
Psiphon Pro Android Strings High Priority
Google Play Store Listing Description Low Priority

Localization Resources

Download the Windows, Android and iOS app
Psiphon FAQ
Psiphon AMA (Ask Me Anything) with Localization Lab Highlights (April 2019)

Translation Guidelines

1. Read the Developer Notes and Translation Instructions in Transifex.

The Developer Notes and Instructions are located in the Web Editor in between the source text and the translation text field. Make sure to read and follow any available instructions for the string you are translating.
Example of Developer Notes.
Example of Developer Notes.

2. Do not translate or transliterate "Psiphon" or other application or project names.

Do not translate or transliterate "Psiphon" or other project, company or application names that do not have an official or widely adopted regional variation.
Some projects have widely used and accepted translations or transliterations of their names. If this is the case in your language, feel free to use the localized version.
Example: تويتر Transliteration of Twitter in Arabic

3. Focus on consistency.

Transifex has several features to help you manage consistency across translations:
  • The Concordance Search allows you to search for words and phrases across multiple resources within the same project and across different projects within the same organization. You can use it to see how something is translated in different strings and contexts.
  • Web Editor Filters allow you to filter and search strings across one or multiple resources in a project. Among many options, you can filter by word or phrase in the source text or in the translation text.
  • The Localization Lab Glossary is very robust in English, however not all languages have translations for each term. Use the Glossary tab to double check translation of a term. If the term is not there, select View Glossary to the translation to the glossary.
Key Psiphon terms will have the label "[Psiphon]" in the Comments field for the term.
  • If a string that you are translating references what appears to be a tab, button, header etc from the software or another project, check to make sure your translation is consistent with the original translation.
Example: "Create Account" appears in a string in Psiphon. Use the filters in the Web Editor to see where else "Create Account" appears in the Psiphon resources and make sure the translation is consistent.
Reference to "Create Account" in a string.
Reference to "Create Account" in a string.
Original "Create Account" string.
Original "Create Account" string.

4. Be aware of placeholders, HTML and Unicode character entities, and mark up language.

Placeholders and variables
Many Psiphon strings contain placeholders which may replace HTML or XML tags or variables. It is important to keep these placeholders in the translation. You can move the placeholders depending on where they grammatically make the most sense in your language.
Variables in Transifex
Variables in Transifex
Review the Transifex documentation to learn how to manage placeholders in the translation editor.
Sometimes a variable will not be recognized by Transifex and will be editable in the web editor. If you see an element within curly brackets, double check the Developer Notes to see if this is a variable that should not be translated. If you are still unsure, create an "Issue" for the string so that a project maintainer can clarify.
Curly bracket variables in Transifex
Curly bracket variables in Transifex
HTML and Unicode character entities & mark down language
Sometimes an HTML character entity will not be recognized and replaced by Transifex. In these cases, you can either copy the exact character entity or you can replace it with what it corresponds to.
Examples:   is equivalent to a non-breaking space; < is equivalent to <; > is equivalent to >.
HTML variable in Transifex
HTML variable in Transifex
HTML variable in Transifex
HTML variable in Transifex
New lines
The little blue arrows in the source text are equivalent to a new line (/n). Make sure to input new lines where indicated in the source text. Do so by simply selecting the Enter or Return key on your keyboard.

5. Keep an eye out for the "notranslate" tag

Some strings will be assigned the "notranslate" tag and you will find a special message at the bottom of the translation input field. These strings should be copied exactly using the copy icon in the web editor. If you do not copy these strings exactly, Transifex will give you an error warning.
The translation in the example below is incorrect because this string should be an exact copy of the English source text.
Notranslate tag in Transifex
Notranslate tag in Transifex

6. Communicate!

Leave Comments for other translators
Localization in the Localization Lab community is a group effort! If you are simply fixing a typo or grammatical error, feel free to make the changes necessary without leaving a comment. If you are changing key terminology or significantly changing the structure of a translation, leave a comment for the previous translator to briefly explain the change. Be sure the mention them by including @ followed by their username in your comment.
Leaving comments ensures that other contributors understand why you have made changes, can learn from them, and can make sure to apply the changes to future translations.
Leave Issues for project maintainers
If you don't understand what a string means, need more context or there is a typo or fundamental issue with the source text, let the project maintainer know! You can do this by creating an Issue. Developers and project maintainers are notified of issues so that they can be addressed efficiently.

Contact

Contact erinm if you are interested in contributing to Psiphon as a volunteer translator or reviewer or have feedback about the project.