Skip to content

Flareforge Configuration

It is best practice to treat Flareforge’s configuration file as the source of truth for configuring a project.

flareforge.jsonc
{
"site": {},
"i18n": {
"locales": ["en"],
"defaultLocale": "en"
},
"pricing": {
"plans": []
},
"taskDefinition": {
"groups": []
},
"authProviders": ["google"],
"features": {
"showModeToggle": true,
"enableInvoices": true,
"enableSupport": true
},
}
  • forge object optional

    • app string optional
      • Path to the app directory, relative to the config file. Defaults to "app".
    • locales string optional
      • Path to the locales directory, relative to the config file. Defaults to "locales".
    • temp string optional
      • Path to the temporary directory for generated files. Defaults to ".flareforge".
  • i18n object optional

    • locales string[] required
      • An array of supported locale codes (e.g., ["en", "fr"]). Defaults to ["en"].
    • defaultLocale string required
      • The default locale for non-prefixed paths (e.g., /). Defaults to "en".
  • site object optional

    • See the Site section below for more information.
  • pricing object required

    • See the Pricing section below for more information.
  • taskDefinition object required

  • authProviders string[] required

    • An array of authentication providers to enable.
    • Available options are google, apple, email.
    • Defaults to ["google"].
  • features object optional

    • An object containing feature flags to enable or disable specific features in your application.
      • showModeToggle boolean optional
        • Controls whether the mode toggle (e.g., dark/light mode) is displayed in the UI.
      • enableInvoices boolean optional
        • Enables the invoice management feature.
      • enableSupport boolean coming soon
        • Enables support features in the application.

Defines theme colors for both light and dark modes using valid OKLCH color strings.

  • brandColor object required
    • light object required
      • main string required
      • foreground string required
      • primary string required
      • primaryForeground string required
    • dark object required
      • main string required
      • foreground string required
      • primary string required
      • primaryForeground string required

Defines the pricing plans available for your application.

  • plans Plan[] required
    • An array of plan objects. Each plan can be of type credit or subscription.
  • slug string required
    • A unique identifier for the plan.
  • name string required
    • The display name of the plan.
  • price number required
    • The cost of the plan.
  • description string required
    • A short description of the plan.
  • cta object required
    • Call-to-action button configuration with label and variant properties.
    • Refer to the Plan CTA section below for details.
  • icon string optional
  • percentOff number optional
    • A discount percentage to display on the plan card.
  • features string[] optional
    • A list of features included in the plan.
  • type 'credit' required
    • Specifies a one-time purchase plan.
  • credits number required
    • The number of credits provided upon purchase.
  • label string required
    • The text displayed on the call-to-action button.
  • variant 'default' | 'glow' required
    • The visual style of the button, either default or glow.

Defines the structure of tasks your application will process. It is composed of groups of fields.

  • groups Group[] required
    • An array of group objects, where each group defines a logical set of data fields.
    • Refer to the Group properties section below for details.
  • key string required
    • A unique identifier for the group.
  • name string required
    • The human-readable name for the group.
  • description string optional
    • A description of the group’s purpose.
  • dynamic object optional
    • Configuration to allow multiple instances of this group in a single task.
      • enabled boolean required
        • If true, users can add multiple instances of this group.
      • min, max, default number optional
        • Define the limits and default count for dynamic groups.
  • fields Field[] required
    • An array of field objects that make up the group.
    • Refer to the Field properties section below for details.
  • name string required
    • The key for the field in the data object.
  • label string required
    • The display label for the field in the UI.
  • type 'text' | 'textarea' | 'asset' required
    • The type of input to render for the field.
  • required boolean optional
    • Whether the field is mandatory. Defaults to false.
  • help string optional
    • Help text displayed to the user.
  • placeholder string optional
    • Placeholder text for the input field.