> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Hébergement de bots

> Hébergez vos bots Discord, WhatsApp et Telegram sur la plus grande plateforme d'Amérique latine. Performances d'entreprise, sécurité avancée et outils de développement pour votre projet.

<Frame>
  <img src="https://squarecloud.app/banners/fr/bots.png" alt="Aperçu du service Square Cloud Bots" style={{ borderRadius: "0.2rem" }} />
</Frame>

## Pourquoi choisir Square Cloud ?

Nous sommes la **plus grande plateforme d'hébergement de bots d'Amérique latine**, à laquelle font confiance **80 des 100 plus grands serveurs Discord brésiliens**. Un bot vit ou meurt selon son uptime et sa latence vers les gateways Discord, WhatsApp et Telegram — c'est pourquoi chaque couche de notre stack, du matériel jusqu'à la périphérie du réseau, est optimisée pour maintenir votre processus en ligne et réactif 24/7.

<CardGroup cols={2}>
  <Card title="Performances sur mesure" icon="bolt">
    Chaque bot s'exécute sur des **SSD NVMe Samsung d'entreprise** derrière des liaisons **10 Gbps**, dans un conteneur isolé avec **CPU et RAM appliqués par le noyau** — ainsi le pic de trafic d'un voisin ne devient jamais votre problème de latence.
  </Card>

  <Card title="Un écosystème complet pour les développeurs" icon="code">
    **CLI**, **SDK JavaScript et Python**, une **extension VSCode** et des **GitHub Actions/Webhooks** pour le CI/CD. Déployez depuis votre terminal, votre éditeur ou un `git push`.
  </Card>

  <Card title="Square Shield + Cloudflare" icon="shield-halved">
    Une périphérie **frontalisée par Cloudflare** ainsi que **Square Shield** maintiennent votre bot dans les limites de débit des API des plateformes (Discord et autres), évitant les bannissements et les temps de refroidissement qui mettent un bot hors ligne.
  </Card>

  <Card title="Snapshots instantanés" icon="server">
    **Points de restauration en un clic** inclus sans coût supplémentaire. Revenez en arrière sur un déploiement défaillant en quelques secondes, sans perte de données ni interruption.
  </Card>
</CardGroup>

<Info>
  **Éprouvé à grande échelle :** notre réputation s'est bâtie en faisant tourner les bots des communautés parmi les plus actives d'Amérique latine — le genre de charge soutenue, à fort taux d'événements, qui révèle discrètement les infrastructures fragiles. Le vôtre tourne sur les mêmes clusters.
</Info>

***

## Environnements pris en charge

Nous offrons une large compatibilité pour que vous puissiez développer avec la technologie de votre choix.

### Plateformes

<CardGroup cols={4}>
  <Card title="Discord" icon="discord" />

  <Card title="WhatsApp" icon="whatsapp" />

  <Card title="Telegram" icon="telegram" />

  <Card title="Twitter" icon="twitter" />

  <Card title="Instagram" icon="instagram" />

  <Card title="Facebook" icon="facebook" />

  <Card title="Slack" icon="slack" />

  <Card title="YouTube" icon="youtube" />
</CardGroup>

### Langages

<CardGroup cols={3}>
  <Card title="JavaScript" icon="node-js" href="../articles/getting-started-with-nodejs" />

  <Card title="Python" icon="python" href="../articles/getting-started-with-python" />

  <Card title="Java" icon="java" href="../articles/getting-started-with-java" />

  <Card title="Rust" icon="rust" href="../articles/getting-started-with-rust" />

  <Card title="Elixir" icon="droplet" href="../articles/getting-started-with-elixir" />

  <Card title="PHP" icon="php" href="../articles/getting-started-with-php" />

  <Card title="Go" icon="golang" href="../articles/getting-started-with-go" />

  <Card title="C#" icon="c" href="../articles/getting-started-with-csharp" />

  <Card title="Ruby" icon="gem" href="../articles/getting-started-with-ruby" />
</CardGroup>

<Info>
  En plus de ceux-ci, nous prenons en charge de nombreux autres langages et bibliothèques. Notre infrastructure est flexible pour s'adapter aux besoins de votre projet.
</Info>

***

## Fonctionnalités principales

### Une infrastructure conçue pour les charges de travail permanentes

Chaque cluster tourne sur des **SSD NVMe Samsung d'entreprise** avec des liaisons **10 Gbps**, et votre bot s'exécute dans un conteneur isolé et non privilégié avec des limites dédiées de CPU et de RAM. L'isolation est ce qui transforme le « rapide sur le papier » en rapide en production : votre processus ne se bat jamais contre un voisin bruyant pour l'I/O ou le CPU, ce qui maintient les temps de réponse bas même sous une charge d'événements soutenue.

### Square Shield : rester dans les limites de débit

