Jamdesk Documentation logo

Guía de Migración

¿Vienes de otra plataforma de documentación? Jamdesk puede automatizar la transición o migrar manualmente para tener control total.

Los proyectos de Mintlify tienen un camino de un solo comando: jamdesk migrate lee mint.json, escribe docs.json y reescribe tu MDX en su lugar. ¿Vienes de GitBook, Docusaurus, ReadMe, Confluence u otra plataforma? La pestaña "Otras Plataformas" describe los pasos manuales — son breves si puedes exportar tu contenido como Markdown.

Exporta como Markdown primero si puedes. Jamdesk está construido sobre MDX, por lo que cualquier contenido ya en Markdown se integra con un simple renombrado a .mdx y unas pocas líneas de frontmatter.

Elige Tu Ruta

El CLI realiza la mayor parte del trabajo por ti.

Guía de Migración de Mintlify a Jamdesk

Lee el tutorial de migración con contexto, ejemplos y consejos.

Migración Automatizada

1
Instala el CLI
npm install -g jamdesk
2
Ejecuta la migración
jamdesk migrate

Desde la raíz del proyecto, esto se ejecuta en un solo paso:

  • Lee mint.json y escribe docs.json
  • Renombra componentes obsoletos en archivos MDX (p. ej. CardGroupColumns)
  • Mueve archivos MDX de snippets huérfanos a /snippets/ y reescribe cada importación relativa al directorio padre (../foo/bar.mdx) como una ruta relativa a la raíz (/snippets/foo/bar.mdx)
  • Extrae componentes inline que usan React hooks a /snippets/<name>.tsx con la directiva 'use client', y reescribe el MDX original para importar desde /snippets/
  • Corrige automáticamente problemas mecánicos de sintaxis MDX que provocarían errores en el build

El comando es idempotente — vuelve a ejecutarlo tras ediciones y solo procesa lo que es nuevo. Todo lo que no puede gestionar de forma segura se imprime como advertencia con el archivo, la importación y la acción a tomar.

3
Revisa y ajusta

Comprueba el docs.json generado y los archivos MDX. Verifica la estructura de navegación y cualquier advertencia impresa por el CLI.

Mapeo de Configuración

El CLI convierte mint.json a docs.json automáticamente. Estas son las diferencias clave para que puedas verificar el resultado.

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"] }
    ]
  }
}

Compatibilidad de Componentes

La mayoría de los componentes de Mintlify tienen equivalentes directos en Jamdesk. Algunos tienen nombres o sintaxis diferentes.

Componente MintlifyEquivalente en JamdeskNotas
<Card><Card>Misma sintaxis
CardGroup<Columns>Usa la prop cols para el número de columnas
<Columns><Columns>Misma sintaxis
<Accordion><Accordion>Misma sintaxis
<Tabs> / <Tab><Tabs> / <Tab>Misma sintaxis
<Steps> / <Step><Steps> / <Step>Misma sintaxis
<CodeGroup><CodeGroup>Misma sintaxis
<Tip>, <Note>, <Warning><Tip>, <Note>, <Warning>Misma sintaxis
<ResponseField><ParamField>Nombre diferente
<Snippet>Importar desde /snippets/Enfoque diferente

Problemas Comunes

jamdesk migrate renombra CardGroup a Columns en todos los archivos MDX. La prop cols se mantiene sin cambios. Revisa los archivos que hayas editado después de ejecutar la migración.

Renombra <ResponseField> a <ParamField>. Las props son las mismas.

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

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

Jamdesk resuelve únicamente importaciones de /snippets/* relativas a la raíz. Los proyectos de Mintlify suelen mantener archivos MDX de snippets en cualquier parte del árbol e importarlos con rutas relativas al directorio padre (import X from '../shared/x.mdx').

jamdesk migrate realiza tres acciones en un solo paso:

  • Detecta archivos MDX que se importan como snippets pero están fuera de /snippets/, los mueve bajo /snippets/ preservando su ruta relativa (para que los snippets con prefijo de idioma como de/foo.mdx no colisionen).
  • Reescribe cada importación de snippet relativa al directorio padre en todos los archivos MDX con la nueva ruta relativa a la raíz.
  • Extrae cualquier componente inline que use React hooks a un archivo 'use client' en /snippets/<name>.tsx y reemplaza la exportación inline con una importación desde /snippets/.

Si usabas el elemento JSX <Snippet file="my-snippet.mdx" /> de Mintlify, sustitúyelo por una importación MDX — ese caso no se reescribe automáticamente:

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

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

<MySnippet />

El reubicador es conservador — si tu proyecto no tiene navegación resuelta, o los movimientos planificados superan max(5, 25%) de todos los archivos MDX, se cancela sin modificar nada e indica el motivo. Vuelve a ejecutarlo tras resolver la causa de cancelación.

Tanto topbarLinks como topbarCtaButton de Mintlify se mapean a navbar.links en docs.json. El campo name pasa a ser label, y url pasa a ser href.

Lista de Verificación Post-Migración

Todas las páginas se renderizan sin errores
La estructura de navegación coincide con el sitio original
Los enlaces internos funcionan correctamente
Las imágenes y los recursos se muestran correctamente
Los bloques de código tienen el resaltado de sintaxis correcto
La búsqueda indexa tu contenido

¿Qué Sigue?

Estructura de Directorios

Aprende a organizar tu documentación

Referencia de docs.json

Configura los ajustes de tu sitio