Repository navigation
Description
Is there an existing issue for this?
- I have searched the existing issues
Summary
Allow instance admins to set a default interface language for the whole instance (from God Mode or an environment variable), so new users don't start in English.
Today the language is only a per-user preference: Profile.language is a CharField(default="en") in apps/api/plane/db/models/user.py, and profiles are created with that default (authentication/adapter/base.py, license/api/views/admin.py). There is no InstanceConfiguration key or env var that changes it, so on a self-hosted instance used by a Spanish-speaking team every new member lands in English and has to find Profile → Preferences → Language on their own.
What we checked on a self-hosted Community Edition (v1.4.3, Docker Compose):
- Changing the database column default doesn't help, because Django writes
language="en"explicitly on insert. - The only workarounds are outside Plane: a Postgres
BEFORE INSERTtrigger onprofiles, or a periodic job that updates new profiles. Both are fragile and invisible to admins. - Transactional emails (workspace invitation, notifications) are always sent in English, even for users whose profile language is Spanish: the templates under
templates/emails/are not localized.
Proposal:
- An instance setting
DEFAULT_LANGUAGE(God Mode → General, and/or an env var), used as the initialProfile.languagefor new users. Users can still change their own language afterwards. - Optionally, a workspace-level default that applies to members who haven't chosen a language.
- Use the recipient's profile language (falling back to the instance default) when rendering email templates, starting with the invitation email.
Why should this be worked on?
Plane already ships complete translations (e.g. es), but teams that don't work in English can't make them the default. For self-hosted instances where most users share a language, this is the first thing every new member hits, and admins currently have no supported way to fix it. An instance default is a small change (one config key read when the profile is created), and it would make the existing translations far more useful.
Activity
ArnavNath550 commentedon Oct 30, 2026
Hey .. I'd like to work on this issue. Is anyone currently working on it, or would it be okay if I picked it up?