Discord, WhatsApp et Telegram bannissent les bots qui dépassent les limites de débit de leur gateway et de leur API REST. **Square Shield** se place entre votre bot et ces API, surveillant les schémas de requêtes pour vous maintenir dans le budget autorisé — la différence entre un bot qui évolue proprement et un bot mis en refroidissement hors ligne au pire moment.

### Opérez avec une visibilité totale

<AccordionGroup>
  <Accordion title="Snapshots en un clic">
    Les points de restauration vous permettent de revenir en arrière sur un mauvais déploiement en quelques secondes — sans perte de données ni interruption. Les plans Pro et Enterprise ajoutent en plus des snapshots quotidiens automatiques.
  </Accordion>

  <Accordion title="Logs en temps réel">
    Diffusez en direct la sortie stdout/stderr de votre application pour déboguer en production dès qu'un problème survient, sans redéployer.
  </Accordion>

  <Accordion title="Analytique en direct">
    Suivez la consommation de CPU, de RAM et de réseau en temps réel depuis un panneau intuitif, afin de dimensionner correctement les ressources et de détecter les régressions avant vos utilisateurs.
  </Accordion>
</AccordionGroup>

### Outils de développement

Pour optimiser votre flux de travail, nous proposons un écosystème complet d'outils :

<Steps>
  <Step title="Square Cloud CLI">
    Gérez vos applications directement depuis le terminal. Déployez, consultez les logs et bien plus encore, rapidement et simplement.

    ```bash theme={null}
    npm install -g @squarecloud/cli
    squarecloud auth login
    ```
  </Step>

  <Step title="Extension VSCode">
    Intégrez la gestion de l'hébergement dans votre éditeur de code préféré, simplifiant le processus de développement et de déploiement.
  </Step>

  <Step title="GitHub Actions">
    Automatisez le déploiement continu (CI/CD) de votre bot. À chaque `push` sur votre dépôt, votre application est automatiquement mise à jour sur notre plateforme.
  </Step>
</Steps>

<Warning>
  **Attention :** pour utiliser le déploiement via GitHub Actions, vous devez configurer un `token` d'API dans les secrets de votre dépôt. Consultez notre documentation spécifique pour le guide étape par étape.
</Warning>

## Comment héberger mon bot ?

<Steps>
  <Step title="Fichier de configuration" icon="file">
    La première étape pour héberger votre bot sur **Square Cloud** consiste à créer un fichier de configuration détaillé. Ce fichier n'est pas un simple document texte, mais un guide complet qui définit les paramètres de l'application sur **Square Cloud**. Il fonctionne comme un plan d'architecture pour votre projet sur la plateforme.

    Une fois le plan acquis, vous devez créer ce fichier, en détaillant chaque configuration et en le remplissant correctement. Les détails sur la manière de créer ce fichier sont disponibles [ici](https://docs.squarecloud.app/fr/getting-started/config-file), avec un guide étape par étape.
  </Step>

  <Step title="Création du fichier ZIP" icon="file-zip">
    Une fois le fichier de configuration prêt, l'étape suivante consiste à préparer votre application pour l'envoi. Cela implique de placer les fichiers de l'application et le fichier de configuration **Square Cloud** dans un fichier .zip.

    Cependant, tous les fichiers n'ont pas besoin d'être inclus dans ce .zip. Les fichiers comme `node_modules`, `package-lock.json`, `pyproject.toml` et `poetry.lock` ne sont pas nécessaires, car ils peuvent être générés automatiquement côté serveur.
  </Step>

  <Step title="Fichier de dépendances" icon="box">
    Un autre aspect crucial est l'inclusion du fichier de dépendances dans le .zip. Ce fichier indique à la plateforme **Square Cloud** quelles dépendances installer pour votre projet. Pour un projet Node.js, ce fichier est `package.json`, et pour un projet Python, c'est `requirements.txt`.

    Ces fichiers listent les bibliothèques et paquets nécessaires au bon fonctionnement de l'application. Garder ces fichiers à jour est essentiel pour éviter les erreurs d'installation. De plus, il est important de noter que les dépendances natives, comme `node-fetch` en Node.js et `random` en Python, ne doivent pas être incluses dans ces fichiers, car ce sont des bibliothèques natives.
  </Step>

  <Step title="Envoi du bot" icon="arrow-up">
    Après avoir suivi toutes les étapes et configuré votre projet pour **Square Cloud**, il est temps d'envoyer votre bot. Accédez à la page d'envoi sur le site web **Square Cloud** et envoyez votre fichier .zip [ici](https://squarecloud.app/fr/dashboard/new).

    Le processus est simple : sélectionnez votre fichier .zip et cliquez sur le bouton d'envoi. La plateforme **Square Cloud** démarrera le processus de déploiement, en installant les dépendances nécessaires et en configurant l'environnement selon le fichier de configuration.

    <Frame>
      <img src="https://cdn.squarecloud.app/docs/articles/dashboard/uploading.gif" alt="Téléversement d'une application vers Square Cloud" style={{ borderRadius: "0.2rem" }} />
    </Frame>
  </Step>
</Steps>
