Skip to content

Commit

Permalink
docs: Misc Updates (#97)
Browse files Browse the repository at this point in the history
  • Loading branch information
rohalskyy authored Sep 4, 2024
1 parent 9d55055 commit ebdba56
Show file tree
Hide file tree
Showing 20 changed files with 159 additions and 28 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified src/assets/screenshots/developer/crowdin_apps_store_install.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Learn about the additional support services Crowdin offers
slug: additional-support-services
---

import { Aside } from '@astrojs/starlight/components';
import { Aside, LinkButton } from '@astrojs/starlight/components';

Along with services like Crowdin Customer Forum, Crowdin Documentation, Email Support, and Chat Support, Crowdin customers can also benefit from additional support services they can purchase in addition to the primary subscription plan. Below you can see the available additional support services.

Expand Down Expand Up @@ -33,7 +33,9 @@ Dedicated account management includes all benefits from Premium Support plus the

Available for the following subscription plans: Pro, Team, Team+, and Business.

Price: $500/month
<LinkButton href="https://crowdin.com/contact-sales" icon="external" target="_blank">
Contact Sales
</LinkButton>

## Custom Development

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ slug: machine-translation
---

import { Steps, Aside, LinkCard } from '@astrojs/starlight/components';
import QuestionAnswer from '~/components/QuestionAnswer.astro';
import { Icon } from 'astro-icon/components';
import { Image } from 'astro:assets';
import machineTranslationSuggestions from '!/crowdin/localization-resources/mt_suggestions.png';
Expand Down Expand Up @@ -82,6 +83,48 @@ To use your [Custom Terminology](https://docs.aws.amazon.com/translate/latest/dg
2. Select your Custom Terminology from the respective drop-down menu.
</Steps>

<QuestionAnswer title="What are the minimal scopes for an IAM user required to set up Amazon Translate to be used in Crowdin?">
The minimal IAM scopes required depend on whether you're using terminologies or not:

- **Without terminologies:**

```json
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "translate:TranslateText",
"Resource": "*"
}
]
}
```

- **With terminologies:**

```json
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"translate:TranslateText",
"translate:GetTerminology",
"translate:ListTerminologies"
],
"Resource": "*"
}
]
}
```

Alternatively, you can use the [AWS managed policy: TranslateReadOnly](https://docs.aws.amazon.com/translate/latest/dg/security-iam-awsmanpol.html#security-iam-awsmanpol-TranslateReadOnly), which provides the necessary read-only access to Amazon Translate.

<Aside>The `"Resource": "*"` allows access to all resources. For stricter security, consider limiting this to specific AWS regions or resources if applicable.</Aside>
</QuestionAnswer>

### Google Translate

To use Google Translate, you shall have a Google Cloud account with an active billing profile. Cloud Translation is priced monthly based on usage. [Learn more](https://cloud.google.com/translate/pricing).
Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/crowdin/online-editor/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ There also might be the following icons besides strings:
- <Icon name="mdi:comment-outline" class="inline-icon" /> - the string has comments from contributors
- <Icon name="mdi:comment-alert-outline" class="inline-icon" /> - the string has an unresolved issue

When translating the content of an HTML, XML, TXT, DOCX, XLSX, HAML, Web XML, Markdown, MDX, DITA, FLSNP, Wiki, ADOC, Coffee, FTL, JS, TS, and FTLH file formats, a list of strings is displayed as a file preview (i.e., WYSIWYG). The string status is indicated by the following colors:
When translating the content of an HTML, XML, TXT, DOCX, XLSX, HAML, Web XML, Markdown, MDX, DITA, Wiki, ADOC, Coffee, FTL, JS, TS, and FTLH file formats, a list of strings is displayed as a file preview (i.e., WYSIWYG). The string status is indicated by the following colors:

- Red - untranslated
- Blue - translated
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,10 @@ You can save time by translating all duplicates with the same translation and hi

Crowdin's localization process is based on translating source strings to the defined target languages. Source strings are uploaded to the system in localization files. Each unique source string first uploaded or added (for CSV and other formats supporting [string editing](/string-management/#string-editing)) in Crowdin is considered a master string. All other strings that are identical to the master string but were uploaded or created later are considered duplicate strings.

<Aside>
In [string-based](/creating-project/#string-based-project) projects, duplicate strings are managed using the **Show within a version branch (regular detection)** option, which is enabled by default and cannot be changed.
</Aside>

#### Duplicate Strings Management

If your project contains duplicated strings, you can choose how the system should treat them using the following options:
Expand Down Expand Up @@ -104,7 +108,7 @@ When this option is selected, the system spots the duplicate strings in all file

## Word count

You can set the preferred way Crowdin should count words in your project. Specifically, it applies to whether HTML tags should be counted as regular words or not. By default, Crowdin considers HTML tags as regular words for most of the supported formats, excluding the following ones: HTML, Front Matter HTML, HAML, MD, Front Matter MD, XML, WEBXML, IDML, XLIFF, XLIFF 2.0, ADOC, DOCX, MIF, DITA.
You can set the preferred way Crowdin should count words in your project. Specifically, it applies to whether HTML tags should be counted as regular words or not. By default, Crowdin considers HTML tags as regular words for most of the supported formats, excluding the following ones: HTML, Front Matter HTML, HAML, MD, Front Matter MD, XML, WEBXML, IDML, XLIFF, XLIFF 2.0, ADOC, DOCX, DITA.

* **Auto (default)** &ndash; HTML tags will be counted as regular words or skipped depending on the source file format.
* **Count tags** &ndash; all HTML tags will be counted as regular words.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,15 +103,15 @@ For string-based projects, you can upload XLIFF translations using the [Online E

You can easily upload translations for source files with a key-value structure.

This includes the following file formats: Android XML, macOS/iOS Strings, Stringsdict, JSON, Chrome JSON, GO JSON, i18next JSON, FBT JSON, XLIFF, XLIFF 2.0, Java Properties, Play Properties, Java Properties XML, RESX, RESW, RES JSON, YAML, INI, Joomla INI, JS, FJS, PO, TS, QT TS, Blackberry, Symbian, Flex, BADA, TOML, Coffee, DKLANG, XAML, SRT, VTT, VTT2, SBV, SVG, DTD, CSV, RC, WXL, Maxthon, Haml, XLSX, PLIST, PHP, ARB, VDF.
This includes the following file formats: Android XML, macOS/iOS Strings, Stringsdict, JSON, Chrome JSON, GO JSON, i18next JSON, FBT JSON, XLIFF, XLIFF 2.0, Java Properties, Play Properties, Java Properties XML, RESX, RESW, RES JSON, YAML, INI, Joomla INI, JS, FJS, PO, TS, QT TS, TOML, Coffee, XAML, SRT, VTT, VTT2, SBV, SVG, DTD, CSV, RC, WXL, Haml, XLSX, PLIST, PHP, ARB, VDF.

The system maps uploaded translations according to the string keys.

## Text and HTML-based Formats

For files that do not have a defined structure, translation upload is handled by an experimental machine learning technology.

This includes the following file formats: HTML, Front Matter HTML, Markdown, Front Matter Markdown, TXT, Generic XML, Web XML, DOCX, HAML, IDML, DITA, Wiki, FLSNP, MIF, and ADOC.
This includes the following file formats: HTML, Front Matter HTML, Markdown, Front Matter Markdown, TXT, Generic XML, Web XML, DOCX, HAML, IDML, DITA, Wiki, and ADOC.

To achieve the best results, we recommend uploading translation files with the same or as close as possible file structure as in source files.

Expand Down
6 changes: 5 additions & 1 deletion src/content/docs/crowdin/team-management/inviting-people.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ sidebar:
---

import { Image } from 'astro:assets';
import { Steps, LinkCard, CardGrid } from '@astrojs/starlight/components';
import { Steps, Aside, LinkCard, CardGrid } from '@astrojs/starlight/components';
import inviteDialogEmail from '!/crowdin/team-management/invite_dialog_email.png';
import selectRoleDialog from '!/crowdin/team-management/select_role_dialog.png';
import inviteDialog from '!/crowdin/team-management/invite_dialog.png';
Expand All @@ -28,6 +28,10 @@ There are two main methods of involving people in the project:

To invite members to your Crowdin project, click **Invite**. In the appeared dialog, select a role and target languages.

<Aside type="caution" title="Limitations">
The daily limit for inviting users is 1,000 per account for the Proofreader and Translator roles, and 50 per account for the Manager role.
</Aside>

## Email or Username Invitation

To invite members to your project via email or Crowdin username, follow these steps:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,21 @@ Some of the transition agencies are integrated with Crowdin via API. When you de

Professional translation is a paid service where the approximate cost for your project is calculated or negotiated during the purchase.

## Configure Crowdin AI

Enhance your translation process with Crowdin AI, which leverages advanced AI-powered translations from leading providers such as OpenAI, Google Gemini, Microsoft Azure OpenAI, and more.

Crowdin AI offers two main prompt types for use in different scenarios:

- **Pre-translate**: Generate initial AI translations that can be later reviewed by human proofreaders.
- **AI in Editor**: Provide AI-powered suggestions directly within the Editor to help translators with translation and proofreading tasks.

By considering additional context at various levels, Crowdin AI ensures contextually accurate translations, improving overall efficiency and quality.

<ReadMore>
Read more about [Crowdin AI](/crowdin-ai/).
</ReadMore>

## Configure Machine Translation Engines

Crowdin integrates with the most popular Machine Translation (MT) engines such as Microsoft Translator, Google Translate, Google AutoML Translation, DeepL Translator, Watson (IBM) Language Translator, and Amazon Translate.
Expand Down
10 changes: 5 additions & 5 deletions src/content/docs/developer/crowdin-apps/installation.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ You can install Crowdin Apps either from the [Crowdin Store](https://store.crowd
To install the app that is already published on the Crowdin Store, follow these steps:

<Steps>
1. On your profile home page, open **Store**.
1. Open your profile home page and select **Store** on the left sidebar.
2. Click <Icon name="mdi:download" class="inline-icon" />**Install** on the needed app. <Image src={storeInstall} alt="Store" />
3. In the appeared dialog, configure preferred permissions and click **Install**.
</Steps>
Expand Down Expand Up @@ -68,10 +68,10 @@ Available options for Crowdin:
* Only me (i.e., project owner)
* Me, project managers and developers
* All project members
* Selected users
* Custom Access (selected users)
* Guests (unauthenticated users)

<Image src={installPermissions} alt="Permissions" class="width-md m-auto" />
<Image src={installPermissions} alt="Permissions" class="width-md m-auto crowdin-modal" />

<Aside>
Project owner will always have access to all modules of the app.
Expand All @@ -81,8 +81,8 @@ Available options for Crowdin Enterprise:

* Only organization admins
* Organization admins, project managers and developers
* All users in the organization projects
* Selected users
* All project members
* Custom Access (selected users)
* Guests (unauthenticated users)

<Image src={installPermissionsEnterprise} alt="Permissions" class="width-md m-auto" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -559,7 +559,7 @@ Example of the configuration with additional parameters:
<td>bool</td>
<td>
<div>
Defines whether to split long texts into smaller text segments. Only for TXT, DOCX, DITA, IDML, MIF, MEDIAWIKI, HTML, Front Matter HTML, Markdown, Front Matter Markdown, XML, XLIFF, XLIFF 2.0<br/>
Defines whether to split long texts into smaller text segments. Only for TXT, DOCX, DITA, IDML, MEDIAWIKI, HTML, Front Matter HTML, Markdown, Front Matter Markdown, XML, XLIFF, XLIFF 2.0<br/>
Acceptable values are 0 or 1. Default is 1.<br/><br/>
<b>Note:</b> When Content segmentation is enabled, the translation upload is handled by an experimental machine learning technology.
</div>
Expand Down
6 changes: 4 additions & 2 deletions src/content/docs/docs/hall-of-fame.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,11 @@ import { Aside } from '@astrojs/starlight/components';

The individuals and teams listed below were the first to inform us about vulnerabilities that could impact Crowdin or anyone using Crowdin.

Each of them have helped us make Crowdin safer.
Each of them has helped us make Crowdin safer.

---
<Aside type="tip" title="Join our bug bounty program on HackerOne">
Crowdin is transitioning to managing its bug bounty program through HackerOne. The program is currently private. To request an invitation, contact [[email protected]](mailto:[email protected]) and include your HackerOne handle.
</Aside>

<div class="grid grid-cols-1 sm:grid-cols-3 gap-4">
<div>
Expand Down
26 changes: 18 additions & 8 deletions src/content/docs/docs/vulnerability-policy.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,33 @@ slug: vulnerability-policy
template: splash
---

Privately share details of the suspected vulnerability with Crowdin by sending an email to [[email protected]](https://crowdin.com/contacts). Provide full details of the suspected vulnerability, so the Crowdin security team may validate and reproduce the issue.
import { Aside, LinkButton } from '@astrojs/starlight/components';

Privately share details of the suspected vulnerability with Crowdin by sending an email to [[email protected]](mailto:[email protected]). Provide full details of the suspected vulnerability, so the Crowdin security team may validate and reproduce the issue.

<Aside type="tip" title="Join our bug bounty program on HackerOne">
Crowdin is transitioning to managing its bug bounty program through HackerOne. The program is currently private. To request an invitation, contact [[email protected]](mailto:[email protected]) and include your HackerOne handle.
</Aside>

## Hall of Fame

On behalf of our thousands of users, we thank the named researchers for helping make Crowdin safer. [View hall of fame](/hall-of-fame/).
On behalf of our thousands of users, we thank the named researchers for helping make Crowdin safer.

<LinkButton href="/hall-of-fame/">
View hall of fame
</LinkButton>

## What are We Looking for {#looking_for}

When submitting an issue, please provide a technical description that allows us to assess exploitability and impact of the issue.

- Provide steps to reproduce the issue, including any URLs or code involved.
- If you are reporting a cross-site scripting (XSS), your exploit should at least pop up an alert in the browser.
- If you are reporting a cross-site scripting (XSS), your exploit should at least pop up an alert in the browser.
It is much better if the XSS exploit shows user's authentication cookie.
- For a cross-site request forgery (CSRF), use a proper CSRF case when a third party causes the logged in victim to perform an action.
- For a SQL injection, we want to see the exploit extracting database data, not just producing an error message.
- HTTP request / response captures or simply packet captures are also very useful to us.
- Please refrain from sending us links to non-Crowdin web sites, or issues in PDF / DOC / EXE files.
- Please refrain from sending us links to non-Crowdin web sites, or issues in PDF / DOC / EXE files.
Image files are OK. Make sure the bug is exploitable by someone other than the user (e.g., "self-XSS").

## What We are Not Looking for
Expand Down Expand Up @@ -74,22 +84,22 @@ We ask that you do not share or publicize an unresolved vulnerability with/to th

Please note that by submitting us a vulnerability report, you grant us a perpetual, worldwide, royalty-free, irrevocable and non-exclusive license and right, to use, modify, and incorporate your submission or any parts thereof into our products, services, or test systems without any further obligations or notices to you.

We would be thankful for any further relevant technical information that you may have, especially if reproduction is tricky. If we cannot reproduce it, we cannot reward you.
We would be thankful for any further relevant technical information that you may have, especially if reproduction is tricky. If we cannot reproduce it, we cannot reward you.
However, there is no need to describe the security impact of your finding - we understand security risks and we can figure that out. We only need technical details.

## Rewards

We maintain flexibility with our reward system; rewards are based on severity, impact, and report quality.
We maintain flexibility with our reward system; rewards are based on severity, impact, and report quality.
For example, we can provide you with a coupon to get Crowdin Swag. Depending on what you discover, you may go onto the Crowdin [Hall of Fame](/hall-of-fame/).
If you would rather stay behind an alias (handle) or anonymous, we will of course respect that.

We do have specific things we are (and are not) looking for - so check [What are we looking for](#looking_for).

If you report several issues that are duplicates in different parts of the service (e.g., the same code running on different nodes or platforms), or part of a larger issue, these may be combined into one and only one reward may be possible.

If someone else has already reported the finding earlier, we will let you know after the issue has been fixed. If several researchers report the same issue, we only reward the sender of the first report that provides us with enough technical details to reproduce the finding.
If someone else has already reported the finding earlier, we will let you know after the issue has been fixed. If several researchers report the same issue, we only reward the sender of the first report that provides us with enough technical details to reproduce the finding.
We know that this would give us a loophole to claim that everything's been already previously found, but trust us, we want to be fair.

A reward will not be provided if the finding becomes known by anyone else than you or us, in any way, before it is fixed.

You can always keep tracking of how your issue is progressing. Contact Crowdin Security team for this: [[email protected]](https://crowdin.com/contacts)
You can always keep tracking of how your issue is progressing. [Contact Crowdin Security](https://crowdin.com/contacts) team for this.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ description: Learn about the additional support services Crowdin offers
slug: enterprise/additional-support-services
---

import { LinkButton } from '@astrojs/starlight/components';

Along with services like Crowdin Customer Forum, Crowdin Documentation, Email Support, and Chat Support, Crowdin customers can also benefit from additional support services they can purchase in addition to the primary subscription plan. Below you can see the available additional support services.

## On-demand Tutorials and Onboarding Sessions
Expand All @@ -29,7 +31,9 @@ Dedicated account management includes all benefits from Premium Support plus the

Available for the following subscription plans: Pro, Team, Team+, and Business.

Price: $500/month
<LinkButton href="https://crowdin.com/contact-sales" icon="external" target="_blank">
Contact Sales
</LinkButton>

## Custom Development

Expand Down
Loading

0 comments on commit ebdba56

Please sign in to comment.