Aller au contenu

Commandes CLI

Vous pouvez utiliser l’interface en ligne de commande (CLI) fournie par Astro pour développer, construire et prévisualiser votre projet à partir d’une fenêtre de terminal.

Commandes astro

Utilisez le CLI en exécutant l’une des commandes documentées sur cette page avec votre gestionnaire de paquets préféré, suivie éventuellement de toutes les options. Les options personnalisent le comportement d’une commande.

L’une des commandes que vous utiliserez le plus souvent est astro dev. Cette commande démarre le serveur de développement et vous donne un aperçu votre site mis à jour en direct dans un navigateur pendant que vous travaillez :

Terminal window
# démarre le serveur de développement
npx astro dev

Vous pouvez taper astro --help dans votre terminal pour afficher une liste de toutes les commandes disponibles :

Terminal window
npx astro --help

Le message suivant s’affichera dans votre terminal :

Terminal window
astro [commande] [...options]
Commandes
add Ajouter une intégration.
build Build votre projet et l'écrire sur le disque.
check Vérifier votre projet pour les erreurs.
dev Démarrer le serveur de développement.
docs Ouvrir la documentation dans votre navigateur Web.
info Liste d'informations sur votre configuration actuelle d'Astro.
preview Prévisualiser votre Build localement.
sync Générer les types de collection de contenu.
telemetry Configurer les paramètres de télémétrie.
Options globales
--config <chemin> Spécifier votre fichier de configuration.
--root <chemin> Spécifier le dossier racine de votre projet.
--site <url> Spécifier le site de votre projet.
--base <pathname> Spécifier la base de votre projet.
--verbose Activer l'enregistrement détaillé.
--silent Désactiver tous les journaux.
--version Afficher le numéro de version et quitter.
--open Ouvrir l'application dans le navigateur au démarrage du serveur.
--help Afficher ce message d'aide.

Scripts package.json

Vous pouvez également utiliser des scripts dans package.json pour des versions plus courtes de ces commandes. L’utilisation d’un script vous permet d’utiliser les mêmes commandes avec lesquelles vous pourriez être familier dans d’autres projets, telles que npm run build.

Pour les commandes astro les plus courantes (astro dev, astro build et astro preview), les scripts suivants sont ajoutés automatiquement lorsque vous créez un projet en utilisant l’assistant d’installation create astro.

Lorsque vous suivez les instructions pour installer Astro manuellement, vous êtes invité à ajouter vous-même ces scripts. Vous pouvez également ajouter manuellement d’autres scripts à cette liste pour toute commande que vous utilisez fréquemment.

package.json
{
"scripts": {
"dev": "astro dev",
"start": "astro dev",
"build": "astro build",
"preview": "astro preview"
}
}

Vous utiliserez souvent ces commandes astro, ou les scripts qui les exécutent, sans aucune option. Ajoutez des options à la commande lorsque vous souhaitez personnaliser le comportement de la commande. Par exemple, vous souhaitez peut-être démarrer le serveur de développement sur un port différent ou Build votre site en incluant les pages de brouillon.

Terminal window
# lance le serveur de développement sur le port 8080 en utilisant le script `start` dans `package.json`
npm run start -- --port 8080
# Build votre site en incluant les pages de brouillon en utilisant le script `build` dans `package.json`
npm run build -- --drafts

astro dev

Lance le serveur de développement d’Astro. Il s’agit d’un serveur HTTP local qui ne regroupe pas les fichiers et les ressources. Il utilise le Remplacement de Modules à Chaud (HMR) pour mettre à jour votre navigateur lorsque vous enregistrez des modifications dans votre éditeur.

Options

Utilisez ces options pour personnaliser le comportement du serveur de développement d’Astro. Pour les options partagées avec d’autres commandes Astro, voir les options courantes ci-dessous.

--port <nombre>

Spécifie le port sur lequel se démarrer. Il est défini par défaut sur 4321.

--host [adresse IP facultative]

