type: docs order: 6 title: "Locale Packs" permalink: docs/locales/ category: 'Docs'
Uppy speaks multiple languages, English being the default. You can use a locale pack to translate Uppy into your language of choice.
This is the recommded way. Install @uppy/locales
package from npm, then choose the locale you’d like to use: @uppy/locales/lib/LANGUAGE_CODE
.
npm i @uppy/core @uppy/locales
const Uppy = require('@uppy/core')
const German = require('@uppy/locales/lib/de_DE') // see below for the full list of locales
const uppy = Uppy({
debug: true,
locale: German
})
Add a <script>
tag with Uppy bundle and the locale pack you’d like to use. You can copy/paste the link from the CDN column in the locales table. The locale will attach itself to the Uppy.locales
object.
<script src="https://transloadit.edgly.net/releases/uppy/v1.0.0/uppy.min.js"></script>
<script src="https://transloadit.edgly.net/releases/uppy/locales/v1.0.0/de_DE.min.js"></script>
<script>
var uppy = Uppy.Core({
debug: true,
locale: Uppy.locales.de_DE
})
</script>
Many plugins come with their own locale strings, and the packs we provide consist of most of those strings. You can, however, override a locale string for a specific plugin, regardless of whether you are using locale pack or not. See the plugin documentation for the list of locale strings it uses (for example, here’s Dashboard).
const Uppy = require('@uppy/core')
const DragDrop = require('@uppy/drag-drop')
const Russian = require('@uppy/locales/lib/ru_RU')
const uppy = Uppy({
debug: true,
autoProceed: true,
locale: Russian
})
uppy.use(DragDrop, {
target: '.UppyDragDrop',
// We are using the ru_RU locale pack (set above in Uppy options),
// but you can also override specific strings like so:
locale: {
strings: {
browse: 'выберите ;-)'
}
}
})
If you speak a language we don’t yet support, you can contribute! Here’s how you do it:
en_US.js
and copy its contents, as English is the most up-to-date locale.language_COUNTRY
format, make sure to use underscore _
as a divider. Examples: en_US
, en_GB
, ru_RU
, ar_AE
. Variants should be trailing, e.g.: sr_RS_Latin
for Serbian Latin vs Cyrillic.en_US.js
and use it as a starting point to translate strings into your language.