Aller directement au contenu

Ajouter ou mettre à jour des plugins

Ce guide explique comment ajouter de nouveaux Capacitor plugins au site Web Capgo ou mettre à jour la documentation d'un plugin existant. Cela est utile pour les contributeurs, les gestionnaires et les agents IA aidant à maintenir la documentation.

Lors de l'ajout d'un nouveau plugin à l'écosystème Capgo, vous devez mettre à jour plusieurs fichiers et emplacements sur le site Web pour vous assurer que le plugin apparaisse correctement dans tous les endroits pertinents :

  1. Configuration de la liste des plugins - Ajouter les métadonnées du plugin à la liste principale
  2. Page d'index des plugins - Ajouter un plugin à la page de liste des plugins catégorisés
  3. Navigation de côté - Ajouter un plugin à la barre latérale de documentation
  4. Documentation des plugins - Créer des pages d'aperçu et de démarrage rapide
  5. Tutoriel des plugins - Créer un tutoriel complet
FichierObjectif
/src/config/plugins.tsListe complète des plugins avec métadonnées
/src/content/docs/docs/plugins/index.mdxPage d'index des plugins avec catégories
/astro.config.mjsConfiguration de navigation du côté gauche
/src/content/docs/docs/plugins/[plugin-name]/Répertoire de documentation des plugins
/src/content/plugins-tutorials/en/Fichiers de tutoriel en anglais
  1. Ouvrir /src/config/plugins.ts et ajoutez votre plugin à la actions tableau :

    // First, import an appropriate Heroicon
    import YourIconName from 'astro-heroicons/mini/IconName.astro'
    // Then add to the actions array
    {
    name: '@capgo/your-plugin-name',
    author: 'github.com/Cap-go',
    description: 'Brief description of what the plugin does',
    href: 'https://github.com/Cap-go/your-plugin-name/',
    title: 'Display Name',
    icon: YourIconName,
    }

    Icônes disponibles Vérifiez /node_modules/astro-heroicons/mini/ les icônes disponibles.

  2. Ouvrir /src/content/docs/docs/plugins/index.mdx et ajoutez votre plugin sous la catégorie appropriée :

    <LinkCard
    title="Your Plugin Name"
    description="Brief description of what the plugin does"
    href="/docs/plugins/your-plugin-name/"
    />

    Catégories:

    • Plugins en vedette
    • Plugins de périphérique et de système
    • Plugins multimédia et de caméra
    • Plugins d'utilité
    • Plugins AI et multimédia avancés
    • Plugins de localisation et de services de fond
    • Plugins de communication et d'analytique
    • Plugins de sécurité et de système
    • Fonctionnalités spécifiques à Android
    • Téléchargement et navigation
  3. Ajouter à la navigation latérale

    Ajouter à la navigation latérale

    Ouvrir /astro.config.mjs et ajoutez votre plugin à la configuration de la barre latérale (environ ligne 540) :

    {
    label: 'Your Plugin Name',
    items: [
    { label: 'Overview', link: '/docs/plugins/your-plugin-name/' },
    { label: 'Getting started', link: '/docs/plugins/your-plugin-name/getting-started' },
    ],
    collapsed: true,
    }

    Les plugins sont listés alphabétiquement dans la barre latérale.

  4. Créer un répertoire de documentation pour le plugin

    Sous-titre « Créer un répertoire de documentation pour le plugin »

    Créez un nouveau répertoire pour la documentation de votre plugin :

    Fenêtre de terminal
    mkdir -p /src/content/docs/docs/plugins/your-plugin-name/
  5. Créez /src/content/docs/docs/plugins/your-plugin-name/index.mdx:

    ---
    title: "@capgo/your-plugin-name"
    description: Brief description of the plugin's purpose
    tableOfContents: false
    next: false
    prev: false
    sidebar:
    order: 1
    label: "Introduction"
    hero:
    tagline: Detailed tagline explaining what the plugin does
    image:
    file: ~public/your-plugin-icon.svg
    actions:
    - text: Get started
    link: /docs/plugins/your-plugin-name/getting-started/
    icon: right-arrow
    variant: primary
    - text: Github
    link: https://github.com/Cap-go/your-plugin-name/
    icon: external
    variant: minimal
    ---
    import { Card, CardGrid } from '@astrojs/starlight/components';
    <CardGrid stagger>
    <Card title="Feature 1" icon="puzzle">
    Description of first key feature
    </Card>
    <Card title="Feature 2" icon="rocket">
    Description of second key feature
    </Card>
    <Card title="Cross-platform" icon="puzzle">
    Works on both iOS and Android 📱
    </Card>
    <Card title="Comprehensive Documentation" icon="open-book">
    Check the [Documentation](/docs/plugins/your-plugin-name/getting-started/) to master the plugin.
    </Card>
    </CardGrid>
  6. Créer /src/content/docs/docs/plugins/your-plugin-name/getting-started.mdx:

    ---
    title: Getting Started
    description: Learn how to install and use the plugin in your Capacitor app.
    sidebar:
    order: 2
    ---
    import { Steps } from '@astrojs/starlight/components';
    import { PackageManagers } from 'starlight-package-managers'
    <Steps>
    1. **Install the package**
    <PackageManagers pkg="@capgo/your-plugin-name" pkgManagers={['npm', 'pnpm', 'yarn', 'bun']} />
    2. **Sync with native projects**
    <PackageManagers type="exec" pkg="cap" args="sync" pkgManagers={['npm', 'pnpm', 'yarn', 'bun']} />
    </Steps>
    ## Configuration
    ### iOS Configuration
    [iOS-specific setup instructions]
    ### Android Configuration
    [Android-specific setup instructions]
    ## Usage
    [Basic usage examples]
    ## API Reference
    [Detailed API documentation]
    ## Complete Example
    [Full working example]
    ## Best Practices
    [Recommended practices and tips]
    ## Platform Notes
    [Platform-specific notes and limitations]
  7. Créer /src/content/plugins-tutorials/en/your-plugin-name.md:

    ---
    locale: en
    ---
    # Using @capgo/your-plugin-name Package
    The `@capgo/your-plugin-name` package [brief description]. In this tutorial, we will guide you through the installation, configuration, and usage of this package in your Ionic Capacitor app.
    ## Installation
    [Installation steps]
    ## Configuration
    [Configuration steps for iOS and Android]
    ## API Usage
    [Detailed API usage examples]
    ## Complete Example
    [Full working example]
    ## Best Practices
    [Tips and best practices]
    ## Troubleshooting
    [Common issues and solutions]
    ## Conclusion
    [Summary and links to additional resources]
