Jamdesk Documentation logo

Migration Guide

Moving from another documentation platform? Jamdesk can help automate the transition, or you can migrate manually for full control.

Switching from Mintlify, GitBook, Docusaurus, ReadMe, or another platform? The Mintlify tab covers automated CLI migration. Everything else is a manual process, but it's straightforward if your content is already Markdown.

Markdown yields the best results. If your current platform supports Markdown export, use it. Jamdesk is built on MDX, so Markdown content migrates cleanly.

Choose Your Path

The Jamdesk CLI can automatically convert Mintlify projects.

Automated Migration

1
Install the CLI
npm install -g jamdesk
2
Run the migration
jamdesk migrate

This reads your mint.json, converts it to docs.json, and rewrites component syntax where needed.

3
Review and adjust

Check the generated docs.json and MDX files. The CLI handles most conversions, but you should verify component usage and navigation structure.

Configuration Mapping

The CLI converts mint.json to docs.json automatically. These are the key differences so you can verify the output.

Mintlify (mint.json):

{
  "name": "My Docs",
  "navigation": [
    { "group": "Getting Started", "pages": ["introduction", "quickstart"] }
  ],
  "colors": { "primary": "#0D9373" },
  "topbarLinks": [{ "name": "Blog", "url": "https://example.com/blog" }]
}

Jamdesk (docs.json):

{
  "$schema": "https://jamdesk.com/docs.json",
  "name": "My Docs",
  "theme": "jam",
  "colors": { "primary": "#0D9373" },
  "navbar": {
    "links": [{ "label": "Blog", "href": "https://example.com/blog" }]
  },
  "navigation": {
    "groups": [
      { "group": "Getting Started", "pages": ["introduction", "quickstart"] }
    ]
  }
}

Component Compatibility

Most Mintlify components have direct equivalents in Jamdesk. A few have different names or syntax.

Mintlify ComponentJamdesk EquivalentNotes
<Card><Card>Same syntax
CardGroup<Columns>Use cols prop for column count
<Columns><Columns>Same syntax
<Accordion><Accordion>Same syntax
<Tabs> / <Tab><Tabs> / <Tab>Same syntax
<Steps> / <Step><Steps> / <Step>Same syntax
<CodeGroup><CodeGroup>Same syntax
<Tip>, <Note>, <Warning><Tip>, <Note>, <Warning>Same syntax
<ResponseField><ParamField>Different name
<Snippet>Import from /snippets/Different approach

Common Issues

Rename CardGroup to <Columns>. The cols prop works the same way. The jamdesk migrate CLI handles this, but check any files you've edited manually.

Rename <ResponseField> to <ParamField>. Props stay the same.

{/* Before */}
<ResponseField name="id" type="string" required>
  The unique identifier
</ResponseField>

{/* After */}
<ParamField name="id" type="string" required>
  The unique identifier
</ParamField>

Mintlify uses a <Snippet> component. In Jamdesk, use standard MDX imports from a /snippets/ directory.

{/* Before (Mintlify) */}
<Snippet file="my-snippet.mdx" />

{/* After (Jamdesk) */}
import MySnippet from '/snippets/my-snippet.mdx'

<MySnippet />

Mintlify's topbarLinks and topbarCtaButton both map to navbar.links in docs.json. The name field becomes label, and url becomes href.

Post-Migration Checklist

All pages render without errors
Navigation structure matches your original site
Internal links work correctly
Images and assets display properly
Code blocks have correct syntax highlighting
Search indexes your content

What's Next?

Directory Structure

Learn how to organize your documentation

docs.json Reference

Configure your site settings