Skip to content

[feature]: Configurable instance branding for self-hosted (name, logo, support links) #9675

Description

@IsmailofficialGithub

Is there an existing issue for this?

  • I have searched the existing issues

Summary

Self-hosted operators need runtime instance branding (name, logo, favicon, support email, website) without rebuilding frontend images. Config should live on the instance (God Mode + optional Docker env seed), expose via GET /api/instances/, and drive login/sidebar/emails. Empty values keep Plane defaults. Prefer HIDE_PLANE_MARKETING=0/1 over an inverted isBranding flag.

Why should this be worked on?

Many self-hosters white-label Plane for internal teams. Today instance_name exists, but logos and support links are hardcoded (PlaneLogo, plane.so, email header assets). Build-time VITE_* is a poor fit for Docker operators who expect .env + restart. Runtime InstanceConfiguration (same pattern as ENABLE_SIGNUP) fixes chrome without rewriting LICENSE, package names, or test fixtures.

Proposed approach

  • Seed keys: BRAND_LOGO_URL, BRAND_LOGO_DARK_URL, BRAND_FAVICON_URL, BRAND_SUPPORT_EMAIL, BRAND_WEBSITE_URL, HIDE_PLANE_MARKETING
  • Expose on public instance GET config
  • God Mode general form editors
  • Shared BrandMark (custom img or PlaneLogo)
  • Email templates receive brand_name / brand_logo_url
  • Optional hide of Plane marketing / powered-by / upsell CTAs
  • i18n: {{brand}} placeholders (not wholesale locale rewrites)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions