Atelier201 websiteJoin the waitlist
PlateformeMise en ligne d’un site

Mise en ligne d’un site

Brouillon, révision, compilation, aperçu, publication et restauration : ce que les visiteurs peuvent voir et à quel moment.

Un site passe par quatre étapes. Seule la dernière modifie ce que voient les visiteurs.

flowchart LR A["Brouillon<br/>chaque modification"] --> B["Compilation<br/>brouillon compilé"] B --> C["Aperçu<br/>lien privé"] B --> D["Publication<br/>visible par les visiteurs"]
De la modification au site en ligne

Brouillon et révisions

Le brouillon correspond à l’état actuel des fichiers du site. Chaque modification crée une révision : un identifiant de commit Git de 40 caractères, accompagné d’un résumé d’une phrase et de l’auteur (l’éditeur, l’assistant, un agent via MCP, la CLI ou l’API). Rien n’est effacé : l’historique répertorie toutes les révisions, et vous pouvez en comparer deux ou restaurer une version antérieure sous la forme d’une nouvelle entrée.

Une modification correspond à une seule révision, quel que soit le nombre de fichiers touchés. Un appel qui modifie trois fichiers crée une seule entrée ; une modification répartie sur plusieurs appels utilise un changeset que vous validez en une fois. Un changeset reste ouvert pendant 10 minutes.

Deux personnes modifient en même temps

Lorsque vous modifiez un fichier, envoyez le hash que vous avez lu (expected_hash). Si une autre personne a modifié ce fichier entre-temps, toute la modification est rejetée avec 409 conflict ; rien n’est écrit, et l’erreur REST ou CLI contient la révision actuelle :

JSON
{
  "error": {
    "type": "conflict_error",
    "code": "conflict",
    "message": "...",
    "details": {
      "reason": "revision_conflict",
      "current_revision": "9f2c...",
      "paths": [
        { "path": "src/content/site/business.json", "expected": "a1b2...", "found": "c3d4..." }
      ]
    }
  }
}

Relisez les fichiers indiqués dans paths, appliquez votre modification par-dessus, puis réessayez. Via MCP, l’erreur indique que le site a changé depuis la préparation de la modification, sans details ; vous devez donc relire les fichiers vous-même. Les points de terminaison du contenu lisent eux-mêmes le hash actuel : ils n’entrent en conflit que si quelqu’un écrit exactement au même moment.

Compilations

Une compilation transforme le brouillon, ou une révision que vous indiquez, en site statique. Elle s’exécute dans un conteneur isolé, sans réseau ni identifiants, et s’arrête au bout de 5 minutes. Une compilation passe par les états queued, building et collecting avant d’atteindre ready, ou se termine par failed ou cancelled. Si vous lancez une compilation d’une révision qui dispose déjà d’une compilation prête, celle-ci vous est renvoyée au lieu d’en lancer une deuxième.

En cas d’échec, error en indique la raison et le journal de compilation affiche la sortie du compilateur. Corrigez les fichiers et relancez la compilation.

Aperçus

Un aperçu est un lien privé vers une compilation, valable 7 jours par défaut et 30 jours au maximum. Toute personne disposant du lien peut consulter cette compilation sans compte. Le lien ne donne aucun autre accès, n’est jamais indexé et peut être révoqué. Il montre l’apparence du site, comme s’il était publié : partagez-le donc avant la publication.

Un aperçu n’est pas un site publié. Chaque page comporte un petit bandeau « Aperçu » (masqué pendant la modification dans l’application) et s’exécute dans un environnement sandbox avec l’origine null. Ses scripts ne peuvent pas définir de cookies, utiliser le stockage du navigateur ni lancer de Worker. Une API tierce qui refuse cette origine les bloque également. Un formulaire, une bannière de cookies ou un outil côté client qui dépend de ces fonctionnalités ne fonctionne donc qu’après la publication du site. Un avertissement de compilation indique lesquels votre site utilise.

Publication

La publication met en ligne une compilation à toutes les adresses du site, en environ une minute. C’est la seule étape qui modifie le site public.

  1. Vérification. review_publish indique quelle compilation serait mise en ligne, si elle correspond au dernier brouillon, ce qui bloque la publication et fournit un expected_generation.
  2. Publiez cette compilation avec la valeur expected_generation que vous avez lue.

La génération est un compteur qui augmente à chaque publication, restauration ou dépublication. En la renvoyant, vous vous assurez de publier exactement l’état vérifié. Si une autre personne a publié entre-temps, l’appel est rejeté avec 409 conflict et vous devez recommencer la vérification.

Une compilation ne peut pas être publiée tant qu’un blocage subsiste :

BlocageMarche à suivre
guest_siteLa personne doit d’abord revendiquer le site.
no_buildCompilez le brouillon.
build_not_readyAttendez que la compilation passe à ready, ou relancez-la si elle a échoué.
origin_changedL’adresse principale du site a changé depuis cette compilation. Relancez-la.
plan_requiredLe site est un brouillon : sa publication nécessite le forfait Site. Partagez un lien d’aperçu en attendant.
site_unavailableLe site est en cours de création, de suspension ou de suppression.

Restauration et dépublication

Une restauration remet en ligne la compilation d’une publication antérieure, sans la reconstruire. Le brouillon reste inchangé : il peut donc être plus récent que ce que voient les visiteurs. Un site conserve ses 50 dernières publications pour permettre leur restauration.

La dépublication met le site hors ligne : les visiteurs voient qu’aucun site n’est disponible à cette adresse jusqu’à la prochaine publication. Rien n’est supprimé.

La publication, la restauration et la dépublication nécessitent le scope sites:publish et sont réservées aux administrateurs de l’espace de travail. Un agent qui ne dispose pas de ce scope peut tout préparer et demander au propriétaire de publier.

Export et import

Le projet entier s’exporte sous forme d’archive tar qui peut être compilée n’importe où avec npm ci && npm run build. L’import d’une archive remplace le brouillon par ses fichiers et crée une seule révision. node_modules, dist, .git et les fichiers secrets sont ignorés. L’import ne lance ni compilation ni publication.

Use these docs with your AI tools

An AI agent can read this documentation directly. You do not need an account or an API key. Everything here is public and read-only.

Query these docs via MCP

Recommended

Add this server to Claude, Claude Code, Cursor, Mistral, or any tool that supports MCP. Your agent can then search Atelier201 Docs documentation and read it in full, instead of answering from memory.

https://atelier201.com/docs/mcp
  • searchFind the passages that answer a question.
  • fetchRead one page in full, as Markdown.
  • list_pagesSee every page in this documentation.

Query these docs over HTTP

The same tools also work as plain web requests. Use this for scripts, or for any tool that does not support MCP. There is one endpoint per tool. Arguments go in the query string, and the answer comes back as JSON.

https://atelier201.com/docs/api/docs/search?query=custom+domain

Read the OpenAPI description. It is built from the same definitions as the tools, so it always matches what the endpoints do.

Read these docs as Markdown

Add .md to any page URL to get its Markdown source. You can also send the headerAccept: text/markdown to the page URL itself.

To read the whole documentation in one file, open llms-full.txt. For a short index of every page, open llms.txt.