Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

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

Open
#9,675 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

  • #9676 by @IsmailofficialGithub — closed without merging

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
docker, python, typescript

Research direction

Start with the existing runtime InstanceConfiguration pattern and the GET /api/instances/ endpoint. Trace the God Mode general form, shared BrandMark, email templates, and i18n usage described in the proposal. Done means the listed branding values can be configured at runtime, empty values retain Plane defaults, and the optional marketing visibility setting is respected across the named surfaces.

Written by the indexing model from the issue text.

Description

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)
Dominant language
TypeScript
Stars
61.1k
Forks
6.1k
Avg merge
1d 12h
Merged PRs (30d)
80

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from makeplane/plane

All issues in makeplane/plane

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.