bext.config.toml

bext.config.toml se trouve à la racine d'une application PRISM et règle le comportement du serveur, du build et du rendu. Cette page documente chaque section. Pour l'arborescence de routes que pilotent ces réglages, voir Routage et rendu.

Exemple minimal

Une configuration minimale : une application PRISM qui surveille ses sources pour le rechargement automatique et qui effectue le rendu en ISR avec une revalidation toutes les 10 minutes.

[server]
app_dir = "."
static_dir = "public"

[framework]
type = "prism"

[build]
watch_dirs = ["src/app", "src/components", "src/lib"]
live_reload = true

[rendering]
mode = "isr"
revalidate = 600

[server]

Clé Exemple Notes
app_dir "." Racine de l'application.
static_dir "public" Répertoire servi tel quel pour les ressources statiques.

[framework]

Clé Valeur Notes
type "prism" Sélectionne le framework PRISM. Par défaut ("auto"), le framework est déduit de l'arborescence du projet.

[build]

Clé Exemple Notes
watch_dirs ["src", ...] Répertoires surveillés pour le rechargement automatique, relatifs à la racine du site. Vide par défaut.
live_reload true Reconstruit et recharge l'application peu après une modification dans watch_dirs, y compris hors mode développement. false par défaut ; sans effet si watch_dirs est vide.
debounce_ms 200 Délai d'attente, en millisecondes, pendant lequel les modifications successives sont regroupées avant le rechargement. Par défaut : 200.
Note

public/islands/* n'est pas surveillé. Pour forcer le rechargement d'un script d'island, ajoutez un paramètre ?v= au <script src>. Voir Déployer un site PRISM.

[build.css]

Clé Valeur Notes
route_css true Génère à la volée les règles Tailwind des classes présentes dans le HTML rendu et les insère dans la page. false par défaut.
route_css_complete true Avec route_css, génère les règles à partir de toutes les classes présentes dans le code compilé de la route, et non seulement celles du premier rendu. Utile quand une classe n'apparaît qu'après un remplacement de fragment côté client. false par défaut.
Note

Ces deux clés sont lues une fois par processus : redémarrez le site après les avoir modifiées.

[rendering]

Clé Exemple Notes
mode "isr" Active la régénération statique incrémentale pour toutes les routes du site. Seule la valeur "isr" a un effet ; sans elle, aucun cache ISR ne s'applique à l'ensemble du site.
revalidate 600 Durée de revalidation ISR, en secondes. Par défaut : 60 quand mode = "isr".
Note

Une route peut fixer sa propre durée de revalidation avec export const revalidate = <secondes>, et sortir du cache ISR avec export const revalidate = false ou export const dynamic = "force-dynamic". Voir Routage et rendu.

[compile]

Clé Valeur Notes
on_demand true Compile chaque page à sa première requête et la met en cache, sans build préalable. false par défaut, mais un site déclaré avec [framework] type = "prism" est toujours compilé à la demande.

[security.csp]

Surcharges de la Content-Security-Policy, propres au site. Chaque clé est une directive : ses sources s'ajoutent à la politique par défaut. Sous [security.csp.replace], une directive remplace entièrement celle par défaut. Une directive absente de la politique par défaut est ajoutée telle quelle.

[security.csp]
script-src = ["https://cdn.example.com"]
style-src = ["https://fonts.googleapis.com"]

[security.csp.replace]
connect-src = ["'self'", "https://api.example.com"]
Attention

Pour un site que la plateforme rattache automatiquement à son domaine (voir Déployer un site PRISM), [security.csp] n'est pas pris en compte : la politique globale de la plateforme s'applique.

Voir aussi