Icon HelpCircleForumIcon Link

⌘K

Icon HelpCircleForumIcon Link
Config File

Icon LinkConfig File

Here, you can learn more about all configuration options.

Icon Linkworkspace

Relative directory path to Forc workspace.
workspace: './sway-programs',
Icon InfoCircle
The property workspace is incompatible with contracts , predicates , and scripts .

Icon Linkcontracts

List of relative directory paths to Sway contracts.
contracts: ['./sway-programs/contracts'],
Icon InfoCircle
The property contracts is incompatible with workspace .

Icon Linkpredicates

List of relative directory paths to Sway predicates.
predicates: ['./sway-programs/predicates'],
Icon InfoCircle
The property predicates is incompatible with workspace .

Icon Linkscripts

List of relative directory paths to Sway scripts.
scripts: ['./sway-programs/scripts'],
Icon InfoCircle
The property scripts is incompatible with workspace .

Icon Linkoutput

Relative directory path to use when generating Typescript definitions.
output: './src/sway-programs-api',

Icon LinkproviderUrl

The URL to use when deploying contracts.
// Default: http://127.0.0.1:4000/graphql
providerUrl: 'http://network:port/graphql',
Icon InfoCircle
When autostartFuelCore property is set to true, the providedUrl is overridden by that of the local short-lived fuel-core node started by the fuels dev command.

Icon LinkprivateKey

Wallet private key, used when deploying contracts.
This property should ideally come from env — process.env.MY_PRIVATE_KEY.
privateKey: '0xa449b1ffee0e2205fa924c6740cc48b3b473aa28587df6dab12abc245d1f5298',
Icon InfoCircle
When autostartFuelCore property is set to true, the privateKey is overridden with the consensusKey of the local short-lived fuel-core node started by the fuels dev command.

Icon LinkchainConfig

Icon InfoCircle
Relative file path to custom chainConfig.json file to use with fuel-core.
This will take effect only when autoStartFuelCore is true.
chainConfig: './my/custom/chainConfig.json',

Icon LinkautoStartFuelCore

Icon InfoCircle
When set to true, it will automatically:
  1. Starts a short-lived fuel-core node as part of the fuels dev command
  2. Override property providerUrl with the URL for the recently started fuel-core node
autoStartFuelCore: true,
If set to false, you must spin up a fuel-core node by yourself and set the URL for it via providerUrl .

Icon LinkfuelCorePort

Icon InfoCircle
Port to use when starting a local fuel-core node.
// Default: first free port, starting from 4000
fuelCorePort: 4000,

Icon LinkforcBuildFlags

Icon InfoCircle
Sway programs are compiled in debug mode by default.
Here you can customize all build flags, e.g. to build programs in release mode.
// Default: []
forcBuildFlags: ['--release'],
Check also:

Icon LinkdeployConfig

You can supply a ready-to-go deploy configuration object:
deployConfig: {
  gasPrice: 1,
},
Or use a function for crafting dynamic deployment flows:
  • If you need to fetch and use configs or data from a remote data source
  • If you need to use IDs from already deployed contracts — in this case, we can use the options.contracts property to get the necessary contract ID. For example:
deployConfig: async (options: ContractDeployOptions) => {
  // ability to fetch data remotely
  await Promise.resolve(`simulating remote data fetch`);
 
  // get contract by name
  const { contracts } = options;
 
  const contract = contracts.find(({ name }) => {
    const found = name === MY_FIRST_DEPLOYED_CONTRACT_NAME;
    return found;
  });
 
  if (!contract) {
    throw new Error('Contract not found!');
  }
 
  return {
    gasPrice: 1,
    storageSlots: [
      {
        key: '0x..',
        /**
         * Here we could initialize a storage slot,
         * using the relevant contract ID.
         */
        value: contract.contractId,
      },
    ],
  };
},

Icon LinkonSuccess

Pass a callback function to be called after a successful run.
Parameters:
  • event — The event that triggered this execution
  • config — The loaded config (fuels.config.ts)
onSuccess: (event: CommandEvent, config: FuelsConfig) => {
  console.log('fuels:onSuccess', { event, config });
},

Icon LinkonFailure

Pass a callback function to be called in case of errors.
Parameters:
  • error — Original error object
  • config — The loaded config (fuels.config.ts)
onFailure: (error: Error, config: FuelsConfig) => {
  console.log('fuels:onFailure', { error, config });
},

Icon LinkuseBuiltinForc

Opt-in or out from using built-in forc binaries.
When not supplied, will default to using the system binaries.
If system binaries are absent, print a warning and use built-in ones instead.
// Default: undefined
useBuiltinForc: false,
Check also:

Icon LinkuseBuiltinFuelCore

Opt-in or out from using built-in fuel-core binaries.
When not supplied, will default to using the system binaries.
If system binaries are absent, print a warning and use built-in ones instead.
// Default: undefined
useBuiltinFuelCore: false,
Check also: