Welcome

Generators

Fern's generators are written in the language they generate. They're open source and actively maintained, so you can raise a PR or open an issue if you'd like to suggest an improvement.

SDK language support

Whether you call them SDKs, client libraries, or wrappers, Fern's generators create code that makes it easier for developers to integrate with your API.

LanguageAvailabilityPackage Managerfern add <generator> command
TypeScript Node.jsGenerally availableNPMfernapi/fern-typescript-node-sdk
TypeScript BrowserGenerally availableNPMfernapi/fern-typescript-browser-sdk
PythonGenerally availablePyPIfernapi/fern-python-sdk
JavaGenerally availableMavenfernapi/fern-java-sdk
GoGenerally availableProxy Modulefernapi/fern-go-sdk
C#In developmentNuGetfernapi/fern-csharp-sdk
RubyComing by end of yearGemsfernapi/fern-ruby-sdk
PHPComing next yearPackagistfernapi/fern-php-sdk

Looking for a language that's not listed? Let us know.

Server boilerplate framework support

Whether you call them server interfaces, server stubs, or API implementation stubs, Fern's generators create boilerplate for your backend that makes it easier for you to implement your API. Plus, your API will be consistent across your server, clients, and docs.

FrameworkLanguageAvailabilityfern add <generator> Command
ExpressJavaScriptGenerally availablefernapi/fern-typescript-express
FastAPIPythonGenerally availablefernapi/fern-fastapi-server
SpringJavaGenerally availablefernapi/fern-java-spring
Go standard libraryGoComing next yearfernapi/fern-go-server
.NETC#Coming next yearfernapi/fern-csharp-dotnet
Ruby on RailsRubyComing next yearfernapi/fern-ruby-rails
FlaskPythonComing next yearfernapi/fern-python-flask
DjangoPythonComing next yearfernapi/fern-python-django

Looking for a framework that's not listed? Let us know.

OpenAPI export

Export your Fern Definition to an OpenAPI Description file.

Availabilityfern add <generator> Command
Generally availablefernapi/fern-openapi

For more information, see Exporting OpenAPI.

Releases

All generator releases are published in the Releases section of the GitHub repository. You can directly use these version numbers in your generator configuration files.

Releases on GitHub

For example, if you want to pin to a specific version of the TypeScript/Node.js SDK generator, 0.7.1, you can use the following configuration:

1
2
3
4
5
groups:
  my-group:
    generators:
      - name: fernapi/fern-typescript-node-sdk
        version: 0.7.1