> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://buildwithfern.com/learn/llms.txt. # Swift configuration > Configure Swift SDK generator settings including clientClassName, moduleName, environmentEnumName, and nullableAsOptional options. You can customize the behavior of the Swift SDK generator in `generators.yml`: **`generators.yml`** ```yaml {6-11} title="generators.yml" groups: swift-sdk: generators: - name: fern-swift-sdk version: 0.36.1 config: clientClassName: YourClientName environmentEnumName: YourCustomEnvironment moduleName: MyCustomModule enableWireTests: false nullableAsOptional: true ``` **`clientClassName`** `string` The name of the generated client class. This allows you to customize the class name that users will instantiate when using your SDK. --- **`environmentEnumName`** `string` The name of the generated environment enum. This allows you to customize the enum name that defines your API environments (such as production, staging, development) and ensures consistent naming across SDK generations. --- **`moduleName`** `string` The module name used in client code (e.g., `import MyCustomModule`). When provided, this name is used consistently across the library, product, and target. --- **`maxRetries`** `number` The default number of retries for failed requests. When not set, the generated SDK uses its own built-in default. SDK users can still override this per-request via request options. --- **`enableWireTests`** `boolean` — default: true Generates [mock server (wire) tests](/learn/sdks/deep-dives/testing#mock-server-tests) to verify that the SDK sends the correct HTTP requests and correctly handles responses per the API spec. --- **`nullableAsOptional`** `boolean` — default: false When enabled, nullable fields are decoded as Swift optionals (`T?`) instead of the `Nullable` wrapper type. This simplifies type handling but loses the ability to distinguish between explicit `null` values and absent fields. When disabled (default), nullable fields use the `Nullable` wrapper type which preserves the distinction between fields explicitly set to `null` and fields that are missing from the response. --- > Configure Swift SDK generator settings including clientClassName, moduleName, environmentEnumName, and nullableAsOptional options.