Skip to main content

Internationalization

The modal ships with English (en_US) translations by default. You can customize any text string or add support for other languages.

The i18n features require @lukso/core, a separate LUKSO utilities package. Install it alongside @lukso/up-modal:

npm install @lukso/core

Changing the Locale

The modal uses the global IntlService from @lukso/core. If your app already sets up an intl service, the modal will use it automatically. Otherwise it creates a local English instance.

import { createIntlService, setIntlService } from '@lukso/core/services/intl';

const intl = createIntlService({
locale: 'de-DE',
messages: {
connect_modal_title: 'Anmelden',
connect_modal_description: 'Mit Universal Profile anmelden.',
// ... other keys
},
});

// Set it globally — the modal picks it up automatically
setIntlService(intl);

Overriding Individual Strings

If you only need to change a few labels, set the global service with your full message map. Any keys you omit will fall back to the built-in English translations.

import enMessages from '@lukso/core/translations/en_US.json';

const intl = createIntlService({
locale: 'en-US',
messages: {
...enMessages,
connect_modal_title: 'Sign in to MyApp',
connect_modal_description: 'Connect your Universal Profile to continue',
},
});

setIntlService(intl);

Switching Locale at Runtime

import { getIntlService } from '@lukso/core/services/intl';
import germanMessages from '@lukso/core/translations/de_DE.json';

const intl = getIntlService();
intl?.setLocale('de-DE', germanMessages);
// The modal re-renders automatically

Translation Keys

KeyDefault (English)
connect_modal_titleLet's log you in
connect_modal_descriptionLog in with your Universal Profile
connect_modal_connectors_passkey_walletPasskey Wallet
connect_modal_connectors_up_mobileMobile Application
connect_modal_connectors_up_browser_extensionBrowser Extension
connect_modal_orOr
connect_modal_or_infoLog in with a different wallet
connect_modal_other_connectorsConnect Wallet
connect_modal_eoa_titleConnect your Wallet
connect_modal_installedINSTALLED
connect_modal_failed_to_loadFailed to load...
connect_modal_try_againTry again
connect_modal_qr_code_titleScan to log in
connect_modal_qr_code_descriptionScan the below QR code with the Universal Profile mobile app to log in
connect_modal_closeClose modal
connect_modal_go_backGo back
sign_up_modal_titleCreate Universal Profile!
sign_up_modal_descriptionChoose the device on which you want to create a profile. You can use either to interact with supported apps
sign_up_modal_use_mobileInstall the Mobile Application
sign_up_modal_install_extensionInstall the Browser Extension