---
title: reed import
description: Convert an existing Fern project into a Reed project.
---

```sh
reed import --from fern --source <fern-dir> [--dir <path>] [--content <path>]
```

Converts an existing Fern project — its `docs.yml` and content — into a `docs.json` plus a
`content/` tree.

**Prerequisites:** none.

## Options

<ParamField name="--from" type='"fern"' required>
  The source platform. `fern` is currently the only supported value.
</ParamField>

<ParamField name="--source" type="path" required>
  The source project directory, resolved against the current directory.
</ParamField>

<ParamField name="--dir" type="path">
  Where the generated `docs.json` is written. Defaults to the current directory.
</ParamField>

<ParamField name="--content" type="path">
  Where converted MDX is written. Defaults to `<dir>/content`.
</ParamField>

Like `reed init`, `import` writes a `docs.schema.json` next to `docs.json` and points
`$schema` at it.

## Expect to finish the job by hand

`import` is a starting point, not a migration. On a real project of any size, expect the
generated config to build only after manual work — component props that do not map
cleanly, navigation shapes Fern permits and Reed does not, and content whose dialect needs
declaring.

The first thing to check after importing is `content.dialect`. Imported MDX is Fern's
dialect, and leaving the field at its `"reed"` default produces a wave of `DS-S03`
diagnostics about missing required props. See
[Content dialect](/docs/authoring/dialect).

Run `reed check` immediately after importing and work through what it reports. It is
unconditionally offline and needs no setup, so the loop is fast.
