Skip to content

Commit

Permalink
Add Crowdin workflow (#37)
Browse files Browse the repository at this point in the history
Can be ran manually but also runs every push.

Co-authored-by: Actionsbot <[email protected]>
Co-authored-by: Crowdin Bot (Actions) <[email protected]>
  • Loading branch information
3 people authored Aug 29, 2024
1 parent 9b055a8 commit 40449f7
Show file tree
Hide file tree
Showing 23 changed files with 1,886 additions and 417 deletions.
4 changes: 0 additions & 4 deletions .github/config.yml

This file was deleted.

4 changes: 0 additions & 4 deletions .github/labels.yml

This file was deleted.

70 changes: 70 additions & 0 deletions .github/workflows/translations.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: Update Crowdin strings bi-directionally

run-name: Update from Crowdin

on:
schedule:
- cron: "30 */3 * * *"
push:
workflow_dispatch:

permissions:
contents: write
pull-requests: write

jobs:
crowdin-translations-progress:
name: Crowdin translations progress updater
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Generate Crowdin translations progress markdown
uses: benjaminjonard/[email protected]
with:
languages_per_row: 10
minimum_completion_percent: 80
file: README.md # Maybe change later?
env:
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}

- name: Push changes
uses: actions-go/push@v1
with:
author-name: Actionsbot
author-email: [email protected]
commit-message: "Update Crowdin translation progress badge"
remote: origin

update-from-crowdin:
name: Update strings from Crowdin
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4

- name: Grab strings from Crowdin
uses: crowdin/[email protected]
with: # This part can be a little fragile, be careful!
upload_sources: true
upload_translations: false
upload_language: en
download_sources: false
download_translations: true
skip_untranslated_strings: true
source: i18n/lang/en-US.json
translation: i18n/lang/%locale%.json
export_only_approved: true
localization_branch_name: i18n-crowdin-translations
create_pull_request: true
pull_request_title: (Crowdin Action) New translation strings
pull_request_body: New translated strings are now available!
pull_request_labels: crowdin
github_user_name: Crowdin Bot (Actions)
github_user_email: [email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,6 @@ logs
.env
.env.*
!.env.example

# Default Crowdin config file
crowdin.yml
5 changes: 4 additions & 1 deletion .prettierignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
package.json
pnpm-lock.yaml
.vscode/issue-query.github-issues
/i18n/**
README.md
crowdin.yml
/i18n/**
.github/labels.yml
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,10 @@ Review our contributing guidelines at [CONTRIBUTING.md](./CONTRIBUTING.md)
Original text is licensed under the CC-BY-SA 4.0 license. You may find it on our repository [here](TEXT_LICENSE).

Website code is licensed under the GPL v3 license. You may find it on our repository [here](LICENSE).

## Translation progress

Only useful to maintainers and translators.
<!-- CROWDIN-TRANSLATIONS-PROGRESS-ACTION-START -->

<!-- CROWDIN-TRANSLATIONS-PROGRESS-ACTION-END -->
163 changes: 163 additions & 0 deletions i18n/lang/ar-SA.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
{
"layout": {
"nav": {
"alternatives": ""
},
"footer": {
"disclaimer": "",
"open_source": "",
"about": "",
"credit_creator": "",
"credit_designed": "",
"interact": "",
"resources": "",
"contributing": "",
"experiments": ""
}
},
"landing": {
"hero": "",
"reason": "",
"buttons": {
"alternatives": ""
}
},
"experiments": {
"hero": "",
"subtitle": ""
},
"contributing": {
"hero": "",
"subhero": "",
"welcome": "",
"end": "",
"titles": {
"translating": "",
"coding": "",
"alternatives": ""
},
"subtitles": {
"translating": "",
"coding": "",
"alternatives": ""
},
"guidelines": {
"translating": [
"",
"",
"",
""
],
"coding": [
"",
"",
"",
""
],
"alternatives": [
"",
"",
"",
"",
""
]
}
},
"alternatives": {
"hero": "",
"reason": "",
"nudge_for_contributing": "",
"texts": {
"modpacks": {
"section_name": "",
"vital": [
"",
"",
""
]
},
"multiplayer": {
"section_name": "",
"world_host": [
"",
"",
"",
""
],
"e4mc": [
"",
"",
""
]
},
"cosmetics": {
"section_name": "",
"cosmetica": [
"",
"",
""
],
"ears": [
"",
""
],
"capes": [
"",
""
],
"customizable_player_models": [
"",
"",
"",
""
],
"figura": [
"",
"",
""
],
"skin_shuffle": [
"",
"",
""
],
"emotecraft": [
"",
""
]
},
"misc": {
"section_name": "",
"screencapper": [
"",
""
],
"screenshot_viewer": [
"",
""
],
"snapper": [
"",
""
],
"auth_me": [
"",
""
],
"in_game_account_switcher": [
"",
"",
""
],
"craftpresence": [
"",
""
],
"zume": [
"",
""
]
}
}
}
}
Loading

0 comments on commit 40449f7

Please sign in to comment.