Skip to content

Gagana

Filifili lau gagana

Liliu i le itulau lava lea e tasi i se isi gagana.

EnglishEnglishenAfrikaansAfrikaansafአማርኛAmharicamالعربيةArabicarঅসমীয়াAssameseasAzərbaycanAzerbaijaniazБашҡортBashkirbaБългарскиBulgarianbgभोजपुरीBhojpuribhoবাংলাBanglabnབོད་སྐད་Tibetanboबड़ोBodobrxBosanskiBosnianbsCatalàCatalancaČeštinaCzechcsCymraegWelshcyDanskDanishdaDeutschGermandeडोगरीDogridoiDolnoserbšćinaLower SorbiandsbދިވެހިބަސްDivehidvΕλληνικάGreekelEspañolSpanishesEestiEstonianetEuskaraBasqueeuفارسیPersianfaSuomiFinnishfiFilipinoFilipinofilVakavitiFijianfjFøroysktFaroesefoFrançaisFrenchfrFrançais (Canada)French (Canada)fr-CAGaeilgeIrishgaGalegoGalicianglकोंकणीKonkanigomગુજરાતીGujaratiguHausaHausahaעבריתHebrewheहिन्दीHindihiछत्तीसगढ़ीChhattisgarhihneHrvatskiCroatianhrHornjoserbsceUpper SorbianhsbHaitian CreoleHaitian CreolehtMagyarHungarianhuՀայերենArmenianhyIndonesiaIndonesianidÌgbòIgboigInuinnaqtunInuinnaqtuniktÍslenskaIcelandicisItalianoItalianitᐃᓄᒃᑎᑐᑦInuktitutiuInuktitut (Latin)Inuktitut (Latin)iu-Latn日本語JapanesejaქართულიGeorgiankaҚазақ ТіліKazakhkkខ្មែរKhmerkmKurmancîKurdish (Northern)kmrಕನ್ನಡKannadakn한국어KoreankoكٲشُرKashmiriksکوردیی ناوەندیKurdish (Central)kuКыргызчаKyrgyzkyLëtzebuergeschLuxembourgishlbLingálaLingalalnລາວLaoloLietuviųLithuanianltLugandaGandalugLatviešuLatvianlv中文 (文言文)Chinese (Literary)lzhमैथिलीMaithilimaiMalagasyMalagasymgTe Reo MāoriMāorimiМакедонскиMacedonianmkമലയാളംMalayalammlМонгол хэлMongolian (Cyrillic)mn-Cyrlᠮᠣᠩᠭᠣᠯ ᠬᠡᠯᠡMongolian (Traditional)mn-MongমৈতৈলোনManipurimniमराठीMarathimrMelayuMalaymsMaltiMaltesemtHmong DawHmong Dawmwwမြန်မာMyanmar (Burmese)myNorsk BokmålNorwegian BokmålnbनेपालीNepalineNederlandsDutchnlSesotho sa LeboaSesotho sa LeboansoChinyanjaChichewanyaଓଡ଼ିଆOdiaorHñähñuQuerétaro OtomiotqਪੰਜਾਬੀPunjabipaPolskiPolishplدریDariprsپښتوPashtopsPortuguês (Brasil)Portuguese (Brazil)ptPortuguês (Portugal)Portuguese (Portugal)pt-PTRomânăRomanianroРусскийRussianruIkirundiRundirunKinyarwandaKinyarwandarwسنڌيSindhisdසිංහලSinhalasiSlovenčinaSlovakskSlovenščinaSlovenianslGagana SāmoaSamoansmchiShonaShonasnSoomaaliSomalisoShqipAlbaniansqСрпски (ћирилица)Serbian (Cyrillic)sr-CyrlSrpski (latinica)Serbian (Latin)sr-LatnSesothoSesothostSvenskaSwedishsvKiswahiliSwahiliswதமிழ்TamiltaతెలుగుTeluguteไทยThaithትግርTigrinyatiTürkmen DiliTurkmentkLea fakatongaTongantoTürkçeTurkishtrТатарTatarttReo TahitiTahitiantyئۇيغۇرچەUyghurugУкраїнськаUkrainianukاردوUrduurUzbek (Latin)Uzbek (Latin)uzTiếng ViệtVietnameseviisiXhosaisiXhosaxhÈdè YorùbáYorubayoYucatec MayaYucatec Mayayua粵語Cantonese (Traditional)yue中文 (简体)Chinese Simplifiedzh-Hans中文 (繁體)Chinese Traditionalzh-HantisiZuluisiZuluzu

Fa'atulagaina

Amata

Fa'aopopo se faila fa'aliliuga, filifili lau kamupani fa'aliliuga - Azure, AWS, po'o Google - ma o le gaioiga e su'esu'e ai le repo mo punaoa punaoa ma fa'asalalau ai uso ua faaliliuina.

I luga o lenei itulau

    Step 1: Filifili se kamupani e tu'uina atu fa'aliliuga

    O le gaioiga e galue ma Azure AI Translator, Fa'aliliuga a le AWS, ma Google Cloud Translation i tua atu o le tasi tu'ufa'atasia API luga. Filifili se tasi e tu'uina atu i le tamo'e ma le provider sao — o le workflow e tutusa lava le amio tusa lava po'o le a le tagata e tu'uina atu; na'o fa'amaoniga e ese'ese. Va'ai Tagata e tuuina atu faaliliuga mo se fa'atusatusaga atoa.

    Step 2: Fa'aopopo fa'amaoniga ma se fa'agaioiga

    Teuina fa'amaoniga a lau kamupani e tu'uina atu e pei o mea lilo a le GitHub, ona fausia lea o .github/workflows/translate.yml. Filifili lau kamupani o lo'o i lalo mo lona fa'atulagaina fa'apitoa — o le vaega o totoe o le workflow e tutusa.

    Azure AI Translator

    Azure o le tu'uina atu o le fa'aletonu, o lea e mafai ai ona provider fa'ate'aina. Tu'uina atu se punaoa a le Azure AI Translator i le Azure Portal, ona teu lea o ona fa'amaoniga:

    Teuina nei mea e fai ma mea lilo

    • TRANSLATOR_KEY — O le ki o le saofaga mo le punaoa.
    • TRANSLATOR_ENDPOINT — O le URL o le i'uga fa'aitulagi.
    • TRANSLATOR_REGION — O le itulagi Azure o le punaoa.

    Fa'aopopo le fa'agaioiga

    .github/workflows/translate.yml
    name: translate
    on:
    push:
    branches: [main]
    paths:
    - "src/**/*.en.resx"
    - "src/**/*.en.json"
    permissions:
    contents: write
    pull-requests: write
    jobs:
    translate:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v5
    - id: translate
    uses: IEvangelist/resource-translator@v3
    with:
    provider: |
    azure:
    subscriptionKey: ${{ secrets.TRANSLATOR_KEY }}
    endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }}
    region: ${{ secrets.TRANSLATOR_REGION }}
    sourceLocale: en
    toLocales: '["fr","de","es"]'
    - if: steps.translate.outputs.has-new-translations == 'true'
    uses: peter-evans/create-pull-request@v7
    with:
    title: ${{ steps.translate.outputs.summary-title }}
    body: ${{ steps.translate.outputs.summary-details }}
    branch: machine-translation

    Step 3: Faia se faila punaoa punaoa

    O faila o punaoa e faaaoga ai le tauaofiaga Name.<sourceLocale>.<ext>. Mo se fa'ata'ita'iga, Greetings.en.resx avea ma Greetings.fr.resx, Greetings.de.resx, ma isi mea pe a mae'a se tamo'e.

    Step 4: Let smart change detection protect your bill

    changeDetection defaults to smart and stores a compact .github/resource-translator-state.json manifest in the repo. Commit that file so future runs can reuse stable translations, preserve manual target edits, and send only new, missing, changed, or settings-invalidated keys to the provider. If localized files already exist, run once with snapshotOnly: true to create the manifest without provider calls.

    Step 5: Siaki le galuega faatino

    O le taimi lava e mae'a ai le galuega, o le gaioiga e fa'aalia ai galuega faatino e tolu e mafai ona e uaea i totonu o se fa'amatalaga PR: summary-title, summary-details, ma has-new-translations. E tusia ai foi se aotelega o le Markdown i le itulau o galuega e ala i core.summary.

    Laasaga e sosoo ai