Fern: Generate Type-Safe SDKs and API Documentation from OpenAPI
This repository profile is provided by osrepos.com, an open source repository discovery platform.

Summary
Fern is a powerful platform that streamlines API development by transforming your API definitions into production-ready SDKs and comprehensive documentation. It supports various API specifications, including OpenAPI, and offers multi-language SDKs, interactive developer documentation, and AI-powered search. This tool significantly enhances the developer experience by automating crucial parts of the API lifecycle.
Repository Information
Topics
Click on any tag to explore related repositories
Use at your own risk
OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.
Introduction
Fern is an innovative platform designed to simplify the process of creating and maintaining API SDKs and documentation. By taking your API definitions, such as OpenAPI, it automatically generates type-safe SDKs in multiple programming languages and beautiful, interactive developer documentation. This automation helps teams deliver a consistent and high-quality developer experience for their APIs.
Installation
Getting started with Fern is straightforward. You'll need Node 18+ installed.
First, install the Fern CLI globally:
npm install -g fern-api
Next, initialize Fern with your OpenAPI specification. You can point to a local file or a URL:
fern init --openapi ./path/to/openapi.yml
# or
fern init --openapi https://link.buildwithfern.com/plantstore-openapi
This command sets up the necessary configuration files in a fern/ directory.
Examples
After initializing Fern, you can generate your SDKs and documentation.
To generate your SDKs, simply run:
fern generate
This command processes your API definition and outputs your SDKs, for example, in /generated/sdks/typescript.
Fern also excels at building and hosting comprehensive API documentation. You can see examples of documentation built with Fern at:
Why use Fern?
Fern offers several compelling reasons for API providers to adopt it:
- Multi-language SDKs: Generate type-safe SDKs in TypeScript, Python, Java, Go, Ruby, PHP, C#, Swift, and Rust, ensuring broad compatibility for your users.
- Automated Documentation: Produce interactive, feature-rich developer documentation with auto-generated API and SDK references, dark mode, and customizable branding.
- AI Search: Enhance user experience with an AI assistant trained on your documentation, APIs, and SDKs, providing instant answers to developer questions.
- Broad Specification Support: Supports leading API specifications including OpenAPI (REST, Webhooks), AsyncAPI (WebSockets), Protobuf (gRPC), and OpenRPC.
- Streamlined Workflow: Automates the often tedious and error-prone process of SDK and documentation generation, allowing developers to focus on core API logic.
Links
- GitHub Repository: https://github.com/fern-api/fern
- Official Documentation: https://buildwithfern.com/learn/home
- Join the Community on Slack: https://buildwithfern.com/slack
Related repositories
Similar repositories that may be relevant next.
awesome-ai: A Curated List of 400+ AI APIs, Tools, and Frameworks
August 7, 2026
The awesome-ai repository by edwardtay offers a comprehensive, curated list of over 400 AI APIs, tools, frameworks, and platforms. Spanning more than 40 categories, it serves as an invaluable resource for developers and researchers navigating the vast landscape of artificial intelligence. This list helps users discover solutions for LLMs, agents, image/video generation, MLOps, and more.

httmock: A Powerful Mocking Library for Python Requests
August 3, 2026
httmock is an essential Python library designed for mocking HTTP requests made by the popular `requests` library. It allows developers to easily simulate API responses, making it ideal for testing applications that interact with external services. With httmock, you can control network interactions, ensuring reliable and repeatable tests without relying on actual network calls.

toapi: Declaratively Turn Any Website into a JSON API
July 24, 2026
toapi is a powerful Python library designed to transform any website into a clean JSON API declaratively. It enables users to define desired data fields using CSS selectors, fetching and parsing web pages on demand. With built-in caching and support for dynamic content, toapi simplifies web data extraction without complex crawlers or databases.

dogpile.cache: A Robust Python Caching API for Various Backends
May 9, 2026
dogpile.cache is a Python caching API designed to offer a generic interface to diverse caching backends. It builds upon the "dogpile lock" concept, ensuring efficient resource creation while allowing other threads to access previous versions. This project serves as a modern, more efficient replacement for the Beaker caching system, developed by the same author.
Source repository
Open the original repository on GitHub.
17 counted GitHub visits