All 188 Dependencies

Every package Fern depends on, ranked by repo health score.

Fern is an open-source developer-experience platform for API providers. Point it at an OpenAPI spec (or its own more expressive Fern Definition YAML, plus AsyncAPI and Protobuf support), and its CLI compiles that definition into a versioned Intermediate Representation that every downstream generator consumes. From that single IR, Fern produces idiomatic, type-safe client SDKs for TypeScript, Python, Java, Go, Ruby, PHP, C#, Rust, and Swift, plus server boilerplate and an OpenAPI spec exporter for teams that started from Fern's own definition format.

Beyond code generation, Fern builds and hosts a full documentation website from the same API definition: an interactive API reference, versioned markdown pages, dark mode, and an AI-powered search assistant trained on a team's docs, APIs, and SDKs. Docs built with Fern are used in production by companies like ElevenLabs, LaunchDarkly, and Hume — the CLI can scaffold and preview these sites locally before publishing.

The project originated from Y Combinator's 2023 batch and is maintained by Birch Solutions under the Fern name. It's structured as a large TypeScript monorepo (pnpm + Turborepo) containing the CLI, the IR compiler, the OpenAPI/AsyncAPI/Protobuf importers, every per-language generator, and a `seed/` directory of golden-file SDK fixtures used to regression-test all nine generators on every change. Language generators also ship as Docker images (the `fernapi/fern-*-sdk` family) so they can run locally or in Fern's remote generation service.

Fern's differentiator versus generating SDKs directly from OpenAPI templates is that IR-first design: adding a new spec format doesn't require touching nine generators, and the IR can evolve (via a dedicated `ir-migrations` package) without breaking SDKs already generated by older CLI versions. The CLI itself, all generators, and the OpenAPI/Protobuf importers are Apache-2.0 licensed and free to self-run; the hosted docs dashboard and AI search are Fern's commercial SaaS offering.