src/content/docs/docs/plugins/your-plugin-name/
├── index.mdx # Overview page with hero and feature cards
└── getting-started.mdx # Installation and usage guide
src/content/plugins-tutorials/en/
└── your-plugin-name.md # Comprehensive tutorial

Pour les plugins complexes, vous pouvez ajouter des pages de documentation supplémentaires :

src/content/docs/docs/plugins/your-plugin-name/
├── index.mdx
├── getting-started.mdx
├── api-reference.mdx # Detailed API documentation
├── examples.mdx # Additional examples
├── troubleshooting.mdx # Troubleshooting guide
└── migrations.mdx # Migration guides
  • Soyez concis : Gardez les descriptions sous 100 caractères
  • Sois Spécifique : Explique ce que fait le plugin, et non ce qu'il est
  • Utilise des Verbes d'Action : Commence par des verbes comme “Contrôle”, “Intègre”, “Active”

Exemples de Bonnes Pratiques:

  • “Contrôle la lumière du clignotant et de la torche avec un simple bouton d'allumage et d'éteignage”
  • “Intègre le chat en direct Crisp et le support client dans votre application”
  • “Active une authentification sécurisée en utilisant Face ID et Touch ID”

Exemples de Mauvaises Pratiques:

  • “Un plugin pour flash”
  • “Ceci est un plugin Crisp”
  • “Un plugin biométrique”
  1. Démarrez par l'InstallationCommencez toujours par des étapes d'installation claires
  2. Fournir la ConfigurationIncluez les exigences de configuration spécifiques au plateau
  3. Montrer des Exemples d'UtilisationFournissez des exemples de travail code
  4. Incluez la référence APIDocumentez tous les méthodes et paramètres
  5. Ajoutez des Exemples CompletsMontrez des modèles d'utilisation dans le monde réel
  6. Liste de bonnes pratiques: Partagez des conseils pour un usage optimal
  7. Documentez les différences de plateforme: Éclairez les comportements iOS et Android
  8. Ajoutez des solutions de dépannage: Abordez les problèmes courants
  • Utilisez TypeScript pour tous les code exemples
  • Incluez les importations en haut
  • Ajoutez des commentaires expliquant les étapes clés
  • Montrez la gestion des erreurs
  • Démontrer à la fois les utilisations de base et avancées

