Skip to navigation

Customize README

View as Markdown

Each SDK includes a README.md file in its root directory that provides an overview of the SDK and instructions for working with the associated API.

By default, Fern generates the README automatically with usage examples and API details. For a complete example of a generated SDK README, see Intercom’s Python SDK.

Although each SDK has its own README, you can configure the content for every target in the top-level docs.readme block of sdk-config.yml. Set docs.readme in a target to override it for one SDK.

Configuration options

sdk-config.yml
docs:
readme:
bannerLink: "https://example.com/banner"
introduction: "Welcome to our API"
apiReferenceLink: "https://docs.example.com"
apiName: "Example Product"
disabledSections:
- "contributing"
defaultEndpoint:
method: "POST"
path: "/users"
stream: false
customSections:
- title: "Custom Section"
content: |
This is a custom section.
features:
authentication:
- method: "POST"
path: "/auth/login"
- method: "GET"
path: "/auth/profile"
users:
- method: "GET"
path: "/users"
- method: "POST"
path: "/users"
apiName
string

The API name displayed in the README.

introduction
string

Custom introductory Markdown for the README.

string

The URL linked as the API Reference.

string

The destination URL for the README banner.

disabledSections
list of strings

Generated README sections to omit.

customSections
list of objects

Additional sections inserted into the README. Each section has a title and Markdown content.

defaultEndpoint
object

The endpoint used for the primary README example, set with method, path, and optionally stream.

features
map of lists

Named feature groups and the endpoints demonstrated by each group. Each endpoint is an object with method, path, and optionally stream.

sdk-config.yml doesn’t have the exampleStyle option or language-specific custom sections yet. To use them with generators.yml, see the Legacy README configuration.

Additional customization

To go beyond the available configuration options, you can manually edit the README.md file. Then, add it to the .fernignore file to prevent it from being overwritten during regeneration.