Définit les adresses IP réseau sur lesquelles le serveur de développement doit écouter (c’est-à-dire les adresses IP autres que localhost). Cela peut être utile pour tester votre projet durant le développement sur des périphériques locaux tels qu’un téléphone portable.

  • --host — écoute sur toutes les adresses, y compris les adresses LAN et publiques
  • --host <adresse-personnalisée> — expose une adresse IP réseau à <adresse-personnalisée>

astro build

Compile votre site pour le déploiement. Par défaut, cela générera des fichiers statiques et les placera dans un répertoire dist/. Si le SSR est activé (EN), cela générera les fichiers serveur nécessaires à votre site.

Peut être combiné avec les options courantes documentées ci-dessous.

astro preview

Démarre un serveur local pour servir votre répertoire statique dist/.

Cette commande est utile pour prévisualiser votre Build localement avant de le déployer. Elle n’est pas conçue pour être exécutée en production. Pour obtenir de l’aide sur l’hébergement en production, consultez notre guide sur Déployer un site Astro.

Depuis Astro 1.5.0, astro preview fonctionne également pour les Builds SSR si vous utilisez un adaptateur qui le supporte. Actuellement, seul l’adaptateur Node (EN) prend en charge astro preview.

Peut être combiné avec les options courantes documentées ci-dessous.

astro check

Lance les diagnostics (comme la vérification de type dans les fichiers .astro) sur votre projet et signale les erreurs à la console. Si des erreurs sont trouvées, le processus se terminera avec un code de 1.

Cette commande est destinée à être utilisée dans un processus d’intégration continue.

Options

Utilisez ces options pour personnaliser le comportement d’une commande.

--watch

La commande surveillera toute modification apportée aux fichiers .astro et signalera toute erreur.

📚 En savoir plus sur le support de TypeScript dans Astro.

astro sync

Ajouté à la version : astro@2.0.0

Génère des types TypeScript pour tous les modules Astro. Cela configure un fichier src/env.d.ts pour l’inférence de type et définit le module astro:content pour l’API de Collections de Contenu.

astro add

Ajoute une intégration à votre configuration. En savoir plus dans le guide des intégrations.

astro docs

Lance directement le site web Astro Docs depuis le terminal.

astro info

Rapporte des informations utiles sur votre environnement Astro actuel. Utile pour fournir des informations lors de l’ouverture d’un problème.

Terminal window
astro info

Exemple de sortie:

Astro v3.0.12
Node v20.5.1
System macOS (arm64)
Package Manager pnpm
Output server
Adapter @astrojs/vercel/serverless
Integrations none

astro telemetry

Configure la télémétrie pour l’utilisateur actuel du CLI. La télémétrie est une donnée anonyme qui fournit à l’équipe Astro des informations sur les fonctionnalités Astro les plus souvent utilisées. Pour en savoir plus, voir la page télémetrie d’Astro’.

La télémétrie peut être désactivée avec cette commande CLI :

Terminal window
astro telemetry disable

La télémétrie peut être réactivée ultérieurement avec :

Terminal window
astro telemetry enable

La commande clear réinitialise les données de télémétrie :

Terminal window
astro telemetry clear

Options courantes

--root <chemin>

Spécifie le chemin de la racine du projet. Si aucun chemin n’est spécifié, le répertoire de travail actuel est considéré comme la racine.

La racine est utilisée pour trouver le fichier de configuration Astro.

Terminal window
astro --root monDossierRacine/monDossierProjet dev

--config <chemin>

Spécifie le chemin du fichier de configuration par rapport à la racine du projet. Il est défini par défaut à astro.config.mjs. Utilisez cette option si vous utilisez un nom différent pour votre fichier de configuration ou si votre fichier de configuration est dans un autre dossier.

Terminal window
astro --config config/astro.config.mjs dev

--outDir <chemin>

Ajouté à la version : astro@3.3.0

Configure le outDir (EN) pour votre projet. Passer cette option remplacera la valeur de outDir dans votre fichier astro.config.mjs, s’il en existe un.