14 reqwest-sse 0.1 outdated 26 mdast-util-gfm catalog: 26 mdast-util-math catalog: 26 mdast-util-mdx catalog: 26 micromark-extension-mdxjs catalog: 27 esbuild-plugin-polyfill-node catalog: 27 micromark-extension-math catalog: 27 urlencoding 2.1 31 mdast-util-mdx-jsx ^3.1.3 32 httpx-aiohttp 0.1.8 outdated 33 httpdate 1 35 object-hash catalog: 35 tmp-promise catalog: 36 multipart-stream-builder ^1.0 36 serde_json_path 0.7 37 is-ci catalog: 38 gray-matter catalog: 38 jmespath.rs 0.3 outdated 39 dedent catalog: 39 json-schema catalog: 39 micromark-extension-gfm catalog: 39 ordered-set ^4.1.0 40 remark-gfm catalog: 40 unist-util-visit catalog: 41 PSR-18: HTTP Client ^1.0 41 http-factory ^1.0 42 ajv-formats catalog: 43 HTTPlug Discovery ^1.0 43 PSR-7 HTTP Message Interfaces ^1.1 || ^2.0 44 pluralize 8.0.0 44 remark-math catalog: 44 remark-math catalog: 45 fast-levenshtein catalog: 45 form-data ^4.0.6 45 uuid v1.6.0 46 node-xml2js catalog: 46 openapi-types ^12.1.3 47 cross-env catalog: 47 hmac 0.12 outdated 47 jsonwebtoken catalog: 47 tinycolor2 catalog: 48 rehype catalog: 48 tokio-tungstenite 0.24 outdated 49 cors catalog: 49 find-up catalog: 49 mime-types catalog: 49 tar catalog: 50 next-mdx-remote catalog: 50 serde_yaml 0.9.34 50 strip-ansi catalog: 52 minimatch catalog: 54 chardet catalog: 55 serde_qs 1.1.1 56 base64 0.22 outdated 56 dotenvy 0.15 56 ts-morph catalog: 57 ora catalog: 57 url 1 outdated 57 url 2.3.2 58 node-fetch catalog: 58 unicode-normalization 0.1.25 58 unified catalog: 59 fs-extra catalog: 59 glob catalog: 59 url-join catalog: 60 Ajv ^8.18.0 62 Commander.js ^14.0.3 outdated 62 mdast-util-from-markdown catalog: 62 tempfile 3 63 stub_uploader ^2.9.0.20240316 outdated 63 stub_uploader ^2.33.0 outdated 64 bytes 1 64 semver ^7.6.2 64 serial_test 3.4.0 outdated 65 Chrono 0.4 65 Lodash catalog: 66 HTTPX ^0.27.0 outdated 66 octokit.js ^4.1.4 outdated 66 remark catalog: 67 anyhow 1 68 node-jwks-rsa catalog: 68 num-bigint 0.4 69 open catalog: 69 webbrowser 1 70 Chalk catalog: 70 MDX catalog: 70 readable-stream ^4.7.0 70 secrecy 0.10 71 diff catalog: 71 path-to-regexp catalog: 72 pin-project 1.1 73 serde 1 73 serde 1.0 73 ua-parser-js catalog: 73 uuid catalog: 74 qs catalog: 74 sha2 0.10 outdated 74 testify v1.9.0 outdated 75 ordered-float 4.5 outdated 75 rand 0.8 outdated 76 Day.js catalog: 76 Requests ^2.33.0 76 simple-git catalog: 77 tracing 0.1 77 tracing 0.2 outdated 77 tracing 0.3 outdated 78 dotenv ^16.0.0 outdated 78 thiserror 2 78 yargs ^17.4.1 outdated 79 esbuild catalog: 80 file-type catalog: 80 keyring-rs 3 outdated 80 tsup catalog: 80 yaml catalog: 81 js-yaml catalog: 81 reqwest 0.12 outdated 82 JSONPath catalog: 83 MSW (Mock Service Worker) 2.11.2 outdated 83 futures 0.3 83 futures 0.3 84 mypy ==1.13.0 outdated 84 pytest-xdist ^3.6.1 84 serde_json 1 84 typing_extensions >= 4.0.0 84 ws catalog: 85 tsx catalog: 87 Moment.js catalog: 87 Octokit REST catalog: 87 uuid 1.0 88 Clap 4 88 Clap 4 88 Clap 0.2 outdated 88 python-dateutil ^2.9.0 outdated 89 Immer ^10.1.1 outdated 89 Typer ^0.6.1 outdated 89 cspell catalog: 89 es-toolkit catalog: 90 Express catalog: 90 Oxlint 1.72.0 outdated 90 boto3 1.35.76 90 execa ^5.1.1 outdated 90 pytest-asyncio ^1.0.0 91 Black ^26.3.1 91 Inquirer.js catalog: 91 Inquirer.js ^9.2.23 outdated 91 Protobuf-ES catalog: 91 Ruff ==0.11.5 outdated 91 Stylelint ^14.11.0 outdated 91 Zod catalog: 91 isort ^6.0.1 outdated 91 prettier catalog: 91 websockets >=12.0 92 FastAPI >=0.124.0 92 PHPUnit ^12.5.22 outdated 92 Playwright ^1.52.0 92 undici catalog: 93 LangChain ^1.2.15 93 LangChain DeepSeek ^1.1.14 outdated 93 PHP CS Fixer 3.5.0 outdated 93 Puppeteer catalog: 93 Pydantic ^2.8.2 93 Pydantic ^2.18.2 outdated 93 Tokio 1 93 Tokio 0.7 outdated 93 Vitest catalog: 93 Vitest catalog: 93 libc 0.2 93 posthog-js ^5.35.1 outdated 93 sentry-cli catalog: 93 urllib3 >=2.6.3,<3.0.0 94 Guzzle ^7.4 outdated 94 jest ^29.7.0 outdated 94 jest ^29.7.0 outdated 94 jest ^29.7.0 outdated 95 @babel/core catalog: 95 @babel/core catalog: 95 @babel/core catalog: 95 Axios catalog: 95 ESLint catalog: 95 GraphQL.js catalog: 95 Sentry JavaScript (@sentry/browser) ^10.48.0 outdated 95 TypeScript catalog: 95 aiohttp >=3.14.1,<4 95 setuptools ^80.9.0 outdated 96 NumPy ^2.0 96 pytest ^9.0.3 97 OpenAI Python SDK ^2.26.0 outdated 97 webpack ^5.105.4

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers