Flareforge Configuration
It is best practice to treat Flareforge’s configuration file as the source of truth for configuring a project.
Sample configuration
Section titled “Sample configuration”{ "site": {}, "i18n": { "locales": ["en"], "defaultLocale": "en" }, "pricing": { "plans": [] }, "taskDefinition": { "groups": [] }, "authProviders": ["google"], "features": { "showModeToggle": true, "enableInvoices": true, "enableSupport": true },}Main configuration
Section titled “Main configuration”-
forgeobject optionalappstring optional- Path to the app directory, relative to the config file. Defaults to
"app".
- Path to the app directory, relative to the config file. Defaults to
localesstring optional- Path to the locales directory, relative to the config file. Defaults to
"locales".
- Path to the locales directory, relative to the config file. Defaults to
tempstring optional- Path to the temporary directory for generated files. Defaults to
".flareforge".
- Path to the temporary directory for generated files. Defaults to
-
i18nobject optionallocalesstring[] required- An array of supported locale codes (e.g.,
["en", "fr"]). Defaults to["en"].
- An array of supported locale codes (e.g.,
defaultLocalestring required- The default locale for non-prefixed paths (e.g.,
/). Defaults to"en".
- The default locale for non-prefixed paths (e.g.,
-
siteobject optional- See the Site section below for more information.
-
pricingobject required- See the Pricing section below for more information.
-
taskDefinitionobject required- See the Task definitions section below for more information.
-
authProvidersstring[] required- An array of authentication providers to enable.
- Available options are
google,apple,email. - Defaults to
["google"].
-
featuresobject optional- An object containing feature flags to enable or disable specific features in your application.
showModeToggleboolean optional- Controls whether the mode toggle (e.g., dark/light mode) is displayed in the UI.
enableInvoicesboolean optional- Enables the invoice management feature.
enableSupportboolean coming soon- Enables support features in the application.
- An object containing feature flags to enable or disable specific features in your application.
Defines theme colors for both light and dark modes using valid OKLCH color strings.
brandColorobject requiredlightobject requiredmainstring requiredforegroundstring requiredprimarystring requiredprimaryForegroundstring required
darkobject requiredmainstring requiredforegroundstring requiredprimarystring requiredprimaryForegroundstring required
Pricing
Section titled “Pricing”Defines the pricing plans available for your application.
plansPlan[] required- An array of plan objects. Each plan can be of type
creditorsubscription.
- An array of plan objects. Each plan can be of type
slugstring required- A unique identifier for the plan.
namestring required- The display name of the plan.
pricenumber required- The cost of the plan.
descriptionstring required- A short description of the plan.
ctaobject required- Call-to-action button configuration with
labelandvariantproperties. - Refer to the Plan CTA section below for details.
- Call-to-action button configuration with
iconstring optional- A valid Lucide icon name to display for the plan.
percentOffnumber optional- A discount percentage to display on the plan card.
featuresstring[] optional- A list of features included in the plan.
type'credit' required- Specifies a one-time purchase plan.
creditsnumber required- The number of credits provided upon purchase.
Plan CTA
Section titled “Plan CTA”labelstring required- The text displayed on the call-to-action button.
variant'default' | 'glow' required- The visual style of the button, either
defaultorglow.
- The visual style of the button, either
Task definitions
Section titled “Task definitions”Defines the structure of tasks your application will process. It is composed of groups of fields.
groupsGroup[] 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.
keystring required- A unique identifier for the group.
namestring required- The human-readable name for the group.
descriptionstring optional- A description of the group’s purpose.
dynamicobject optional- Configuration to allow multiple instances of this group in a single task.
enabledboolean required- If
true, users can add multiple instances of this group.
- If
min,max,defaultnumber optional- Define the limits and default count for dynamic groups.
- Configuration to allow multiple instances of this group in a single task.
fieldsField[] required- An array of field objects that make up the group.
- Refer to the Field properties section below for details.
namestring required- The key for the field in the data object.
labelstring required- The display label for the field in the UI.
type'text' | 'textarea' | 'asset' required- The type of input to render for the field.
requiredboolean optional- Whether the field is mandatory. Defaults to
false.
- Whether the field is mandatory. Defaults to
helpstring optional- Help text displayed to the user.
placeholderstring optional- Placeholder text for the input field.