Crea una página completa
rust
use pliego_dom::{IntoView, el};
use pliego_ssg::{Head, Page};
let page = Page::new(
"/guide",
Head::new("Guide | My App")
.description("A complete authored page.")
.canonical("https://example.com/guide"),
el("main")
.child(el("h1").child("Guide"))
.into_view(),
);Una Page controla su ruta, Head, body y lenguaje opcional. PliegoRS emite HTML útil directamente; el routing no comienza como un shell de aplicación en el cliente.
Normalización de rutas
Las rutas limpias se publican como documentos index. /guide y /guide/ resuelven a guide/index.html. Rutas de autoría distintas que normalizan a la misma salida portable se rechazan antes del staging.
Metadata e identidad canónica
rust
Head::new("My page")
.description("A precise description.")
.canonical("https://example.com/my-page")
.icon("/favicon.svg")
.manifest("/site.webmanifest")
.meta("robots", "index, follow")
.property_meta("og:type", "website")Páginas de error con autoría
Cada starter mantenido emite /404.html. El servidor preview devuelve ese documento con HTTP 404 para rutas desconocidas. Si falta, PliegoRS sirve un fallback de marca que explica cómo añadirlo.
rust
site.page(Page::new(
"/404.html",
error_head("Route not found"),
not_found(),
));