Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
116 changes: 116 additions & 0 deletions api-playground/sdk-setup.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
---
title: "SDK reference setup"
description: "Generate SDK reference pages from TypeDoc, DocFX, Javadoc, Sphinx, or phpDocumentor artifacts, so all your language SDK docs live inside your Mintlify site."

Check warning on line 3 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L3

Did you really mean 'Javadoc'?

Check warning on line 3 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L3

Did you really mean 'phpDocumentor'?
keywords: ["sdk", "typedoc", "docfx", "javadoc", "sphinx", "phpdoc"]
---

Use the `sdk` navigation property to publish SDK reference pages from artifacts produced by common documentation generators. Mintlify reads the artifact at build time and expands the tab into a set of generated MDX pages with grouped navigation.

## Supported formats

| Format | Generator | Expected artifact |
| -------- | ----------------- | ------------------------------------------ |
| `typedoc` | [TypeDoc](https://typedoc.org/) | JSON export (`typedoc --json out.json`) |

Check warning on line 13 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L13

Use 'JSON' instead of 'json'.
| `docfx` | [DocFX](https://dotnet.github.io/docfx/) | `ManagedReference` YAML output directory |
| `javadoc` | [Javadoc](https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javadoc.html) | Standard doclet HTML output directory (or `.jar`) |

Check warning on line 15 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L15

Did you really mean 'doclet'?
| `sphinx` | [Sphinx](https://www.sphinx-doc.org/) | JSON builder output (`sphinx-build -b json`) |
| `phpdoc` | [phpDocumentor](https://www.phpdoc.org/) | `structure.xml` file |

## Add an SDK reference

Add an `sdk` property to a [tab](/organize/navigation#tabs) in your `docs.json`. Mintlify generates one page per class, module, function, or type in the artifact, organized into groups.

<CodeGroup>

```json Local directory
"navigation": {
"tabs": [
{
"tab": "SPA JS",
"sdk": {
"format": "typedoc",
"source": "sdk-artifacts/spa-js/typedoc.json"
}
}
]
}
```

```json Remote URL
"navigation": {
"tabs": [
{
"tab": "Java SDK",
"sdk": {
"format": "javadoc",
"source": "https://repo1.maven.org/maven2/com/example/sdk/1.0.0/sdk-1.0.0-javadoc.jar"
}
}
]
}
```

```json Custom directory
"navigation": {
"tabs": [
{
"tab": "SPA JS",
"sdk": {
"format": "typedoc",
"source": "sdk-artifacts/spa-js/typedoc.json",
"directory": "libraries/auth0-spa-js"
}
}
]
}
```

</CodeGroup>

<Note>
You must declare `sdk` on a tab. A tab with `sdk` may include `groups`, but no other navigation structures, such as `pages`, `versions`, or `languages`. It also cannot include an `openapi`, `asyncapi`, or `graphql` property.
</Note>

<ParamField path="format" type="string" required>
The documentation generator that produced the artifact. One of `typedoc`, `docfx`, `javadoc`, `sphinx`, or `phpdoc`.
</ParamField>

<ParamField path="source" type="string" required>
A local path to the artifact in your documentation repository or an HTTPS URL to a hosted artifact. Does not accept HTTP URLs.

For single-file formats (`typedoc`, `phpdoc`), point to the file. For directory-shaped formats (`docfx`, `javadoc`, `sphinx`), point to the directory locally, or to a `.zip` or `.jar` archive when remote.
</ParamField>

<ParamField path="directory" type="string">
The directory to store generated pages under. Defaults to `sdk-reference`.
</ParamField>

## Exclude artifacts from your build

Add your artifact directory to [`.mintignore`](/organize/mintignore) so raw generator output is treated as a build input, not published as static files:

Check warning on line 90 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L90

In general, use active voice instead of passive voice ('is treated').

```text .mintignore
sdk-artifacts/
```

## Remote sources

When `source` is an HTTPS URL, Mintlify fetches the artifact at build time. For directory-shaped formats, use a `.zip` archive; for Javadoc, a `.jar` from a package registry like Maven Central also works.

Check warning on line 98 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L98

Use semicolons judiciously.

Check warning on line 98 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L98

Did you really mean 'Javadoc'?

Remote artifacts are capped at 50&nbsp;MB compressed and 200&nbsp;MB extracted, follow a 30-second timeout, and are protected against redirects to private addresses and against zip-slip during extraction.

Check warning on line 100 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L100

In general, use active voice instead of passive voice ('are capped').

Check warning on line 100 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L100

In general, use active voice instead of passive voice ('are protected').

## Generated pages

Each converter produces:

- Grouped navigation (for example, by module, package, or namespace) that Mintlify appends to the tab's `groups`.
- One MDX page per class, function, type, or member documented in the artifact.
- Cross-links between generated pages, so readers can navigate between related types.

If the artifact contains items that don't belong to any group, Mintlify collects them under a `Reference` group.

You can add your own hand-written `groups` to the same tab. They render alongside the generated groups.

## Update your documentation

Mintlify regenerates SDK reference pages when you run `mint dev` or when you push changes to your documentation repository. If the artifact is hosted at an HTTPS URL, updates to the artifact regenerate on the next build.

Check warning on line 116 in api-playground/sdk-setup.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

api-playground/sdk-setup.mdx#L116

In general, use active voice instead of passive voice ('is hosted').
1 change: 1 addition & 0 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,7 @@
"api-playground/mdx-setup",
"api-playground/asyncapi-setup",
"api-playground/graphql-setup",
"api-playground/sdk-setup",
"api-playground/troubleshooting"
]
},
Expand Down
1 change: 1 addition & 0 deletions es.json
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,7 @@
"es/api-playground/mdx-setup",
"es/api-playground/asyncapi-setup",
"es/api-playground/graphql-setup",
"es/api-playground/sdk-setup",
"es/api-playground/troubleshooting"
]
},
Expand Down
128 changes: 128 additions & 0 deletions es/api-playground/sdk-setup.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
---
title: "Configuración de referencia del SDK"
description: "Genera páginas de referencia del SDK a partir de artefactos de TypeDoc, DocFX, Javadoc, Sphinx o phpDocumentor, para que toda la documentación de tus SDK por lenguaje viva dentro de tu sitio de Mintlify."
keywords: ["sdk", "typedoc", "docfx", "javadoc", "sphinx", "phpdoc"]
---

Usa la propiedad de navegación `sdk` para publicar páginas de referencia del SDK a partir de artefactos generados por los generadores de documentación más comunes. Mintlify lee el artefacto en tiempo de compilación y expande la pestaña en un conjunto de páginas MDX generadas con navegación agrupada.

<div id="supported-formats">
## Formatos compatibles
</div>

| Formato | Generador | Artefacto esperado |
| -------- | ----------------- | ------------------------------------------ |
| `typedoc` | [TypeDoc](https://typedoc.org/) | Exportación JSON (`typedoc --json out.json`) |
| `docfx` | [DocFX](https://dotnet.github.io/docfx/) | Directorio de salida YAML `ManagedReference` |
| `javadoc` | [Javadoc](https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javadoc.html) | Directorio de salida HTML del doclet estándar (o `.jar`) |
| `sphinx` | [Sphinx](https://www.sphinx-doc.org/) | Salida del builder JSON (`sphinx-build -b json`) |
| `phpdoc` | [phpDocumentor](https://www.phpdoc.org/) | Archivo `structure.xml` |

<div id="add-an-sdk-reference">
## Agrega una referencia de SDK
</div>

Añade una propiedad `sdk` a una [pestaña](/es/organize/navigation#tabs) en tu `docs.json`. Mintlify genera una página por cada clase, módulo, función o tipo del artefacto, organizadas en grupos.

<CodeGroup>

```json Local directory
"navigation": {
"tabs": [
{
"tab": "SPA JS",
"sdk": {
"format": "typedoc",
"source": "sdk-artifacts/spa-js/typedoc.json"
}
}
]
}
```

```json Remote URL
"navigation": {
"tabs": [
{
"tab": "Java SDK",
"sdk": {
"format": "javadoc",
"source": "https://repo1.maven.org/maven2/com/example/sdk/1.0.0/sdk-1.0.0-javadoc.jar"
}
}
]
}
```

```json Custom directory
"navigation": {
"tabs": [
{
"tab": "SPA JS",
"sdk": {
"format": "typedoc",
"source": "sdk-artifacts/spa-js/typedoc.json",
"directory": "libraries/auth0-spa-js"
}
}
]
}
```

</CodeGroup>

<Note>
Debes declarar `sdk` en una pestaña. Una pestaña con `sdk` puede incluir `groups`, pero ninguna otra estructura de navegación, como `pages`, `versions` o `languages`. Tampoco puede incluir una propiedad `openapi`, `asyncapi` o `graphql`.
</Note>

<ParamField path="format" type="string" required>
El generador de documentación que produjo el artefacto. Uno de `typedoc`, `docfx`, `javadoc`, `sphinx` o `phpdoc`.
</ParamField>

<ParamField path="source" type="string" required>
Una ruta local al artefacto en tu repositorio de documentación o una URL HTTPS a un artefacto alojado. No se aceptan URL HTTP.

Para formatos de un solo archivo (`typedoc`, `phpdoc`), apunta al archivo. Para formatos con estructura de directorio (`docfx`, `javadoc`, `sphinx`), apunta al directorio localmente, o a un archivo `.zip` o `.jar` cuando sea remoto.
</ParamField>

<ParamField path="directory" type="string">
El directorio bajo el cual se almacenan las páginas generadas. El valor predeterminado es `sdk-reference`.
</ParamField>

<div id="exclude-artifacts-from-your-build">
## Excluye los artefactos de tu compilación
</div>

Agrega el directorio de tu artefacto a [`.mintignore`](/es/organize/mintignore) para que la salida sin procesar del generador se trate como una entrada de la compilación y no se publique como archivos estáticos:

```text .mintignore
sdk-artifacts/
```

<div id="remote-sources">
## Fuentes remotas
</div>

Cuando `source` es una URL HTTPS, Mintlify obtiene el artefacto en tiempo de compilación. Para formatos con estructura de directorio, usa un archivo `.zip`; para Javadoc, también funciona un `.jar` de un registro de paquetes como Maven Central.

Los artefactos remotos tienen un límite de 50&nbsp;MB comprimidos y 200&nbsp;MB extraídos, siguen un tiempo de espera de 30 segundos y están protegidos contra redirecciones a direcciones privadas y contra zip-slip durante la extracción.

<div id="generated-pages">
## Páginas generadas
</div>

Cada conversor produce:

- Navegación agrupada (por ejemplo, por módulo, paquete o namespace) que Mintlify añade a los `groups` de la pestaña.
- Una página MDX por cada clase, función, tipo o miembro documentado en el artefacto.
- Enlaces cruzados entre las páginas generadas, para que quienes leen puedan navegar entre tipos relacionados.

Si el artefacto contiene elementos que no pertenecen a ningún grupo, Mintlify los agrupa bajo un grupo `Reference`.

Puedes añadir tus propios `groups` escritos a mano a la misma pestaña. Se renderizan junto con los grupos generados.

<div id="update-your-documentation">
## Actualiza tu documentación
</div>

Mintlify regenera las páginas de referencia del SDK cuando ejecutas `mint dev` o cuando envías cambios a tu repositorio de documentación. Si el artefacto está alojado en una URL HTTPS, las actualizaciones del artefacto se regeneran en la siguiente compilación.
1 change: 1 addition & 0 deletions fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,7 @@
"fr/api-playground/mdx-setup",
"fr/api-playground/asyncapi-setup",
"fr/api-playground/graphql-setup",
"fr/api-playground/sdk-setup",
"fr/api-playground/troubleshooting"
]
},
Expand Down
128 changes: 128 additions & 0 deletions fr/api-playground/sdk-setup.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
---
title: "Configuration de la référence SDK"
description: "Générez des pages de référence SDK à partir d’artefacts TypeDoc, DocFX, Javadoc, Sphinx ou phpDocumentor, afin que toute la documentation de vos SDK par langage vive dans votre site Mintlify."
keywords: ["sdk", "typedoc", "docfx", "javadoc", "sphinx", "phpdoc"]
---

Utilisez la propriété de navigation `sdk` pour publier des pages de référence SDK à partir d’artefacts produits par des générateurs de documentation courants. Mintlify lit l’artefact au moment de la build et développe l’onglet en un ensemble de pages MDX générées avec une navigation regroupée.

<div id="supported-formats">
## Formats pris en charge
</div>

| Format | Générateur | Artefact attendu |
| --------- | ----------------- | --------------------------------------------------- |
| `typedoc` | [TypeDoc](https://typedoc.org/) | Export JSON (`typedoc --json out.json`) |
| `docfx` | [DocFX](https://dotnet.github.io/docfx/) | Répertoire de sortie YAML `ManagedReference` |
| `javadoc` | [Javadoc](https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javadoc.html) | Répertoire de sortie HTML du doclet standard (ou `.jar`) |
| `sphinx` | [Sphinx](https://www.sphinx-doc.org/) | Sortie du builder JSON (`sphinx-build -b json`) |
| `phpdoc` | [phpDocumentor](https://www.phpdoc.org/) | Fichier `structure.xml` |

<div id="add-an-sdk-reference">
## Ajouter une référence SDK
</div>

Ajoutez une propriété `sdk` à un [onglet](/fr/organize/navigation#tabs) dans votre `docs.json`. Mintlify génère une page par classe, module, fonction ou type présent dans l’artefact, organisées en groupes.

<CodeGroup>

```json Local directory
"navigation": {
"tabs": [
{
"tab": "SPA JS",
"sdk": {
"format": "typedoc",
"source": "sdk-artifacts/spa-js/typedoc.json"
}
}
]
}
```

```json Remote URL
"navigation": {
"tabs": [
{
"tab": "Java SDK",
"sdk": {
"format": "javadoc",
"source": "https://repo1.maven.org/maven2/com/example/sdk/1.0.0/sdk-1.0.0-javadoc.jar"
}
}
]
}
```

```json Custom directory
"navigation": {
"tabs": [
{
"tab": "SPA JS",
"sdk": {
"format": "typedoc",
"source": "sdk-artifacts/spa-js/typedoc.json",
"directory": "libraries/auth0-spa-js"
}
}
]
}
```

</CodeGroup>

<Note>
Vous devez déclarer `sdk` sur un onglet. Un onglet avec `sdk` peut inclure `groups`, mais aucune autre structure de navigation, telle que `pages`, `versions` ou `languages`. Il ne peut pas non plus inclure de propriété `openapi`, `asyncapi` ou `graphql`.
</Note>

<ParamField path="format" type="string" required>
Le générateur de documentation qui a produit l’artefact. L’une des valeurs suivantes : `typedoc`, `docfx`, `javadoc`, `sphinx` ou `phpdoc`.
</ParamField>

<ParamField path="source" type="string" required>
Un chemin local vers l’artefact dans votre dépôt de documentation ou une URL HTTPS vers un artefact hébergé. Les URL HTTP ne sont pas acceptées.

Pour les formats à fichier unique (`typedoc`, `phpdoc`), pointez vers le fichier. Pour les formats sous forme de répertoire (`docfx`, `javadoc`, `sphinx`), pointez vers le répertoire en local, ou vers une archive `.zip` ou `.jar` lorsqu’elle est distante.
</ParamField>

<ParamField path="directory" type="string">
Le répertoire dans lequel les pages générées sont stockées. Par défaut, `sdk-reference`.
</ParamField>

<div id="exclude-artifacts-from-your-build">
## Exclure les artefacts de votre build
</div>

Ajoutez votre répertoire d’artefacts à [`.mintignore`](/fr/organize/mintignore) afin que la sortie brute du générateur soit traitée comme une entrée de build, et non publiée en tant que fichiers statiques :

```text .mintignore
sdk-artifacts/
```

<div id="remote-sources">
## Sources distantes
</div>

Lorsque `source` est une URL HTTPS, Mintlify récupère l’artefact au moment de la build. Pour les formats sous forme de répertoire, utilisez une archive `.zip` ; pour Javadoc, un `.jar` provenant d’un registre de paquets comme Maven Central fonctionne également.

Les artefacts distants sont limités à 50&nbsp;Mo compressés et 200&nbsp;Mo extraits, respectent un délai d’expiration de 30 secondes, et sont protégés contre les redirections vers des adresses privées ainsi que contre le zip-slip lors de l’extraction.

<div id="generated-pages">
## Pages générées
</div>

Chaque convertisseur produit :

- Une navigation regroupée (par exemple, par module, package ou namespace) que Mintlify ajoute aux `groups` de l’onglet.
- Une page MDX par classe, fonction, type ou membre documenté dans l’artefact.
- Des liens croisés entre les pages générées, afin que les lecteurs puissent naviguer entre les types associés.

Si l’artefact contient des éléments qui n’appartiennent à aucun groupe, Mintlify les regroupe sous un groupe `Reference`.

Vous pouvez ajouter vos propres `groups` rédigés à la main au même onglet. Ils s’affichent aux côtés des groupes générés.

<div id="update-your-documentation">
## Mettre à jour votre documentation
</div>

Mintlify régénère les pages de référence SDK lorsque vous exécutez `mint dev` ou lorsque vous poussez des modifications vers votre dépôt de documentation. Si l’artefact est hébergé à une URL HTTPS, les mises à jour de l’artefact sont régénérées lors de la prochaine build.
Loading