Konfiguracja¶
All settings are stored in settings.py (as is usual for Django).
Informacja
After changing any of these settings, you need to restart Weblate — both WSGI and Celery processes.
In case it is run as mod_wsgi, you need to restart Apache to reload the
configuration.
Zobacz także
Please also check Django’s documentation for parameters configuring Django itself.
ADMINS_CONTACT¶
Configures where contact form sends e-mails. If not configured,
e-mail addresses from ADMINS are used.
Skonfiguruj to jako listę adresów e-mail:
ADMINS_CONTACT = ["admin@example.com", "support@example.com"]
Zobacz także
ALLOWED_ASSET_DOMAINS¶
Dodane w wersji 5.14.
Configures which domains are allowed for fetching assets in Weblate.
This enhances security by preventing loading assets from untrusted sources. Assets are downloaded once by the Weblate server and stored locally, rather than being served directly from external domains to users.
The allowlist is applied to the initial URL and to every HTTP redirect target before Weblate follows it. Redirects to hosts outside of this allowlist are rejected.
It expects a list of host/domain names. You can use fully qualified names
(e.g www.example.com) or prepend with a period as a wildcard to match
all subdomains (e.g .example.com will match cdn.example.com or static.example.com).
Defaults to ["*"], which allows all domains.
Example
ALLOWED_ASSET_DOMAINS = [
# Allows only cdn.anotherdomain.org
"cdn.anotherdomain.org",
# Allows example.com and all its subdomains
".example.com",
]
This is currently used in the following places:
Screenshot uploads, see Screenshots and visual context
Remote HTML downloads for the Lokalizacja JavaScript CDN add-on
ALLOWED_MACHINERY_DOMAINS¶
Configures which custom machinery domains are explicitly allowed in project-level machine translation configuration.
This setting applies only to machinery services and does not affect
ALLOWED_ASSET_DOMAINS.
It expects a list of host/domain names. You can use fully qualified names or prepend with a period as a wildcard to match all subdomains.
Defaults to [].
The allowlist affects project-managed machinery in two ways: it permits the configured endpoint during outbound validation, and it marks matching hosts as trusted when deciding whether remote provider error details or response bodies can be shown to the user. For direct connections, runtime checks still reject destinations that resolve to private or otherwise non-public addresses. When an HTTP(S) proxy is used, runtime validation falls back to hostname validation and does not perform the same local DNS or peer-IP checks.
ALLOWED_ASSET_SIZE¶
Dodane w wersji 5.14.
Configures size limit for fetching assets in Weblate. Defaults to 10 MB.
Zobacz także
ASSET_PRIVATE_ALLOWLIST¶
Dodane w wersji 2025.5.
Defines hostnames or domains exempt from ASSET_RESTRICT_PRIVATE
for remote asset downloads that enforce private-target checks. Entries follow
Django host matching semantics, so values such as assets.internal.example
or .internal.example can be used.
This does not replace ALLOWED_ASSET_DOMAINS; remote assets must
still match the asset domain allowlist.
Konfiguracja domyślna:
ASSET_PRIVATE_ALLOWLIST = []
Zobacz także
ASSET_RESTRICT_PRIVATE¶
Dodane w wersji 2025.5.
Reject remote asset URLs pointing to internal or non-public addresses unless
the target host is included in ASSET_PRIVATE_ALLOWLIST. On by
default.
When enabled, hostnames that cannot be resolved during validation are rejected
unless they are explicitly included in ASSET_PRIVATE_ALLOWLIST.
This currently applies to screenshot URL uploads and remote HTML downloads for
the Lokalizacja JavaScript CDN add-on.
ALTCHA_COST¶
Dodane w wersji 5.18.
Argon2id time cost for the ALTCHA proof-of-work challenge. Defaults to 3.
Replaces ALTCHA_MAX_NUMBER, which applied to the removed ALTCHA widget v2.
ALTCHA_MEMORY_COST¶
Dodane w wersji 5.18.
Argon2id memory cost in KiB. Defaults to 65536.
ALTCHA_PARALLELISM¶
Dodane w wersji 5.18.
Argon2id parallelism factor. Defaults to 1.
Zobacz także
ANONYMOUS_USER_NAME¶
Username of users that are not signed in.
Zobacz także
AUDITLOG_EXPIRY¶
The maximum number of days Weblate will keep audit logs containing information about the account activity.
Domyślnie 180 dni.
AUTH_LOCK_ATTEMPTS¶
Maximum number of failed authentication attempts before rate limiting is applied.
This is currently applied in the following locations:
Sign in. Deletes the account password, preventing the user from signing in without requesting a new password.
Password reset. Prevents new e-mails from being sent, avoiding spamming users with too many password-reset attempts.
Domyślna wartość 10.
Zobacz także
AUTO_UPDATE¶
Updates all repositories on a daily basis.
Podpowiedź
Useful if you are not using Hooki powiadomień to update Weblate repositories automatically.
Informacja
On/off options exist in addition to string selection for backward compatibility.
The options are:
"none"Brak codziennych aktualizacji.
"zdalne"równieżfałszyweTylko zdalne aktualizacje.
"pełne''równieżPrawdziweUpdate remotes and merge working copy.
Informacja
This requires that Zadania w tle korzystające z Celery is working, and will take effect after it is restarted.
AVATAR_URL_PREFIX¶
Prefix for constructing avatar URLs as:
${AVATAR_URL_PREFIX}/avatar/${MAIL_HASH}?${PARAMS}.
The following services are known to work:
- Gravatar (default), as per https://gravatar.com/
AVATAR_URL_PREFIX = 'https://www.gravatar.com/'- Libravatar, zgodnie z https://www.libravatar.org/
AVATAR_URL_PREFIX = 'https://www.libravatar.org/'
Zobacz także
AUTH_TOKEN_VALID¶
How long the authentication token and temporary password from password reset e-mails is valid for. Set in number of seconds, defaulting to 172800 (2 days).
AUTH_PASSWORD_DAYS¶
How many days Weblate rejects reusing a previously used password for a user.
The checking is based on the audit log, AUDITLOG_EXPIRY needs to be
at least same as this.
Informacja
Password changes made prior to Weblate 2.15 will not be accounted for in this policy.
Domyślnie 180 dni.
AUTOFIX_LIST¶
List of automatic fixes to apply when saving a string.
Informacja
Provide a fully-qualified path to the Python class that implements the autofixer interface.
Available fixes are described at Automatyczne korekty.
You can select which ones to use:
AUTOFIX_LIST = (
"weblate.trans.autofixes.whitespace.SameBookendingWhitespace",
"weblate.trans.autofixes.chars.ReplaceTrailingDotsWithEllipsis",
)
BACKGROUND_TASKS¶
Dodane w wersji 4.5.2.
Defines how often lengthy maintenance tasks should be triggered for a component.
Right now this controls:
Dodatek Tłumaczenie automatyczne
Kontrole i korekty recalculation
Możliwe opcje:
monthly(this is the default)weeklydailynever
Informacja
Increasing the frequency is not recommended when Weblate contains thousands of components.
BASIC_LANGUAGES¶
Dodane w wersji 4.4.
List of languages to offer users for starting a new translation. When not specified, a built-in list is used (which includes all commonly used languages, but without country specific variants).
This only limits non privileged users to add unwanted languages. Project admins are still presented with the full selection of languages defined in Weblate.
Informacja
This does not define new languages for Weblate — it only filters existing ones in the database.
Przykład:
BASIC_LANGUAGES = {"cs", "it", "ja", "en"}
Zobacz także
BORG_EXTRA_ARGS¶
Dodane w wersji 4.9.
You can pass additional arguments to borg create when built-in backups are triggered.
Przykład:
BORG_EXTRA_ARGS = ["--exclude", "vcs/"]
CACHE_DIR¶
Dodane w wersji 4.16.
Directory where Weblate stores cache files. Defaults to cache subfolder
in DATA_DIR.
Change this to local or temporary filesystem if DATA_DIR is on a
network filesystem.
Weblate stores generated helper files here and executes some of them, so
CACHE_DIR has to be writable and mounted on a filesystem that allows
execution. Avoid using noexec mount options for this directory.
The Docker container uses a separate volume for this, see Woluminy kontenerów platformy Docker.
Zwykle istnieją następujące podkatalogi:
sshGenerated helper files used for VCS access.
fontsfont-config cache for Zarządzanie czcionkami.
avatarCached user avatars, see Awatary.
staticDefault location for static Django files, specified by
STATIC_ROOT. See Obsługa plików statycznych.tesseractOCR trained data for Screenshots and visual context.
CSP_SCRIPT_SRC, CSP_IMG_SRC, CSP_CONNECT_SRC, CSP_STYLE_SRC, CSP_FONT_SRC, CSP_FORM_SRC¶
Customize the Content-Security-Policy header for Weblate. The header is automatically generated based on enabled integrations with third-party services (Matomo, Google Analytics, Sentry, …).
All these default to an empty list.
Przykład:
# Enable Cloudflare Javascript optimizations
CSP_SCRIPT_SRC = ["ajax.cloudflare.com"]
CHECK_LIST¶
List of quality checks to perform on a translation.
Informacja
Provide a fully-qualified path to the Python class implementing the check interface.
Adjust the list of checks to include ones relevant to you.
All built-in Kontrole jakości are turned on by default, from where you can change these settings. By default they are commented out in Przykładowa konfiguracja so that default values are used. New checks are then carried out for each new Weblate version.
You can turn off all checks:
CHECK_LIST = ()
You can turn on only a few:
CHECK_LIST = (
"weblate.checks.chars.BeginNewlineCheck",
"weblate.checks.chars.EndNewlineCheck",
"weblate.checks.chars.MaxLengthCheck",
)
Informacja
Changing this setting only affects newly changed translations. Existing checks
will still be stored in the database. To also apply changes to the stored translations, run
updatechecks.
COMMIT_PENDING_HOURS¶
Number of hours between committing pending changes by way of the background task.
COMPONENT_ZIP_UPLOAD_MAX_SIZE¶
Dodane w wersji 5.17.1.
Configures the maximum size, in bytes, for uploaded component ZIP files. Defaults to 50 MB.
In Docker, configure this using the WEBLATE_COMPONENT_ZIP_UPLOAD_MAX_SIZE
environment variable.
Zobacz także
CONTACT_FORM¶
Dodane w wersji 4.6.
Configures how e-mail from the contact form is being sent. Choose a configuration that matches the configuration of your mail server.
"reply-to"The sender is used as Reply-To, this is the default behaviour.
"from"The sender is used as From. Your mail server needs to allow sending such e-mails.
"disabled"Disables the contact form entirely.
Dodane w wersji 5.15.
Zobacz także
DATA_DIR¶
The folder Weblate stores all data in. It contains links to VCS repositories, a fulltext index and various configuration files for external tools.
Zwykle istnieją następujące podkatalogi:
homeHome directory used for invoking scripts.
sshKlucze SSH i konfiguracja.
mediaDefault location for Django media files, specified by
MEDIA_ROOT. Contains uploaded screenshots, see Screenshots and visual context.vcsVersion-control repositories for translations.
backupsDaily backup data. Please check Zrzucone dane do kopii zapasowych for details.
fonts:User-uploaded fonts, see Zarządzanie czcionkami.
cacheVarious caches. Can be placed elsewhere using
CACHE_DIR.The Docker container uses a separate volume for this, see Woluminy kontenerów platformy Docker.
Informacja
This directory has to be writable by Weblate. Running it as WSGI means
the www-data user should have write access to it.
The easiest way to achieve this is to make the user the owner of the directory:
sudo chown www-data:www-data -R $DATA_DIR
Defaults to /home/weblate/data, but it is expected to be configured.
DATABASE_BACKUP¶
Whether the database backups should be stored as plain text, compressed or skipped. The authorized values are:
"plain""compressed""none"
Zobacz także
DEFAULT_ACCESS_CONTROL¶
The default access-control setting for new projects:
0Publiczny
1Chroniony
100Prywatny
200Niestandardowy
Use Custom if you are managing ACL manually, which means not relying on the internal Weblate management.
Zobacz także
DEFAULT_AUTO_WATCH¶
Dodane w wersji 4.5.
Configures whether Automatically watch projects on contribution
should be turned on for new users. Defaults to True.
Zobacz także
DEFAULT_RESTRICTED_COMPONENT¶
Dodane w wersji 4.1.
Domyślna wartość ograniczenia komponentu.
Zobacz także
DEFAULT_ADD_MESSAGE, DEFAULT_ADDON_MESSAGE, DEFAULT_COMMIT_MESSAGE, DEFAULT_DELETE_MESSAGE, DEFAULT_MERGE_MESSAGE¶
Default commit messages for different operations, please check Konfiguracja komponentu for details.
DEFAULT_ADDONS¶
Default add-ons to install for every created component.
Informacja
This setting affects only newly created components.
Przykład:
DEFAULT_ADDONS = {
# Add-on with no parameters
"weblate.flags.target_edit": {},
# Add-on with parameters
"weblate.autotranslate.autotranslate": {
"mode": "suggest",
"filter_type": "todo",
"auto_source": "mt",
"component": "",
"engines": ["weblate-translation-memory"],
"threshold": "80",
},
}
Zobacz także
DEFAULT_COMMITER_EMAIL¶
Committer e-mail address, defaulting to noreply@weblate.org.
Zobacz także
DEFAULT_COMMITER_NAME¶
Committer name, defaulting to Weblate.
Zobacz także
DEFAULT_LANGUAGE¶
Dodane w wersji 4.3.2.
Język źródłowy dla każdego nowego komponentu.
Defaults to en. The matching language object needs to exist in the database.
Zobacz także
DEFAULT_MERGE_STYLE¶
Styl scalania dla wszystkich nowych komponentów.
rebase - domyślne
merge
Zobacz także
DEFAULT_TRANSLATION_REVIEW¶
Dodane w wersji 5.16.
Configures the default value for Włącz przeglądy, turned off by default.
DEFAULT_SOURCE_REVIEW¶
Dodane w wersji 5.16.
Configures the default value for Włącz przeglądy źródeł, turned off by default.
DEFAULT_AUTOCLEAN_TM¶
Dodane w wersji 5.13.
Configures the default value of Automatycznie czyść pamięć tłumaczeniową.
DEFAULT_TRANSLATION_PROPAGATION¶
Default setting for translation propagation, defaults to True.
Zobacz także
DEFAULT_PULL_MESSAGE¶
Configures the default title and message for pull requests.
ENABLE_AVATARS¶
Whether to turn on Gravatar-based avatars for users. On by default.
Avatars are fetched and cached on the server, lowering the risk of leaking private info, speeding up the user experience.
Zobacz także
ENABLE_HOOKS¶
Whether to turn on anonymous remote hooks.
Zobacz także
ENABLE_HTTPS¶
Zmienione w wersji 5.7: Weblate now requires https for WebAuthn support.
Whether to send links to Weblate as HTTPS or HTTP. This setting affects sent e-mails and generated absolute URLs.
In the default configuration this is also used for several Django settings related to HTTPS — it enables secure cookies, toggles HSTS or enables redirection to a HTTPS URL.
The HTTPS redirection might be problematic in some cases and you might hit
an issue with infinite redirection in case you are using a reverse proxy doing
an SSL termination which does not correctly pass protocol headers to Django.
Please tweak your reverse proxy configuration to emit X-Forwarded-Proto or
Forwarded headers or configure SECURE_PROXY_SSL_HEADER to
let Django correctly detect the SSL status.
In case this is disabled, Weblate will fail to start with an
otp_webauthn.E031 error. You can silence this error by adding it to
SILENCED_SYSTEM_CHECKS, but still WebAuthn will not work for
sites without HTTPS.
ENABLE_SHARING¶
Turn on/off the Community menu so users can share translation progress on social networks.
Zobacz także
EXTRA_HTML_HEAD¶
Dodane w wersji 4.15.
Insert additional markup into the HTML header. Can be used for verification of site ownership, for example:
EXTRA_HTML_HEAD = '<link href="https://fosstodon.org/@weblate" rel="me">'
Ostrzeżenie
No sanitization is performed on the string. It is inserted as-is into the HTML header.
GET_HELP_URL¶
Dodane w wersji 4.5.2.
URL where support for your Weblate instance can be found.
GITEA_CREDENTIALS¶
Dodane w wersji 4.12.
List for credentials for Gitea servers.
GITEA_CREDENTIALS = {
"try.gitea.io": {
"username": "weblate",
"token": "your-api-token",
},
}
The configuration dictionary consists of credentials defined for each API host. The layout is same for almost all version control integrations and is described at Configuring version control credentials.
GITLAB_CREDENTIALS¶
Dodane w wersji 4.3.
List for credentials for GitLab servers.
GITLAB_CREDENTIALS = {
"gitlab.com": {
"username": "weblate",
"token": "your-api-token",
},
}
Informacja
The personal access token needs the api scope to be able to use the API.
The configuration dictionary consists of credentials defined for each API host. The layout is same for almost all version control integrations and is described at Configuring version control credentials.
Zobacz także
GITHUB_CREDENTIALS¶
Dodane w wersji 4.3.
List for credentials for GitHub servers.
GITHUB_CREDENTIALS = {
"api.github.com": {
"username": "weblate",
"token": "your-api-token",
},
}
Informacja
It is possible to use both fine-grained personal access tokens and classic personal access tokens. The fine-grained tokens are limited to a single organization, so it won’t work if you want Weblate to fork a repository outside the organization (typically to the user namespace).
To clone, push and create pull requests, the read and write access to Contents and Pull requests is required.
Administration might also be necessary for forking a repository if you intend to use forking and the original repository is not public.
Podpowiedź
Use api.github.com as an API host for https://github.com/.
The configuration dictionary consists of credentials defined for each API host. The layout is same for almost all version control integrations and is described at Configuring version control credentials.
BITBUCKETSERVER_CREDENTIALS¶
Dodane w wersji 4.16.
List for credentials for Bitbucket Data Center.
BITBUCKETSERVER_CREDENTIALS = {
"git.self-hosted.com": {
"username": "weblate",
"token": "http-access-token",
},
}
The configuration dictionary consists of credentials defined for each API host. The layout is same for almost all version control integrations and is described at Configuring version control credentials.
BITBUCKETCLOUD_CREDENTIALS¶
Dodane w wersji 5.8.
List for credentials for Bitbucket Cloud servers.
BITBUCKETCLOUD_CREDENTIALS = {
"bitbucket.org": {
"username": "your-email",
"workspace": "your-workspace-slug",
"token": "your-api-token",
},
}
The configuration dictionary consists of credentials defined for each API host.
The API host might be different from what you use in the web browser, for
example GitHub API is accessed as api.github.com.
The following configuration is available for each host:
usernameAPI user.
workspaceThe user workspace slug.
tokenThe API token with pullrequest:write permission.
Additional settings not described here can be found at Configuring version control credentials.
AZURE_DEVOPS_CREDENTIALS¶
Dodane w wersji 5.2.
List for credentials for Azure DevOps servers.
AZURE_DEVOPS_CREDENTIALS = {
"dev.azure.com": {
"username": "project-name",
"token": "your-api-token",
"organization": "organization-name",
},
}
The configuration dictionary consists of credentials defined for each API host.
The API host might be different from what you use in the web browser, for
example GitHub API is accessed as api.github.com.
The following configuration is available for each host:
usernameThe name of the Azure DevOps project. This is not the repository name.
organizationThe name of the organization of the project.
workItemIdsAn optional list of work items IDs from your organization. When provided new pull requests will have these attached.
tokenAPI token for the API user, required.
Additional settings not described here can be found at Configuring version control credentials.
GOOGLE_ANALYTICS_ID¶
Google Analytics ID to turn on monitoring of Weblate using Google Universal Analytics.
Informacja
Google Analytics 4 integration is currently not available for Weblate, please see https://github.com/WeblateOrg/weblate/issues/14015.
HIDE_REPO_CREDENTIALS¶
Hide repository credentials from the web interface. In case you have repository URL with user and password, Weblate will hide it when related info is shown to users.
For example instead of https://user:password@git.example.com/repo.git it
will show just https://git.example.com/repo.git. It tries to clean up VCS
error messages too in a similar manner.
Informacja
Domyślnie włączone.
VERSION_DISPLAY¶
Dodane w wersji 5.17.
Controls how prominently Weblate exposes its own version.
Supported values are:
showShow the version in shared UI such as the footer and expose it in
GET /api/metrics/.softHide the version from prominent shared UI, while keeping it discoverable on the About page and in
GET /api/metrics/.hideHide the version from shared UI and
GET /api/metrics/. This also makes anonymous documentation links point to the latest documentation instead of the version matching the installed release.
Hiding the version is a recommended security practice in some corporations, but it does not prevent an attacker from inferring the version by probing behavior.
Informacja
The default is show.
HIDE_VERSION¶
Dodane w wersji 4.3.1.
Niezalecane od wersji 5.17.
Compatibility alias for VERSION_DISPLAY. Set this to True to
get the same behavior as VERSION_DISPLAY = "hide".
IP_BEHIND_REVERSE_PROXY¶
Indicates whether Weblate is running behind a reverse proxy.
If set to True, Weblate gets IP address from a header defined by
IP_PROXY_HEADER.
Ostrzeżenie
Ensure you are actually using a reverse proxy and that it sets this header, otherwise users will be able to fake the IP address.
Informacja
This is not on by default.
IP_PROXY_HEADER¶
Indicates which header Weblate should obtain the IP address from when
IP_BEHIND_REVERSE_PROXY is turned on.
Domyślna wartość to HTTP_X_FORWARDED_FOR.
IP_PROXY_OFFSET¶
Zmienione w wersji 5.0.1: Wartość domyślna zmieniona z 1 na -1.
Indicates which part of IP_PROXY_HEADER is used as client IP
address.
Depending on your setup, this header might consist of several IP addresses,
(for example X-Forwarded-For: client-ip, proxy-a, proxy-b) and you can configure
which address from the header is used as client IP address here.
Ostrzeżenie
Setting this affects the security of your installation. You should only configure it to use trusted proxies for determining the IP address. Please check <https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/X-Forwarded-For#security_and_privacy_concerns> for more details.
Defaults to -1.
LEGAL_TOS_DATE¶
Dodane w wersji 4.15.
Informacja
You need Legal module installed to make this work.
Date of last update of terms of service documents. Whenever the date changes, users are required to agree with the updated terms of service.
from datetime import date
LEGAL_TOS_DATE = date(2022, 2, 2)
LEGAL_URL¶
URL where your Weblate instance shows its legal documents.
Podpowiedź
Useful if you host your legal documents outside Weblate for embedding them inside Weblate. Please check Legal module for details.
Przykład:
LEGAL_URL = "https://weblate.org/terms/"
Zobacz także
LICENSE_EXTRA¶
Additional licenses to include in the license choices.
Informacja
Each license definition should be a tuple of its short name, a long name, a URL and a boolean, indicating whether it is a libre license.
Na przykład:
LICENSE_EXTRA = [
(
"AGPL-3.0",
"GNU Affero General Public License v3.0",
"https://www.gnu.org/licenses/agpl-3.0-standalone.html",
True,
),
]
LICENSE_FILTER¶
Zmienione w wersji 4.3: Setting this to blank value now disables license alert.
Filter list of licenses to show. This also disables the license alert when set to empty.
Informacja
This filter uses the short license names.
Na przykład:
LICENSE_FILTER = {"AGPL-3.0", "GPL-3.0-or-later"}
Following disables the license alert:
LICENSE_FILTER = set()
Zobacz także
LICENSE_REQUIRED¶
Defines whether the license attribute in Konfiguracja komponentu is required.
Informacja
Ta opcja jest domyślnie wyłączona.
LIMIT_TRANSLATION_LENGTH_BY_SOURCE_LENGTH¶
Whether the length of a given translation should be limited. The restriction is the length of the source string × 10 characters.
Podpowiedź
Set this to False to allow longer translations (up to 10,000 characters) irrespective of source string length.
Informacja
Wartość domyślna to True.
LOCALIZE_CDN_URL i LOCALIZE_CDN_PATH¶
These settings configure the CDN add-ons, including
Lokalizacja JavaScript CDN and Translation files CDN.
LOCALIZE_CDN_URL defines root URL where the localization CDN is
available and LOCALIZE_CDN_PATH defines path where Weblate should
store generated files which will be served at the LOCALIZE_CDN_URL.
The files are served by your web server or CDN, not by Weblate; see
Lokalizacja CDN for secure serving guidance.
Podpowiedź
On Hosted Weblate, this uses https://weblate-cdn.com/.
Zobacz także
MATOMO_SITE_ID¶
ID of the site in Matomo (formerly Piwik) you want to use for tracking Weblate.
Informacja
This integration does not support the Matomo Tag Manager.
Zobacz także
MATOMO_URL¶
Full URL (including trailing slash) of a Matomo (formerly Piwik) installation you want to use to track Weblate use. Please check <https://matomo.org/> for more details.
Podpowiedź
This integration does not support the Matomo Tag Manager.
Na przykład:
MATOMO_SITE_ID = 1
MATOMO_URL = "https://example.matomo.cloud/"
Zobacz także
NEARBY_MESSAGES¶
Liczba sąsiadujących ciągów do pokazania w każdym kierunku w pełnym edytorze.
This is just a default value, users can adjust this in Profil użytkownika.
DEFAULT_PAGE_LIMIT¶
Dodane w wersji 4.7.
Default number of elements to display when pagination is active.
PAGURE_CREDENTIALS¶
Dodane w wersji 4.3.2.
List for credentials for Pagure servers.
PAGURE_CREDENTIALS = {
"pagure.io": {
"username": "weblate",
"token": "your-api-token",
},
}
The configuration dictionary consists of credentials defined for each API host. The layout is same for almost all version control integrations and is described at Configuring version control credentials.
Zobacz także
PASSWORD_MINIMAL_STRENGTH¶
Dodane w wersji 5.10.2.
Minimal password score as evaluated by the zxcvbn password strength estimator.
Defaults to 0, which means strength checking is disabled.
Zobacz także
PASSWORD_RESET_URL¶
Dodane w wersji 5.17.
URL for password reset when authentication is handled by an external identity provider, such as LDAP, SAML, or OAuth.
When set, Forgot your password? on the sign-in page links to this URL instead of Weblate’s built-in password reset page.
PRIVACY_URL¶
Dodane w wersji 4.8.1.
URL where your Weblate instance shows its privacy policy.
Podpowiedź
Useful if you host your legal documents outside Weblate for embedding them inside Weblate, please check Legal module for details.
Przykład:
PRIVACY_URL = "https://weblate.org/terms/"
Zobacz także
PRIVATE_COMMIT_EMAIL_OPT_IN¶
Dodane w wersji 4.15.
Configures whether the private commit e-mail is opt-in or opt-out (by default it is opt-in).
Podpowiedź
This setting only applies to users which have not explicitly chosen a commit e-mail.
Zobacz także
PRIVATE_COMMIT_EMAIL_TEMPLATE¶
Dodane w wersji 4.15.
Template to generate a private commit e-mail for a user. Defaults to "{username}@users.noreply.{site_domain}".
It can contain {user_id}, {username}, {site_title}, and {site_domain}.
Ustaw pusty ciąg, aby wyłączyć.
Informacja
Using a different commit e-mail is opt-in for users unless configured by
PRIVATE_COMMIT_EMAIL_OPT_IN. Users can configure their commit e-mail in
the Profil.
PRIVATE_COMMIT_NAME_OPT_IN¶
Dodane w wersji 5.16.
Configures whether the private commit name is opt-in or opt-out (by default it is opt-in).
Podpowiedź
This setting only applies to users which have not explicitly chosen a commit name.
Zobacz także
PRIVATE_COMMIT_NAME_TEMPLATE¶
Dodane w wersji 5.16.
Template to generate a private commit name for a user. Defaults to "{site_title} user {user_id}".
It can contain {user_id}, {username}, {site_title}, and {site_domain}.
Ustaw pusty ciąg, aby wyłączyć.
Informacja
Using a different commit name is opt-in for users unless configured by
PRIVATE_COMMIT_NAME_OPT_IN. Users can configure their commit name in
the Profil.
PROJECT_BACKUP_KEEP_COUNT¶
Dodane w wersji 4.14.
Defines how many backups per project are kept on the server. Defaults to 3.
Zobacz także
PROJECT_BACKUP_KEEP_DAYS¶
Dodane w wersji 4.14.
Defines how long the project backups will be kept on the server. Defaults to 30 days.
Zobacz także
PROJECT_BACKUP_UPLOAD_MAX_SIZE¶
Dodane w wersji 5.17.1.
Configures the maximum size, in bytes, for uploaded project backup ZIP files. Defaults to 536870912 bytes (512 MiB).
In Docker, configure this using the WEBLATE_PROJECT_BACKUP_UPLOAD_MAX_SIZE
environment variable. Docker setups can also be constrained by
CLIENT_MAX_BODY_SIZE; other deployments can be constrained by their
reverse proxy request body-size limit.
Zobacz także
PROJECT_BACKUP_IMPORT_MAX_MEMBERS¶
Dodane w wersji 5.17.
Defines the maximum number of ZIP entries allowed when importing a project backup.
This is a safeguard against malformed or intentionally fragmented archives. Defaults to 100000 entries.
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MAX_MEMBERS environment variable.
Zobacz także
PROJECT_BACKUP_IMPORT_MAX_TOTAL_UNCOMPRESSED_SIZE¶
Dodane w wersji 5.17.1.
Defines the maximum total uncompressed size, in bytes, for ZIP entries in an imported project backup. Defaults to 536870912 bytes (512 MiB).
This limits archives that are small when uploaded but expand to much more data during validation or restore.
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MAX_TOTAL_UNCOMPRESSED_SIZE environment
variable.
Zobacz także
PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_SIZE¶
Dodane w wersji 5.17.
Defines the maximum uncompressed size, in bytes, for a single highly compressed ZIP entry in an imported project backup.
This limit is only applied to entries that are large enough and compress enough to look suspicious. Large low-compression files are intentionally allowed here and are expected to be constrained by the HTTP upload limit. Defaults to 262144000 bytes (250 MiB).
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_SIZE environment
variable.
Zobacz także
PROJECT_BACKUP_IMPORT_MIN_RATIO_SIZE¶
Dodane w wersji 5.17.
Defines the minimum uncompressed size, in bytes, at which Weblate starts considering the ZIP compression ratio during project backup import.
Smaller files are ignored for the compression-ratio-based validation to avoid rejecting reasonably sized files that compress well. Defaults to 1048576 bytes (1 MiB).
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MIN_RATIO_SIZE environment variable.
Zobacz także
PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_RATIO¶
Dodane w wersji 5.17.
Defines the maximum allowed ratio between the uncompressed and compressed size for a large ZIP entry during project backup import.
This is used together with
PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_SIZE and
PROJECT_BACKUP_IMPORT_MIN_RATIO_SIZE to detect suspiciously
compressed entries while still allowing large repository pack files and other
low-compression content. Defaults to 250.
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_RATIO environment
variable.
Zobacz także
PROJECT_NAME_RESTRICT_RE¶
Dodane w wersji 4.15.
Defines a regular expression to restrict project naming. Any matching names will be rejected.
Zobacz także
PROJECT_WEB_RESTRICT_HOST¶
Dodane w wersji 4.16.2.
Reject using certain hosts in project website. Any subdomain is matched, so
including example.com will block test.example.com as well. The list
should contain lower case strings only, the parsed domain is lower cased before
matching.
Konfiguracja domyślna:
PROJECT_WEB_RESTRICT_HOST = {"localhost"}
PROJECT_WEB_RESTRICT_ALLOWLIST¶
Dodane w wersji 5.17.
Defines a set of project slugs exempt from
PROJECT_WEB_RESTRICT_HOST, PROJECT_WEB_RESTRICT_NUMERIC,
PROJECT_WEB_RESTRICT_PRIVATE, and
PROJECT_WEB_RESTRICT_RE when validating the project website.
Project slugs are matched case-insensitively.
Ostrzeżenie
This exemption weakens outbound URL protections for matching projects,
including the private-target restriction enforced by
PROJECT_WEB_RESTRICT_PRIVATE. Use it only for trusted,
administrator-managed projects where bypassing these checks is intentional.
Konfiguracja domyślna:
PROJECT_WEB_RESTRICT_ALLOWLIST = set()
PROJECT_WEB_RESTRICT_NUMERIC¶
Dodane w wersji 4.16.2.
Reject using numeric IP address in project website. On by default.
PROJECT_WEB_RESTRICT_PRIVATE¶
Dodane w wersji 5.17.
Reject using project website and repository browser URLs pointing to internal or non-public addresses. On by default.
PROJECT_WEB_RESTRICT_RE¶
Dodane w wersji 4.15.
Defines a regular expression to limit what can be entered as Strona internetowa projektu. Any matching URLs will be rejected.
WEBHOOK_PRIVATE_ALLOWLIST¶
Dodane w wersji 5.17.
Defines hostnames or domains exempt from WEBHOOK_RESTRICT_PRIVATE
for outbound webhook delivery. Entries follow Django host matching semantics,
so values such as hooks.internal.example or .internal.example can be
used.
Konfiguracja domyślna:
WEBHOOK_PRIVATE_ALLOWLIST = []
Zobacz także
WEBHOOK_RESTRICT_PRIVATE¶
Dodane w wersji 5.17.
Reject webhook URLs pointing to internal or non-public addresses unless the
target host is included in WEBHOOK_PRIVATE_ALLOWLIST. On by default.
When enabled, hostnames that cannot be resolved during validation are rejected
unless they are explicitly included in WEBHOOK_PRIVATE_ALLOWLIST.
Zobacz także
PUBLIC_ENGAGE¶
Dodane w wersji 5.16.2.
Allows public engage page even with REQUIRE_LOGIN.
Zobacz także
RATELIMIT_NOTIFICATION_LIMITS¶
Dodane w wersji 5.14.
Limits how many notifications for a single user will be sent out.
Ustawienie domyślne to:
# Multi-level rate limiting for email notifications
# Each tuple contains (max_emails, time_window_seconds)
RATELIMIT_NOTIFICATION_LIMITS = [
# Prevent burst sends - 3 emails per 2 minutes
(3, 120),
# Equalize to avoid getting blocked for too long - 10 emails per hour
(10, 3600),
# Daily limit: 50 emails per day
(50, 86400),
]
RATELIMIT_ATTEMPTS¶
Maximum number of authentication attempts before rate limiting is applied.
Wartość domyślna to 5.
Zobacz także
RATELIMIT_WINDOW¶
How long authentication is accepted after rate limiting applies.
An amount of seconds, defaulting to 300 (5 minutes).
Zobacz także
RATELIMIT_LOCKOUT¶
How long authentication is locked after rate limiting applies.
An amount of seconds defaulting to 600 (10 minutes).
Zobacz także
REGISTRATION_ALLOW_BACKENDS¶
Dodane w wersji 4.1.
List of authentication backends to allow registration from. This only limits new registrations, users can still authenticate and add authentication using all configured authentication backends.
It is recommended to keep REGISTRATION_OPEN on while limiting
registration backends, otherwise users will be able to register, but Weblate
will not show links to register in the user interface.
Przykład:
REGISTRATION_ALLOW_BACKENDS = ["azuread-oauth2", "azuread-tenant-oauth2"]
Podpowiedź
The backend names match names used in the URL for authentication.
Zobacz także
REGISTRATION_CAPTCHA¶
Whether registration of new accounts is protected by a CAPTCHA. Defaults to enabled.
If turned on, a CAPTCHA is added to all pages where a user enters their e-mail address:
Rejestracja nowego konta.
Odzyskanie hasła.
Dodanie e-maila do konta.
Contact form for users that are not signed in.
The protection currently consists of following steps:
Mathematical captcha to be solved by the user.
Proof of work challenge calculated by the browser. The difficulty can be adjusted using
ALTCHA_COST,ALTCHA_MEMORY_COST, andALTCHA_PARALLELISM.
REGISTRATION_EMAIL_MATCH¶
Allows you to filter which e-mail addresses can register.
Defaults to .*, which allows any e-mail address to be registered.
You can use it to restrict registration to a single e-mail domain:
REGISTRATION_EMAIL_MATCH = r"^.*@weblate\.org$"
REGISTRATION_ALLOW_DISPOSABLE_EMAILS¶
Dodane w wersji 5.16.1.
Allow registration with disposable e-mail domains. When enabled, the
disposable domain blocklist is bypassed. Default is False.
REGISTRATION_OPEN¶
Whether registration of new accounts is currently permitted. Defaults to enabled.
This setting affects built-in authentication by e-mail address or through the
Python Social Auth (you can allow certain back-ends using
REGISTRATION_ALLOW_BACKENDS).
Informacja
If using third-party authentication methods such as Uwierzytelnianie LDAP, it just hides the registration form, but new users might still be able to sign in and create accounts.
REGISTRATION_REBIND¶
Dodane w wersji 4.16.
Allow rebinding authentication backends for existing users. Turn this on when migrating between authentication providers.
Informacja
Off by default to not allow adding other authentication backends to an existing account. Rebinding can lead to account compromise when using more third-party authentication backends.
REPOSITORY_ALERT_THRESHOLD¶
Dodane w wersji 4.0.2.
Threshold for triggering an alert for outdated repositories, or ones that contain too many changes. Defaults to 25.
Zobacz także
REQUIRE_LOGIN¶
Dodane w wersji 4.1.
This enables django.contrib.auth.middleware.LoginRequiredMiddleware
and configures REST framework to require authentication for all API endpoints.
Zmienione w wersji 5.15: Weblate now relies on Django built-in middleware.
Informacja
This is implemented in the Przykładowa konfiguracja. For Docker, use
WEBLATE_REQUIRE_LOGIN.
SENTRY_DSN¶
Sentry DSN to use for Collecting error reports and monitoring performance.
Zobacz także
SENTRY_ENVIRONMENT¶
Configures environment for Sentry. Defaults to devel.
SENTRY_MONITOR_BEAT_TASKS¶
Dodane w wersji 5.13.
Configure whether to monitor Celery Beat tasks with Sentry. Defaults to True.
SENTRY_PROFILES_SAMPLE_RATE¶
Configure sampling rate for performance monitoring. Set to 1 to trace all events, 0 (the default) disables tracing.
Zobacz także
SENTRY_SEND_PII¶
Allow Sentry to collect certain personally identifiable information. Turned off by default.
Zmienione w wersji 5.7: This is turned off by default now, used to be turned on by default.
SENTRY_TRACES_SAMPLE_RATE¶
Configure sampling rate for profiling monitoring. Set to 1 to trace all events, 0 (the default) disables tracing.
Zobacz także
SIMPLIFY_LANGUAGES¶
Use simple language codes for default language/country combinations.
For example an fr_FR translation will use the fr language code.
This is usually the desired behavior, as it simplifies listing languages
for these default combinations.
Turn this off if you want to different translations for each variant.
SITE_DOMAIN¶
Configures site domain. Necessary to produce correct absolute links in many scopes (for example activation e-mails, notifications or RSS feeds).
If Weblate is running on a non-standard port, include it here as well.
Przykłady:
# Production site with domain name
SITE_DOMAIN = "weblate.example.com"
# Local development with IP address and port
SITE_DOMAIN = "127.0.0.1:8000"
Informacja
This setting should only contain the domain name. For configuring protocol,
(turning on and enforcing HTTPS) use ENABLE_HTTPS and for changing
the URL, use URL_PREFIX.
Podpowiedź
On a Docker container, the site domain is configured through
WEBLATE_ALLOWED_HOSTS.
SITE_TITLE¶
Site title to be used for the website and sent e-mails.
SPECIAL_CHARS¶
Additional characters to include in the visual keyboard, Klawiatura wizualna.
Wartość domyślna to:
SPECIAL_CHARS = ("\t", "\n", "\u00a0", "…")
SINGLE_PROJECT¶
Redirects users directly to a project or component instead of showing
the dashboard. You can either set it to True so it only works
if there is actually only single project in Weblate. Alternatively, set
the project slug, and it will redirect unconditionally to this project.
Przykład:
SINGLE_PROJECT = "test"
SSH_EXTRA_ARGS¶
Dodane w wersji 4.9.
Allows adding custom parameters when Weblate is invoking SSH. Useful when connecting to servers using legacy encryption or other non-standard features.
For example when SSH connection in Weblate fails with Unable to negotiate with legacyhost: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1, you can turn that on using:
SSH_EXTRA_ARGS = "-oKexAlgorithms=+diffie-hellman-group1-sha1"
Podpowiedź
The string is evaluated by the shell, so ensure any whitespace and special characters is quoted.
Zobacz także
STATUS_URL¶
The URL where your Weblate instance reports its status.
SUPPORT_STATUS_CHECK¶
Dodane w wersji 5.5.
Disables semiannual support status check and redirecting superusers upon login to the donation page in case there is no active support subscription.
Podpowiedź
Improve your Weblate experience by purchasing a support subscription and boosting Weblate progress instead of turning this off.
TRANSLATION_UPLOAD_MAX_SIZE¶
Dodane w wersji 5.17.1.
Configures the maximum size, in bytes, for uploaded translation files. Defaults to 50 MB.
In Docker, configure this using the WEBLATE_TRANSLATION_UPLOAD_MAX_SIZE
environment variable.
UNUSED_ALERT_DAYS¶
Dodane w wersji 4.17.
Configures when the Component seems unused alert is triggered.
Defaults to 365 days, set to 0 to turn it off.
UPDATE_LANGUAGES¶
Dodane w wersji 4.3.2.
Controls whether languages database should be updated when running database
migration and is on by default. This setting has no effect on invocation
of setuplang.
Ostrzeżenie
The languages display might become inconsistent with this. Weblate language definitions expand over time and it will not display language code for the defined languages.
Zobacz także
URL_PREFIX¶
This setting allows you to run Weblate under some path (otherwise it relies on being run from the webserver root).
Informacja
To use this setting, you also need to configure your server to strip this prefix.
For example with WSGI, this can be achieved by setting WSGIScriptAlias.
Podpowiedź
Prefiks powinien zaczynać się od /.
Przykład:
URL_PREFIX = "/translations"
Informacja
This setting does not work with Django’s built-in server, you would have to
adjust urls.py to contain this prefix.
VCS_ALLOW_HOSTS¶
Dodane w wersji 5.15.
A set of hosts to allow when configuring VCS URL. Defaults to an empty set, which does no filtering at all.
When VCS_RESTRICT_PRIVATE is enabled, matching hosts are also exempt
from the private-target restriction.
VCS_ALLOW_SCHEMES¶
Dodane w wersji 5.15.
A set of URL schemes to allow when configuring VCS URL. Only https and
ssh are allowed by default.
VCS_RESTRICT_PRIVATE¶
Dodane w wersji 5.17.
Reject VCS repository URLs pointing to internal or non-public addresses unless
the target host is included in VCS_ALLOW_HOSTS. On by default.
When enabled, hostnames that cannot be resolved during validation are rejected
unless they are explicitly included in VCS_ALLOW_HOSTS.
VCS_API_DELAY¶
Dodane w wersji 4.15.1.
Configures minimal delay in seconds between third-party API calls in GitHub pull requests, GitLab merge requests, Gitea pull requests, Pagure merge requests, and Azure DevOps pull requests.
This rate-limits API calls from Weblate to these services to avoid overloading them.
If you are being limited by secondary rate-limiter at GitHub, increasing this might help.
Domyślna wartość to 10.
VCS_API_TIMEOUT¶
Dodane w wersji 5.15.
Configures timeout in seconds for third-party API calls such as forking or creating merge requests in GitHub pull requests, GitLab merge requests, Gitea pull requests, Pagure merge requests, and Azure DevOps pull requests.
Domyślna wartość to 10.
VCS_BACKENDS¶
Configuration of available VCS backends.
Informacja
Weblate tries to use all supported back-ends you have the tools for.
Podpowiedź
You can limit choices or add custom VCS back-ends by using this.
VCS_BACKENDS = ("weblate.vcs.git.GitRepository",)
Zobacz także
VCS_CLONE_DEPTH¶
Configures how deep cloning of repositories Weblate should do.
Informacja
Currently this is only supported in Git. By default Weblate does shallow clones of the repositories to make cloning faster and save disk space. Depending on your usage (for example when using custom Dodatki), you might want to increase the depth or turn off shallow clones completely by setting this to 0.
Podpowiedź
In case you get fatal: protocol error: expected old/new/ref, got 'shallow
<commit hash>' error when pushing from Weblate, turn off shallow clones completely by setting:
VCS_CLONE_DEPTH = 0
WEBLATE_ADDONS¶
Lista dodatków dostępnych do użycia. Aby z nich skorzystać, muszą być włączone dla danego komponentu tłumaczeniowego. Domyślnie obejmuje to wszystkie wbudowane dodatki, podczas rozszerzania listy prawdopodobnie będziesz chciał pozostawić włączone istniejące, na przykład:
WEBLATE_ADDONS = (
# Built-in add-ons
"weblate.addons.gettext.GenerateMoAddon",
"weblate.addons.gettext.UpdateLinguasAddon",
"weblate.addons.gettext.UpdateConfigureAddon",
"weblate.addons.gettext.MsgmergeAddon",
"weblate.addons.gettext.GettextAuthorComments",
"weblate.addons.cleanup.CleanupAddon",
"weblate.addons.consistency.LanguageConsistencyAddon",
"weblate.addons.discovery.DiscoveryAddon",
"weblate.addons.flags.SourceEditAddon",
"weblate.addons.flags.TargetEditAddon",
"weblate.addons.flags.SameEditAddon",
"weblate.addons.flags.BulkEditAddon",
"weblate.addons.generate.GenerateFileAddon",
"weblate.addons.properties.PropertiesSortAddon",
"weblate.addons.git.GitSquashAddon",
"weblate.addons.removal.RemoveComments",
"weblate.addons.removal.RemoveSuggestions",
"weblate.addons.resx.ResxUpdateAddon",
"weblate.addons.autotranslate.AutoTranslateAddon",
"weblate.addons.cdn.CDNJSAddon",
# Add-on you want to include
"weblate.addons.example.ExampleAddon",
)
Informacja
Removing the add-on from the list does not uninstall it from the components. Weblate will crash in that case. Please uninstall the add-on from all components prior to removing it from this list.
ADDON_ACTIVITY_LOG_EXPIRY¶
Dodane w wersji 5.6.
Configures how long activity logs for add-ons are kept. Defaults to 180 days.
WEBLATE_EXPORTERS¶
Dodane w wersji 4.2.
Lista istniejących eksporterów, oferujących pobieranie tłumaczeń i słowników w różnych formatach.
Zobacz także
WEBLATE_FORMATS¶
Lista formatów plików dostępnych do użycia.
Informacja
Domyślna lista ma już wspólne formaty.
Zobacz także
WEBLATE_MACHINERY¶
Dodane w wersji 4.13.
Lista usług maszynowych dostępnych do użycia.
WEBLATE_GPG_IDENTITY¶
Tożsamość używana przez Weblate do podpisywania commitów w Git, na przykład:
WEBLATE_GPG_IDENTITY = "Weblate <weblate@example.com>"
The Weblate GPG keyring is searched for a matching key (home/.gnupg under
DATA_DIR). If not found, a key is generated, please check
Signing Git commits with GnuPG for more details.
Zobacz także
WEBSITE_REQUIRED¶
Defines whether Strona internetowa projektu has to be specified when creating a project. On by default, as that suits public server setups.
WEBSITE_ALERTS_ENABLED¶
Dodane w wersji 5.17.
Default: True
Defines whether Weblate should check project website availability and show alerts for unreachable project websites.
When set to False, Weblate will skip website availability checks and
will not generate project website alerts. This is useful when:
Your websites are behind firewalls that block Weblate’s requests
You want to avoid 403/503-type errors from bot protection
Project website availability is not a concern for your installation
Zobacz także
Configuring version control credentials¶
Podpowiedź
This section describes VCS credential variables as
GITHUB_CREDENTIALS, GITLAB_CREDENTIALS,
GITEA_CREDENTIALS, PAGURE_CREDENTIALS,
BITBUCKETSERVER_CREDENTIALS.
The configuration dictionary consists of credentials defined for each API host.
The API host might be different from what you use in the web browser, for
example GitHub API is accessed as api.github.com.
The credentials can also be overridden in URL repozytorium dla push or Repozytorium kodu źródłowego (if push URL is not configured), these take precedence over the ones specified in the configuration file.
The following configuration is available for each host:
usernameAPI user, required.
tokenAPI token for the API user, required.
schemeDodane w wersji 4.18.
Scheme override. Weblate attempts to parse scheme from the repository URL and falls backs to
https. If you are running the API server internally, you might want to usehttpinstead, but consider security.
Podpowiedź
In the Docker container, the credentials can be configured using environment variables, see Code hosting sites credentials.