Skip to content

Honcho #80

Description

@dprozenko-sudo

What problem does this solve?

"OpenConcho" is hardcoded in many places that the operator cannot easily change:

  1. <title>OpenConcho</title> in the React SPA's index.html (visible in browser tab)
  2. Environment variable prefix OPENCONCHO_DEFAULT_HONCHO_URL, OPENCONCHO_UPSTREAM_ALLOWLIST
  3. Docker image name ghcr.io/offendingcommit/openconcho-web
  4. Helm chart values (image.repository, service.name, etc.)
  5. The config.js window global name __OPENCONCHO_DEFAULT_HONCHO_URL__

This makes rebranding the UI for a different Honcho deployment (e.g. as the official "Honcho UI", or for a white-label deployment) painful — the operator has to fork the image and rebuild it.

Use Case

I'm running self-hosted Honcho for a private multi-tenant deployment. The "OpenConcho" branding leaks into:

  • Browser tabs (visible to all users)
  • Console.log statements from the SPA
  • Documentation my team writes about the service
  • Logs/grep'ing for "openconcho" in nginx access logs

A clean white-label deployment (or just calling it "Honcho UI") would help.

Environment

  • Image: ghcr.io/offendingcommit/openconcho-web:0.16.0
  • Deployed via docker-compose on Debian 13
  • Self-hosted Honcho (plastic-labs/honcho) v3

Proposed solution

Expose the product display name as a single env var that drives:

  • <title> in index.html (via a Vite build-time replacement of %VITE_PRODUCT_NAME%, or runtime document.title set from config.js)
  • The config.js global name → also rename __OPENCONCHO_DEFAULT_HONCHO_URL__ to a configurable name and read from a configurable env at runtime
  • Optionally: allow OPENCONCHO_PRODUCT_NAME env to override the displayed name while keeping image name backward-compatible

The internal names (package, npm scope @openconcho/web, Docker image tag) can stay as-is for backward compat — only the user-visible brand strings need to be configurable.

Happy to send a PR if maintainers agree on the approach.

Alternatives considered

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions