Déploiement

Un build sitelo, ce sont de simples fichiers statiques : sitelo build écrit du HTML, du CSS et du JS dans dist/. N’importe quel hébergeur statique convient — les configurations ci-dessous supposent seulement npm run builddist/.

Les URL propres sont des répertoires contenant un index.html (/about/index.html/about), donc les jolies URL fonctionnent d’emblée, sans règle de redirection. Un 404.html est émis automatiquement — la convention que comprennent Netlify, Cloudflare Pages et GitHub Pages.

Des versions prêtes à copier de tout ceci sont fournies dans l’exemple de base (examples/basic dans le dépôt).

Netlify

[build]
  command = "npm run build"
  publish = "dist"

Vercel

{
  "$schema": "https://openapi.vercel.sh/vercel.json",
  "framework": null,
  "buildCommand": "npm run build",
  "outputDirectory": "dist",
  "installCommand": "npm install"
}

Cloudflare Pages

Builds depuis le tableau de bord : indiquez la commande de build npm run build et le répertoire de sortie dist. Ou déployez en ligne de commande avec npx wrangler pages deploy dist.

# Cloudflare Pages
name = "my-site"
compatibility_date = "2025-01-01"
pages_build_output_dir = "dist"

AWS Amplify

# Hébergement AWS Amplify
version: 1
frontend:
  phases:
    preBuild:
      commands:
        - npm install
    build:
      commands:
        - npm run build
  artifacts:
    baseDirectory: dist
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*

Pour du S3 + CloudFront simple : npm run build, puis synchronisez dist/ vers le bucket.

GitHub Pages

# GitHub Pages
name: Deploy
on:
  push:
    branches: [main]
permissions:
  contents: read
  pages: write
  id-token: write
jobs:
  deploy:
    runs-on: ubuntu-latest
    environment:
      name: github-pages
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - run: npm ci && npm run build
      - uses: actions/upload-pages-artifact@v3
        with:
          path: dist
      - uses: actions/deploy-pages@v4

Vous déployez sous un sous-chemin (user.github.io/repo) ? Construisez avec --base /repo/.

Avant de publier