ShipAI Docs
Features

Branding

Env-driven product identity and AI identity customization with shared branding config package.

Branding is centralized in @ai/branding and consumed across apps and server logic.

No-code customization

Most branding changes are environment-driven and do not require touching core application logic.

Branding Architecture

  • packages/branding/src/config.ts reads env and resolves defaults
  • getBranding() provides runtime-safe config
  • getCachedBranding() is available for performance-sensitive read paths
  • getServerBranding() is server-side accessor alias

The package resolves:

  • app name / short name / tagline
  • AI name / identity / greeting
  • support and company metadata
  • logo fallback initial
  • primary color token
  • premium tier display name

Environment Variables

NEXT_PUBLIC_APP_NAME="AI Assistant"
NEXT_PUBLIC_APP_NAME_SHORT="Assistant"
NEXT_PUBLIC_APP_TAGLINE="AI-Powered Platform"

APP_AI_NAME="AI Assistant"
APP_AI_IDENTITY="an AI assistant designed to help you with various tasks"
NEXT_PUBLIC_AI_GREETING="Hello! How can I help you today?"

NEXT_PUBLIC_SUPPORT_EMAIL="support@example.com"
NEXT_PUBLIC_COMPANY_NAME="Your Company"

NEXT_PUBLIC_LOGO_INITIAL="A"
NEXT_PUBLIC_PRIMARY_COLOR="#000000"
NEXT_PUBLIC_PREMIUM_TIER_NAME="Prime"

Minimal Rebrand Workflow

Update env values

Set branding values in apps/app/.env, apps/admin/.env, and apps/web/.env.

Verify experience

Check title/header/footer text, AI greeting/identity copy, and premium tier labels.

On this page