--site <url>

Configure le site (EN) pour votre projet. Utiliser cette option remplacera, si elle existe, la valeur site de votre fichier astro.config.mjs.

--base <chemin>

Ajouté à la version : astro@1.4.1

Configure la base (EN) de votre projet. Utiliser cette option remplacera, si elle existe, la valeur base de votre fichier astro.config.mjs.

--verbose

Active les journaux verbeux, ce qui est utile pour déboguer un problème.

--silent

Active les journaux silencieux, ce qui lance le serveur sans aucune sortie dans la console.

Options globales

Utilisez ces options pour obtenir des informations à propos du CLI astro.

--version

Affiche le numéro de version d’Astro et quitte.

--open

Ouvre automatiquement l’application dans le navigateur au démarrage du serveur.

--help

Affiche le message d’aide et quitte.

API avancées (expérimentales)

Si vous avez besoin de plus de contrôle lors de l’exécution d’Astro, le paquet "astro" exporte également des API pour exécuter par programme les commandes CLI.

Ces API sont expérimentales et leur signature peuvent changer. Toute mise à jour sera mentionnée dans le Astro changelog et les informations ci-dessous montreront toujours les informations actuelles et à jour.

AstroInlineConfig

Le type AstroInlineConfig est utilisé par toutes les API de commande ci-dessous. Il s’étend à partir du type utilisateur Astro config (EN) :

interface AstroInlineConfig extends AstroUserConfig {
configFile?: string | false;
mode?: "development" | "production";
logLevel?: "debug" | "info" | "warn" | "error" | "silent";
}

configFile

Type: string | false
Défaut: undefined

Un chemin personnalisé vers le fichier de configuration d’Astro.

Si cette valeur est indéfinie (par défaut) ou non définie, Astro recherchera un fichier astro.config.(js,mjs,ts) relatif à la root et chargera le fichier de configuration s’il est trouvé.

Si un chemin relatif est défini, il sera résolu en fonction du répertoire de travail courant.

Mettre false pour désactiver le chargement de tout fichier de configuration.

La configuration en ligne passée dans cet objet sera prioritaire lors de la fusion avec la configuration utilisateur chargée.

mode

Type: "development" | "production"
Défaut: "development" lors de l’exécution de astro dev, "production" lors de l’exécution de astro build

Le mode utilisé lors de la construction de votre site pour générer du code “developpement” ou “production”.

logLevel

Type: "debug" | "info" | "warn" | "error" | "silent"
Défaut: "info"

Le niveau de journalisation pour filtrer les messages enregistrés par Astro.

  • "debug": Enregistre tout, y compris les diagnostics de débogage.
  • "info": Enregistre les messages d’information, les avertissements et les erreurs.
  • "warn": Enregistre les avertissements et les erreurs.
  • "error": Ne consigne que les erreurs.
  • "silent": Pas de journalisation.

dev()

Type: (inlineConfig: AstroInlineConfig) => AstroDevServer

Similaire à astro dev, il fait tourner le serveur de développement d’Astro.

import { dev } from "astro";
const devServer = await dev({
root: "./my-project",
});
// Arrêter le serveur si nécessaire
await devServer.stop();

build()

Type: (inlineConfig: AstroInlineConfig) => void

Similaire à astro build, il construit votre site pour le deploiement.

import { build } from "astro";
await build({
root: "./my-project",
});

preview()

Type: (inlineConfig: AstroInlineConfig) => AstroPreviewServer

Similaire à astro preview, il démarre un serveur local pour servir votre répertoire statique dist/.

import { preview } from "astro";
const previewServer = await preview({
root: "./my-project",
});
// Arrêter le serveur si besoin
await previewServer.stop();

sync()

Type: (inlineConfig: AstroInlineConfig) => number

Similaire à astro sync, il génère des types TypeScript pour tous les modules Astro.

import { sync } from "astro";
const exitCode = await sync({
root: "./my-project",
});
process.exit(exitCode)