Skip to content

Customizing & White-Label

This guide covers the technical aspects of customizing Flow-Like — from simple theme changes to complete rebranding. For white-label licensing and business options, see Enterprise White-Labeling.

Customization LevelComplexityWhat You Can Change
ThemesLowColors, fonts, light/dark mode
BrandingLowLogo, app name, metadata
ComponentsMediumUI elements, layouts
Node EditorMediumNode appearance, canvas settings
Engine EmbeddingHighIntegrate into your own product

Flow-Like uses Tailwind CSS with CSS custom properties. The theme system supports:

  • Light and dark modes
  • Custom color palettes
  • Multiple built-in themes (Cosmic Night, Bubblegum, Neo Brutalism, etc.)

Themes are defined using CSS custom properties in HSL format:

:root {
--background: 0 0% 100%;
--foreground: 222.2 84% 4.9%;
--primary: 222.2 47.4% 11.2%;
--primary-foreground: 210 40% 98%;
--accent: 210 40% 96.1%;
--muted: 210 40% 96.1%;
--border: 214.3 31.8% 91.4%;
--destructive: 0 84.2% 60.2%;
--ring: 222.2 84% 4.9%;
--radius: 0.5rem;
}
.dark {
--background: 222.2 84% 4.9%;
--foreground: 210 40% 98%;
/* ... dark mode overrides */
}
  1. Define your color palette as HSL values
  2. Create CSS custom properties for each semantic color
  3. Add the theme to the theme selector in packages/ui/components/theme-provider.tsx

Replace these files in apps/desktop/public/:

FileUsage
app-logo.webpLight mode logo
app-logo-light.webpDark mode logo
favicon.icoBrowser favicon
android-chrome-*.pngAndroid icons
apple-touch-icon.pngiOS icon

Update the app name in these locations:

apps/desktop/src-tauri/tauri.conf.json
{
"productName": "Your App Name",
"identifier": "com.yourcompany.yourapp"
}
apps/desktop/package.json
{
"name": "your-app-name",
"productName": "Your App Name"
}
flow-like.config.json
{
"appName": "Your App Name"
}

The UI is built on shadcn/ui components in packages/ui/components/ui/.

  1. Global styles — Modify packages/ui/styles/globals.css
  2. Component variants — Edit component files in packages/ui/components/ui/
  3. Instance overrides — Pass className props to components

Flow-Like uses Lucide icons:

import { Plus, Settings, Workflow } from "lucide-react";
<Plus className="h-4 w-4" />
<Settings className="h-5 w-5 text-muted-foreground" />

Customize nodes in the visual editor:

  • Category colors — Defined per node category
  • Icons — SVG icons referenced in node definitions
  • Pin styling — Input/output pin appearance

Configurable canvas options:

SettingLocation
Grid sizeEditor settings
Snap-to-gridEditor settings
Zoom limitspackages/ui/components/flow/
Background patternCanvas component
Connection line styleEdge components

For deeper integration, you can embed Flow-Like’s workflow engine into your own product.

Use flow-like as a Cargo dependency:

[dependencies]
flow-like = { git = "https://github.com/TM9657/flow-like" }

The React workflow editor can be embedded as a component. Contact us for integration guidance.

Execute workflows via the API:

Terminal window
POST /api/v1/apps/{app_id}/events/{event_id}/invoke
Content-Type: application/json
{
"payload": { ... }
}

→ For engine embedding and white-label licensing, see Enterprise White-Labeling.


FilePurpose
flow-like.config.jsonRuntime configuration
apps/desktop/src-tauri/tauri.conf.jsonDesktop app settings
packages/ui/tailwind.config.tsTailwind theme
packages/ui/styles/globals.cssGlobal CSS