Skip to main content
Branding is only available in Enterprise Edition.
Pangolin allows you to customize the appearance of your dashboard with your own branding, including colors, logos, and custom text for authentication pages. Branding is configured through the privateConfig.yml file.
Branding is currently available for the entire application only. Organization-specific branding will be available in a future release. Let us know if this is a priority for you.

Setting up Branding

To get started, create a privateConfig.yml file next to your existing config.yml file:
privateConfig.yml
branding:
  app_name: "MyApp"
  
  logo:
    light_path: "/branding/logo-light.svg"
    dark_path: "/branding/logo-dark.svg"
  
  favicon_path: "/branding/favicon.ico"
  
  colors:
    light:
      primary: "hsl(212, 65%, 35%)"
      ring: "hsl(212, 65%, 35%)"
      primary-foreground: "hsl(0 0% 98%)"
    dark:
      primary: "hsl(212, 65%, 45%)"
      ring: "hsl(212, 65%, 35%)"
      primary-foreground: "hsl(0 0% 98%)"

Mounting Branding Assets

For image assets like logos and backgrounds, you need to mount a volume to the Pangolin container to make them accessible to the application:
docker-compose.yml
volumes:
  - ./config:/app/config
  - ./branding:/app/public/branding
Your folder structure should look like this:
.
├── config/
│   ├── config.yml
│   └── privateConfig.yml
└── branding/
    ├── logo-light.svg
    ├── logo-dark.svg
    └── favicon.ico

Reference

All branding configuration options are optional. Only specify the sections you want to customize.

Application Name

app_name
string
The name of your application that appears in various places throughout the UI.Example: "MyApp"

Background Image

background_image_path
string
Path to a custom background image used on authentication pages.Example: "/branding/backgrounds/bg.png"
Requires mounting a volume to /app/public.

Colors

colors
object
Custom color scheme that overrides the default Tailwind classes for shadcn components.Colors can be provided in OKLCH or HSL format for example and apply to both light and dark modes.Color Reference: Available color properties include background, foreground, card, card-foreground, popover, popover-foreground, primary, primary-foreground, secondary, secondary-foreground, muted, muted-foreground, accent, accent-foreground, destructive, destructive-foreground, border, input, ring, radius, and chart-1 through chart-5.Example:
colors:
  light:
    primary: "hsl(212, 65%, 35%)"
    background: "hsl(212, 65%, 35%)"
    foreground: "hsl(0 0% 98%)"
  dark:
    primary: "hsl(212, 65%, 45%)"
    background: "hsl(212, 65%, 35%)"
    foreground: "hsl(0 0% 98%)"
For a complete list of Tailwind color classes used by shadcn components, refer to the shadcn/ui documentation.
Logo configuration for different parts of the application.

Favicon

favicon_path
string
Path to a custom favicon.Example: "/branding/favicon.ico"
Requires mounting a volume to /app/public.
Custom footer links displayed at the bottom of the page.Example:
footer:
  - text: "Privacy Policy"
    href: "https://example.com/privacy"
  - text: "Terms of Service"
    href: "https://example.com/terms"
text
string
The display text for the footer link.
href
string
The URL or path for the footer link.

Login Page

login_page
object
Custom text for the login page.

Signup Page

signup_page
object
Custom text for the signup page.

Resource Auth Page

resource_auth_page
object
Configuration for the resource authentication page shown to users when accessing protected resources.

Emails

emails
object
Email customization settings.

Applying Changes

After creating or modifying privateConfig.yml, you must restart the Pangolin container for changes to take effect.