Skip to content

languagepack

Manage language packs for internationalization (i18n) in your projects.

Synopsis

bash
pfy languagepack <subcommand> [flags]

Aliases: l, lang, lp

Description

Language packs provide internationalization support for your applications. Each language pack contains translations for a specific language/locale combination.

Subcommands

  • list - List all language packs in a project
  • init - Initialize a new language pack
  • remove - Remove a language pack

languagepack list

List all language packs available in a project.

Usage

bash
pfy languagepack list --project-id <project-id> [flags]

Flags

FlagRequiredDescription
--project-idYesProject ID

Example

bash
pfy languagepack list --project-id 01234567-89ab-cdef-0123-456789abcdef

Output:

Language Packs:
  - English (en)
  - Spanish (es)
  - German (de)
  - French (fr)

Verbose output:

bash
pfy --verbose languagepack list --project-id 01234567-89ab-cdef-0123-456789abcdef
Connecting to ProductifyFW manager...
Fetching language packs for project ID '01234567-89ab-cdef-0123-456789abcdef'...
Found 4 language pack(s)
Language Packs:
  - English (en)
    ID: dddddddd-eeee-ffff-0000-111111111111
  - Spanish (es)
    ID: eeeeeeee-ffff-0000-1111-222222222222
  - German (de)
    ID: ffffffff-0000-1111-2222-333333333333
  - French (fr)
    ID: 00000000-1111-2222-3333-444444444444

languagepack init

Initialize a new language pack in the project.

Usage

bash
pfy languagepack init \
  --lang-identifier <identifier> \
  --name <name> \
  [flags]

Flags

FlagAliasesRequiredDescription
--lang-identifier--idYesLanguage identifier (e.g., en, es-MX, de-DE)
--nameYesDisplay name for the language pack

Examples

Basic language pack:

bash
pfy languagepack init \
  --lang-identifier en \
  --name "English"

Regional variant:

bash
pfy languagepack init \
  --lang-identifier es-MX \
  --name "Spanish (Mexico)"

Using short alias:

bash
pfy lp init --id fr --name "French"

Output:

Creating language pack: French (fr)
Language pack created successfully!

languagepack remove

Remove an existing language pack from the project.

Usage

bash
pfy languagepack remove --name <name> [flags]

Flags

FlagRequiredDescription
--nameYesName of the language pack to remove

Example

bash
pfy languagepack remove --name "Spanish"

Output:

Removing language pack...
Language pack 'fr' removed successfully!

Common Language Identifiers

IdentifierLanguage
enEnglish
en-USEnglish (United States)
en-GBEnglish (United Kingdom)
esSpanish
es-MXSpanish (Mexico)
es-ESSpanish (Spain)
frFrench
fr-CAFrench (Canada)
deGerman
de-ATGerman (Austria)
itItalian
ptPortuguese
pt-BRPortuguese (Brazil)
zhChinese
zh-CNChinese (Simplified)
zh-TWChinese (Traditional)
jaJapanese
koKorean
arArabic
ruRussian
plPolish
nlDutch
svSwedish
daDanish
fiFinnish
noNorwegian
trTurkish
heHebrew
hiHindi

Workflow Example

Setting Up Multi-language Support

bash
# Get project ID
PROJECT_ID=$(pfy project get --slug my-saas | grep "ID:" | awk '{print $2}')

# Initialize base language (English)
pfy languagepack init --id en --name "English"

# Add additional languages
pfy languagepack init --id es --name "Spanish"
pfy languagepack init --id de --name "German"
pfy languagepack init --id fr --name "French"

# List all language packs
pfy languagepack list --project-id $PROJECT_ID

GraphQL Operations

GetLanguagePacks

graphql
query GetLanguagePacks(
  $project: ID!
  $filters: [FilterInput!]
  $order: [OrderInput!]
  $pagination: PaginationInput
) {
  languagePacks(
    project: $project
    filters: $filters
    order: $order
    pagination: $pagination
  ) {
    id
    identifier
    name
  }
}

CreateLanguagePack (Planned)

graphql
mutation CreateLanguagePack($projectId: ID!, $input: CreateLanguagePackInput!) {
  createLanguagePack(projectId: $projectId, input: $input) {
    id
    identifier
    name
  }
}

Input Type:

graphql
input CreateLanguagePackInput {
  identifier: String!
  name: String!
}

DeleteLanguagePack (Planned)

graphql
mutation DeleteLanguagePack($id: ID!) {
  deleteLanguagePack(id: $id)
}

See Also