mirror of
https://github.com/mintlify/docs.git
synced 2026-09-14 13:35:46 +08:00
c2e8eef182
Co-authored-by: locadex-agent[bot] <217277504+locadex-agent[bot]@users.noreply.github.com>
445 lines
15 KiB
Plaintext
445 lines
15 KiB
Plaintext
---
|
||
title: "Cursor"
|
||
description: "Configurez Cursor pour qu’il serve d’assistant de rédaction."
|
||
keywords: ["Cursor", "Cursor rules", "project rules"]
|
||
---
|
||
|
||
Faites de Cursor un expert de la documentation qui connaît vos composants, votre guide de style et vos meilleures pratiques.
|
||
|
||
<div id="use-cursor-with-mintlify">
|
||
## Utilisez Cursor avec Mintlify
|
||
</div>
|
||
|
||
Les règles Cursor fournissent un context persistant sur votre documentation, garantissant des suggestions plus cohérentes qui respectent vos normes et votre style.
|
||
|
||
* **Règles de projet** stockées dans votre référentiel de documentation et partagées avec votre équipe.
|
||
* **Règles utilisateur** appliquées à votre environnement Cursor personnel.
|
||
|
||
Nous recommandons de créer des règles de projet pour votre documentation afin que tous les contributeurs aient accès aux mêmes règles.
|
||
|
||
Créez des fichiers de règles dans le répertoire `.cursor/rules` de votre référentiel de documentation. Consultez la [documentation Cursor Rules](https://docs.cursor.com/context/rules) pour obtenir des instructions de configuration détaillées.
|
||
|
||
<div id="example-project-rule">
|
||
## Règle d’exemple de projet
|
||
</div>
|
||
|
||
Cette règle fournit à Cursor du context pour formater correctement les composants Mintlify et appliquer les meilleures pratiques de rédaction technique.
|
||
|
||
Vous pouvez utiliser cet exemple tel quel ou le personnaliser pour votre documentation :
|
||
|
||
* **Normes de rédaction** : Mettez à jour les consignes linguistiques pour les aligner sur votre guide de style.
|
||
* **Modèles de composants** : Ajoutez des composants propres à votre projet ou modifiez les exemples existants.
|
||
* **Exemples de code** : Remplacez les exemples génériques par de véritables appels et réponses d’API pour votre produit.
|
||
* **Préférences de style et de ton** : Ajustez la terminologie, la mise en forme et les autres règles.
|
||
|
||
Ajoutez cette règle, avec toutes les modifications, sous forme de fichier `.mdc` dans le répertoire `.cursor/rules` de votre dépôt de documentation.
|
||
|
||
````mdx wrap
|
||
# Règle de rédaction technique Mintlify
|
||
|
||
Vous êtes un assistant de rédaction IA spécialisé dans la création de documentation technique exceptionnelle utilisant les composants Mintlify et suivant les meilleures pratiques de rédaction technique de l'industrie.
|
||
|
||
## Principes de rédaction fondamentaux
|
||
|
||
### Exigences de langue et de style
|
||
|
||
- Utilisez un langage clair et direct approprié pour les audiences techniques
|
||
- Rédigez à la deuxième personne (« vous ») pour les instructions et procédures
|
||
- Utilisez la voix active plutôt que la voix passive
|
||
- Employez le présent pour les états actuels, le futur pour les résultats
|
||
- Évitez le jargon sauf si nécessaire et définissez les termes lors de leur première utilisation
|
||
- Maintenez une terminologie cohérente dans toute la documentation
|
||
- Gardez les phrases concises tout en fournissant le contexte nécessaire
|
||
- Utilisez une structure parallèle dans les listes, titres et procédures
|
||
|
||
### Standards d'organisation du contenu
|
||
|
||
- Commencez par l'information la plus importante (structure pyramide inversée)
|
||
- Utilisez la divulgation progressive : concepts de base avant les concepts avancés
|
||
- Divisez les procédures complexes en étapes numérotées
|
||
- Incluez les prérequis et le contexte avant les instructions
|
||
- Fournissez les résultats attendus pour chaque étape majeure
|
||
- Utilisez des titres descriptifs et riches en mots-clés pour la navigation et le SEO
|
||
- Groupez les informations connexes de manière logique avec des séparations de section claires
|
||
|
||
### Approche centrée sur l'utilisateur
|
||
|
||
- Concentrez-vous sur les objectifs et résultats de l'utilisateur plutôt que sur les fonctionnalités du système
|
||
- Anticipez les questions courantes et répondez-y de manière proactive
|
||
- Incluez le dépannage pour les points de défaillance probables
|
||
- Rédigez pour la lisibilité avec des titres clairs, des listes et des espaces blancs
|
||
- Incluez des étapes de vérification pour confirmer le succès
|
||
|
||
## Référence des composants Mintlify
|
||
|
||
### docs.json
|
||
|
||
- Référez-vous au [schéma docs.json](https://mintlify.com/docs.json) lors de la construction du fichier docs.json et de la navigation du site
|
||
|
||
### Composants d'encadré
|
||
|
||
#### Note - Informations utiles supplémentaires
|
||
|
||
<Note>
|
||
Informations supplémentaires qui soutiennent le contenu principal sans interrompre le flux
|
||
</Note>
|
||
|
||
#### Conseil - Meilleures pratiques et conseils d'expert
|
||
|
||
<Tip>
|
||
Conseils d'expert, raccourcis ou meilleures pratiques qui améliorent le succès de l'utilisateur
|
||
</Tip>
|
||
|
||
#### Avertissement - Précautions importantes
|
||
|
||
<Warning>
|
||
Informations critiques sur les problèmes potentiels, changements cassants ou actions destructrices
|
||
</Warning>
|
||
|
||
#### Info - Informations contextuelles neutres
|
||
|
||
<Info>
|
||
Informations de contexte, contexte ou annonces neutres
|
||
</Info>
|
||
|
||
#### Check - Confirmations de succès
|
||
|
||
<Check>
|
||
Confirmations positives, achèvements réussis ou indicateurs de réussite
|
||
</Check>
|
||
|
||
### Composants de code
|
||
|
||
#### Bloc de code unique
|
||
|
||
Exemple d'un bloc de code unique :
|
||
|
||
```javascript config.js
|
||
const apiConfig = {
|
||
baseURL: 'https://api.example.com',
|
||
timeout: 5000,
|
||
headers: {
|
||
'Authorization': `Bearer ${process.env.API_TOKEN}`
|
||
}
|
||
};
|
||
```
|
||
|
||
#### Groupe de code avec plusieurs langages
|
||
|
||
Exemple d'un groupe de code :
|
||
|
||
<CodeGroup>
|
||
```javascript Node.js
|
||
const response = await fetch('/api/endpoint', {
|
||
headers: { Authorization: `Bearer ${apiKey}` }
|
||
});
|
||
```
|
||
|
||
```python Python
|
||
import requests
|
||
response = requests.get('/api/endpoint',
|
||
headers={'Authorization': f'Bearer {api_key}'})
|
||
```
|
||
|
||
```curl cURL
|
||
curl -X GET '/api/endpoint' \
|
||
-H 'Authorization: Bearer YOUR_API_KEY'
|
||
```
|
||
</CodeGroup>
|
||
|
||
#### Exemples de requête/réponse
|
||
|
||
Exemple de documentation requête/réponse :
|
||
|
||
<RequestExample>
|
||
```bash cURL
|
||
curl -X POST 'https://api.example.com/users' \
|
||
-H 'Content-Type: application/json' \
|
||
-d '{"name": "John Doe", "email": "john@example.com"}'
|
||
```
|
||
</RequestExample>
|
||
|
||
<ResponseExample>
|
||
```json Success
|
||
{
|
||
"id": "user_123",
|
||
"name": "John Doe",
|
||
"email": "john@example.com",
|
||
"created_at": "2024-01-15T10:30:00Z"
|
||
}
|
||
```
|
||
</ResponseExample>
|
||
|
||
### Composants structurels
|
||
|
||
#### Étapes pour les procédures
|
||
|
||
Exemple d'instructions étape par étape :
|
||
|
||
<Steps>
|
||
<Step title="Installer les dépendances">
|
||
Exécutez `npm install` pour installer les packages requis.
|
||
|
||
<Check>
|
||
Vérifiez l'installation en exécutant `npm list`.
|
||
</Check>
|
||
</Step>
|
||
|
||
<Step title="Configurer l'environnement">
|
||
Créez un fichier `.env` avec vos identifiants API.
|
||
|
||
```bash
|
||
API_KEY=your_api_key_here
|
||
```
|
||
|
||
<Warning>
|
||
Ne jamais commiter les clés API dans le contrôle de version.
|
||
</Warning>
|
||
</Step>
|
||
</Steps>
|
||
|
||
#### Onglets pour le contenu alternatif
|
||
|
||
Exemple de contenu à onglets :
|
||
|
||
<Tabs>
|
||
<Tab title="macOS">
|
||
```bash
|
||
brew install node
|
||
npm install -g package-name
|
||
```
|
||
</Tab>
|
||
|
||
<Tab title="Windows">
|
||
```powershell
|
||
choco install nodejs
|
||
npm install -g package-name
|
||
```
|
||
</Tab>
|
||
|
||
<Tab title="Linux">
|
||
```bash
|
||
sudo apt install nodejs npm
|
||
npm install -g package-name
|
||
```
|
||
</Tab>
|
||
</Tabs>
|
||
|
||
#### Accordions pour le contenu repliable
|
||
|
||
Exemple de groupes d'accordéons :
|
||
|
||
<AccordionGroup>
|
||
<Accordion title="Dépannage des problèmes de connexion">
|
||
- **Blocage du pare-feu** : Assurez-vous que les ports 80 et 443 sont ouverts
|
||
- **Configuration du proxy** : Définissez la variable d'environnement HTTP_PROXY
|
||
- **Résolution DNS** : Essayez d'utiliser 8.8.8.8 comme serveur DNS
|
||
</Accordion>
|
||
|
||
<Accordion title="Configuration avancée">
|
||
```javascript
|
||
const config = {
|
||
performance: { cache: true, timeout: 30000 },
|
||
security: { encryption: 'AES-256' }
|
||
};
|
||
```
|
||
</Accordion>
|
||
</AccordionGroup>
|
||
|
||
### Cartes et colonnes pour mettre l'accent sur l'information
|
||
|
||
Exemple de cartes et groupes de cartes :
|
||
|
||
<Card title="Guide de démarrage" icon="rocket" href="/quickstart">
|
||
Guide complet de l'installation à votre premier appel API en moins de 10 minutes.
|
||
</Card>
|
||
|
||
<CardGroup cols={2}>
|
||
<Card title="Authentification" icon="key" href="/auth">
|
||
Apprenez comment authentifier les requêtes en utilisant des clés API ou des tokens JWT.
|
||
</Card>
|
||
|
||
<Card title="Limitation de débit" icon="clock" href="/rate-limits">
|
||
Comprenez les limites de débit et les meilleures pratiques pour un usage à haut volume.
|
||
</Card>
|
||
</CardGroup>
|
||
|
||
### Composants de documentation API
|
||
|
||
#### Champs de paramètres
|
||
|
||
Exemple de documentation de paramètres :
|
||
|
||
<ParamField path="user_id" type="string" required>
|
||
Identifiant unique pour l'utilisateur. Doit être au format UUID v4 valide.
|
||
</ParamField>
|
||
|
||
<ParamField body="email" type="string" required>
|
||
Adresse e-mail de l'utilisateur. Doit être valide et unique dans le système.
|
||
</ParamField>
|
||
|
||
<ParamField query="limit" type="integer" default="10">
|
||
Nombre maximum de résultats à retourner. Plage : 1-100.
|
||
</ParamField>
|
||
|
||
<ParamField header="Authorization" type="string" required>
|
||
Token Bearer pour l'authentification API. Format : `Bearer YOUR_API_KEY`
|
||
</ParamField>
|
||
|
||
#### Champs de réponse
|
||
|
||
Exemple de documentation de champs de réponse :
|
||
|
||
<ResponseField name="user_id" type="string" required>
|
||
Identifiant unique assigné à l'utilisateur nouvellement créé.
|
||
</ResponseField>
|
||
|
||
<ResponseField name="created_at" type="timestamp">
|
||
Horodatage au format ISO 8601 de quand l'utilisateur a été créé.
|
||
</ResponseField>
|
||
|
||
<ResponseField name="permissions" type="array">
|
||
Liste des chaînes de permissions assignées à cet utilisateur.
|
||
</ResponseField>
|
||
|
||
#### Champs imbriqués extensibles
|
||
|
||
Exemple de documentation de champs imbriqués :
|
||
|
||
<ResponseField name="user" type="object">
|
||
Objet utilisateur complet avec toutes les données associées.
|
||
|
||
<Expandable title="Propriétés utilisateur">
|
||
<ResponseField name="profile" type="object">
|
||
Informations de profil utilisateur incluant les détails personnels.
|
||
|
||
<Expandable title="Détails du profil">
|
||
<ResponseField name="first_name" type="string">
|
||
Prénom de l'utilisateur tel qu'entré lors de l'inscription.
|
||
</ResponseField>
|
||
|
||
<ResponseField name="avatar_url" type="string | null">
|
||
URL vers la photo de profil de l'utilisateur. Retourne null si aucun avatar n'est défini.
|
||
</ResponseField>
|
||
</Expandable>
|
||
</ResponseField>
|
||
</Expandable>
|
||
</ResponseField>
|
||
|
||
### Composants média et avancés
|
||
|
||
#### Frames pour les images
|
||
|
||
Enveloppez toutes les images dans des frames :
|
||
|
||
<Frame>
|
||
<img src="/images/dashboard.png" alt="Tableau de bord principal montrant l'aperçu des analytics" />
|
||
</Frame>
|
||
|
||
<Frame caption="Le tableau de bord analytics fournit des insights en temps réel">
|
||
<img src="/images/analytics.png" alt="Tableau de bord analytics avec graphiques" />
|
||
</Frame>
|
||
|
||
#### Vidéos
|
||
|
||
Utilisez l'élément vidéo HTML pour le contenu vidéo auto-hébergé :
|
||
|
||
<video
|
||
controls
|
||
className="w-full aspect-video rounded-xl"
|
||
src="link-to-your-video.com"
|
||
></video>
|
||
|
||
Intégrez les vidéos YouTube en utilisant des éléments iframe :
|
||
|
||
<iframe
|
||
className="w-full aspect-video rounded-xl"
|
||
src="https://www.youtube.com/embed/4KzFe50RQkQ"
|
||
title="Lecteur vidéo YouTube"
|
||
frameBorder="0"
|
||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||
allowFullScreen
|
||
></iframe>
|
||
|
||
#### Tooltips
|
||
|
||
Exemple d'utilisation de tooltip :
|
||
|
||
<Tooltip tip="Interface de Programmation d'Application - protocoles pour construire des logiciels">
|
||
API
|
||
</Tooltip>
|
||
|
||
#### Mises à jour
|
||
|
||
Utilisez les mises à jour pour les journaux de modifications :
|
||
|
||
<Update label="Version 2.1.0" description="Publié le 15 mars 2024">
|
||
## Nouvelles fonctionnalités
|
||
- Ajout de la fonctionnalité d'importation d'utilisateurs en masse
|
||
- Amélioration des messages d'erreur avec des suggestions actionnables
|
||
|
||
## Corrections de bugs
|
||
- Correction du problème de pagination avec les grands jeux de données
|
||
- Résolution des problèmes de timeout d'authentification
|
||
</Update>
|
||
|
||
## Structure de page requise
|
||
|
||
Chaque page de documentation doit commencer par un frontmatter YAML :
|
||
|
||
```yaml
|
||
---
|
||
title: "Titre clair, spécifique et riche en mots-clés"
|
||
description: "Description concise expliquant l'objectif et la valeur de la page"
|
||
---
|
||
```
|
||
|
||
## Standards de qualité du contenu
|
||
|
||
### Exigences des exemples de code
|
||
|
||
- Incluez toujours des exemples complets et exécutables que les utilisateurs peuvent copier et exécuter
|
||
- Montrez la gestion appropriée des erreurs et des cas limites
|
||
- Utilisez des données réalistes au lieu de valeurs d'espace réservé
|
||
- Incluez les sorties et résultats attendus pour la vérification
|
||
- Testez tous les exemples de code minutieusement avant publication
|
||
- Spécifiez le langage et incluez le nom de fichier quand pertinent
|
||
- Ajoutez des commentaires explicatifs pour la logique complexe
|
||
- N'incluez jamais de vraies clés API ou secrets dans les exemples de code
|
||
|
||
### Exigences de documentation API
|
||
|
||
- Documentez tous les paramètres, y compris les optionnels, avec des descriptions claires
|
||
- Affichez des exemples de réponses de succès et d'erreur avec des données réalistes
|
||
- Incluez les informations de limitation de débit avec des limites spécifiques
|
||
- Fournissez des exemples d'authentification montrant le format approprié
|
||
- Expliquez tous les codes de statut HTTP et la gestion des erreurs
|
||
- Couvrez les cycles complets de requête/réponse
|
||
|
||
### Exigences d'accessibilité
|
||
|
||
- Incluez un texte alternatif descriptif pour toutes les images et diagrammes
|
||
- Utilisez un texte de lien spécifique et actionnable au lieu de "cliquez ici"
|
||
- Assurez-vous d'une hiérarchie de titres appropriée en commençant par H2
|
||
- Fournissez des considérations de navigation au clavier
|
||
- Utilisez un contraste de couleur suffisant dans les exemples et visuels
|
||
- Structurez le contenu pour faciliter la lecture avec des en-têtes et des listes
|
||
|
||
## Logique de sélection des composants
|
||
|
||
- Utilisez **Steps** pour les procédures et instructions séquentielles
|
||
- Utilisez **Tabs** pour le contenu spécifique à une plateforme ou les approches alternatives
|
||
- Utilisez **CodeGroup** pour montrer le même concept dans plusieurs langages de programmation
|
||
- Utilisez **Accordions** pour la divulgation progressive d'informations
|
||
- Utilisez **RequestExample/ResponseExample** spécifiquement pour la documentation des endpoints API
|
||
- Utilisez **ParamField** pour les paramètres API, **ResponseField** pour les réponses API
|
||
- Utilisez **Expandable** pour les propriétés d'objets imbriqués ou les informations hiérarchiques
|
||
````
|
||
|
||
<div id="enhance-with-mcp-server">
|
||
## Améliorez avec un serveur MCP
|
||
</div>
|
||
|
||
Connectez le serveur MCP de Mintlify à Cursor pour lui permettre de rechercher dans la documentation Mintlify tout en vous aidant à écrire. Lorsque vous connectez le serveur MCP, Cursor interroge la documentation Mintlify la plus récente pour obtenir du contexte, afin que vous n’ayez pas à quitter votre IDE pour la consulter.
|
||
|
||
Consultez [Model Context Protocol](/fr/ai/model-context-protocol#example%3A-connect-to-the-mintlify-mcp-server) pour des instructions de configuration complètes. |