Utilisez cette liste de vérification lors de l'ajout d'un nouveau plugin :

  • Ajouté le plugin à /src/config/plugins.ts
  • Sélectionné l'icône appropriée de Heroicons
  • Ajouté le plugin à /src/content/docs/docs/plugins/index.mdx sous la catégorie correcte
  • Ajouté une entrée de sidebar dans /astro.config.mjs
  • Créé le répertoire de documentation du plugin
  • Créé index.mdx page d'aperçu
  • Créé getting-started.mdx guide
  • Créé un tutoriel en /src/content/plugins-tutorials/en/
  • Inclut des instructions d'installation
  • Documenté la configuration iOS
  • Documenté la configuration Android
  • Fournit des exemples d'utilisation
  • Ajouté une référence à API
  • Inclut un exemple de travail complet
  • Liste les meilleures pratiques
  • Ajouté des notes spécifiques au plateforme
  • Testé correctement que tous les liens fonctionnent

Référence d'icône

Référence d'icônes

Icônes courantes utilisées pour les plugins (de astro-heroicons/mini/):

IcôneUtilisation
BoltIconÉclair, puissance, énergie
CameraIconCaméra, photo, vidéo
ChatBubbleLeftIconChat, messagerie, communication
FingerPrintIconBiométrie, sécurité, authentification
MapPinIconLocalisation, géolocalisation, cartes
SpeakerWaveIconAudio, son, musique
VideoCameraIconVidéo, enregistrement, streaming
CreditCardIconPaiements, achats
PlayCircleIconLecteurs multimédias, lecteurs vidéo
SignalIconConnectivité, réseau, balise
RadioIconBalise, diffusion, sans fil
ChatBubbleOvalLeftIconRéseaux sociaux, WeChat

Mise à jour des plugins existants

Lors de la mise à jour d'un plugin existant

Lors de la mise à jour d'un plugin existant :

  1. Mettre à jour les numéros de version dans la documentation
  2. Ajouter des guides de migration si des changements de rupture existent
  3. Mettre à jour la référence API avec de nouvelles méthodes
  4. Ajouter de nouveaux exemples pour de nouvelles fonctionnalités
  5. Mettre à jour les exigences du plateforme si modifiées
  6. Réviser les meilleures pratiques en fonction de nouvelles fonctionnalités
  7. Tenir l'enseignement actuel avec les dernières API

Écrire et réviser les documents de plugin en anglais. Les chemins localisés sont générés par les métadonnées du site et traduits à l'égout par le Worker de traduction.

Après avoir ajouté ou mis à jour la documentation du plugin :

  1. Construire le site localement:

    Fenêtre de terminal
    bun run build
  2. Vérifier les erreurs:

    • Vérifier que tous les liens fonctionnent
    • S'assurer que les images chargent correctement
    • Confirmer que les exemples code sont valides
    • Tester que la navigation fonctionne
  3. Afficher une prévisualisation du site:

    Fenêtre de terminal
    bun run dev
  4. Vérifiez que votre plugin est affiché:

    • Vérifiez la page de liste des plugins
    • Vérifiez la navigation du côté gauche
    • Testez toutes les pages de documentation
    • Confirmez que la page de tutoriel fonctionne

Si vous avez besoin d'aide pour ajouter ou mettre à jour la documentation du plugin :

Pour référence, consultez ces plugins bien documentés :

  • Mise à jour: /src/content/docs/docs/plugins/updater/ (plugin complexe avec plusieurs pages)
  • Flash: /src/content/docs/docs/plugins/flash/ (plugin simple, bon exemple de démarrage)
  • Connexion sociale: /src/content/docs/docs/plugins/social-login/ (plugin avec sous-pages)

L'ajout d'un plugin à la documentation Capgo implique :

  1. Ajouter des métadonnées à la configuration maître
  2. Ajouter le plugin à la page d'index de catégorisation
  3. Configurer la navigation de côté
  4. Créer des pages de documentation complètes
  5. Écrire un tutoriel détaillé
  6. Tester toutes les modifications localement

En suivant ce guide, vous vous assurez que les plugins sont documentés de manière cohérente et facilement découvrables par les utilisateurs.