Rebranding

Wishpr is designed to be fully white-labeled. You have two options - both require zero changes to application code.

1Edit branding.ts (recommended)

Open lib/branding.ts and change any value. This single file controls the entire app identity, colors, card themes, limits, and feature flags.

lib/branding.ts
export const branding = {
  name: "YourApp",
  tagline: "Your custom tagline",
  domain: "your-domain.com",

  org: {
    name: "Your Company",
    url: "https://yourcompany.com",
    github: "https://github.com/you/repo",
  },

  colors: {
    primary: "#6366f1",
    secondary: "#a78bfa",
    accent: "#1e1b4b",
  },

  cardThemes: [
    { id: "custom", label: "Brand", gradient: ["#6366f1", "#a78bfa"], badge: "#6366f1" },
  ],

  features: {
    pinProtection: true,
    messageExport: true,
    shareCards: true,
    threeD: true,
  },

  limits: {
    maxMessageLength: 1000,
    rateLimitPerMinute: 5,
  },
}

2Use environment variables (no code access needed)

Set these in your Vercel project settings, Netlify, or .env.local. Env vars override branding.ts defaults.

.env.local
NEXT_PUBLIC_APP_NAME=SecretBox
NEXT_PUBLIC_APP_TAGLINE=Share secrets anonymously
NEXT_PUBLIC_APP_DOMAIN=secretbox.io
NEXT_PUBLIC_BRAND_NAME=YourCompany Inc.
NEXT_PUBLIC_BRAND_URL=https://yourcompany.com
NEXT_PUBLIC_GITHUB_URL=https://github.com/you/repo
NEXT_PUBLIC_PRIMARY_COLOR=#6366f1
NEXT_PUBLIC_SECONDARY_COLOR=#a78bfa
NEXT_PUBLIC_ACCENT_COLOR=#1e1b4b

What gets rebranded automatically

  • Logo text - Header, footer, share cards, watermarks
  • Domain - All share URLs, display text, and meta tags
  • Colors - Gradients, buttons, accents, card themes
  • Organization - Footer credits and links
  • GitHub button - Shows/hides based on URL
  • SEO meta tags - OG images, descriptions, titles
  • Card themes - Custom gradient themes for share cards
  • Feature toggles - Enable/disable PIN, export, 3D, etc.

After changes, redeploy your app. Everything updates automatically across every page.