📝 Limpia y corrige documentación de extensiones

This commit is contained in:
Manuel Cillero 2026-06-12 21:29:10 +02:00
parent f9e87058d8
commit 41c4379bc3
14 changed files with 50 additions and 104 deletions

View file

@ -17,8 +17,5 @@ authors.workspace = true
[dependencies]
pagetop.workspace = true
[dev-dependencies]
tokio.workspace = true
[build-dependencies]
pagetop-build.workspace = true

View file

@ -11,14 +11,13 @@
</div>
## 🧭 Sobre PageTop
## Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la esencia de la web
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
## ⚡️ Guía rápida
## Guía rápida
Igual que con otras extensiones, **añade la dependencia** a tu `Cargo.toml`:
@ -44,11 +43,6 @@ impl Extension for MyApp {
]
}
}
#[pagetop::main]
async fn main() -> std::io::Result<()> {
Application::prepare(&MyApp).run()?.await
}
```
Y **selecciona el tema en la configuración** de la aplicación:
@ -67,10 +61,10 @@ use pagetop_aliner::Aliner;
async fn homepage(request: HttpRequest) -> Result<Markup, ErrorPage> {
Page::new(request)
.with_theme(&Aliner)
.add_child(
.with_child(
Block::new()
.with_title(L10n::l("sample_title"))
.add_child(Html::with(|cx| html! {
.with_child(Html::with(|cx| html! {
p { (L10n::l("sample_content").using(cx)) }
})),
)
@ -78,15 +72,13 @@ async fn homepage(request: HttpRequest) -> Result<Markup, ErrorPage> {
}
```
## 🚧 Advertencia
## Advertencia
**PageTop** es un proyecto personal para aprender [Rust](https://www.rust-lang.org/es) y conocer su
ecosistema. Su API está sujeta a cambios frecuentes. No se recomienda su uso en producción, al menos
hasta que se libere la versión **1.0.0**.
## 📜 Licencia
## Licencia
El código está disponible bajo una doble licencia:

View file

@ -3,14 +3,13 @@
<h1>PageTop Aliner</h1>
<p>Tema para <strong>PageTop</strong> que muestra esquemáticamente la composición de las páginas HTML.</p>
<p>Tema de <strong>PageTop</strong> que muestra esquemáticamente la composición de las páginas HTML.</p>
[![Doc API](https://img.shields.io/docsrs/pagetop-aliner?label=Doc%20API&style=for-the-badge&logo=Docs.rs)](https://docs.rs/pagetop-aliner)
[![Crates.io](https://img.shields.io/crates/v/pagetop-aliner.svg?style=for-the-badge&logo=ipfs)](https://crates.io/crates/pagetop-aliner)
[![Descargas](https://img.shields.io/crates/d/pagetop-aliner.svg?label=Descargas&style=for-the-badge&logo=transmission)](https://crates.io/crates/pagetop-aliner)
[![Licencia](https://img.shields.io/badge/license-MIT%2FApache-blue.svg?label=Licencia&style=for-the-badge)](https://git.cillero.es/manuelcillero/pagetop/src/branch/main/extensions/pagetop-aliner#licencia)
<br>
</div>
## Sobre PageTop
@ -19,8 +18,7 @@
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
# Guía rápida
## Guía rápida
Igual que con otras extensiones, **añade la dependencia** a tu `Cargo.toml`:
@ -46,11 +44,6 @@ impl Extension for MyApp {
]
}
}
#[pagetop::main]
async fn main() -> std::io::Result<()> {
Application::prepare(&MyApp).run()?.await
}
```
Y **selecciona el tema en la configuración** de la aplicación:

View file

@ -18,8 +18,5 @@ authors.workspace = true
pagetop.workspace = true
serde.workspace = true
[dev-dependencies]
tokio.workspace = true
[build-dependencies]
pagetop-build.workspace = true

View file

@ -11,14 +11,13 @@
</div>
## 🧭 Sobre PageTop
## Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la esencia de la web
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
## ⚡️ Guía rápida
## Guía rápida
Igual que con otras extensiones, **añade la dependencia** a tu `Cargo.toml`:
@ -44,11 +43,6 @@ impl Extension for MyApp {
]
}
}
#[pagetop::main]
async fn main() -> std::io::Result<()> {
Application::prepare(&MyApp).run()?.await
}
```
Y **selecciona el tema en la configuración** de la aplicación:
@ -67,10 +61,10 @@ use pagetop_bootsier::Bootsier;
async fn homepage(request: HttpRequest) -> Result<Markup, ErrorPage> {
Page::new(request)
.with_theme(&Bootsier)
.add_child(
.with_child(
Block::new()
.with_title(L10n::l("sample_title"))
.add_child(Html::with(|cx| html! {
.with_child(Html::with(|cx| html! {
p { (L10n::l("sample_content").using(cx)) }
})),
)
@ -78,22 +72,19 @@ async fn homepage(request: HttpRequest) -> Result<Markup, ErrorPage> {
}
```
## 📚 Créditos
## Créditos
Este *crate* integra la biblioteca de estilos [Bootstrap 5.3.8](https://getbootstrap.com/) para
definir el comportamiento, la apariencia y los componentes de la interfaz. Bootstrap se distribuye
bajo licencia [MIT](https://github.com/twbs/bootstrap/blob/main/LICENSE).
## 🚧 Advertencia
## Advertencia
**PageTop** es un proyecto personal para aprender [Rust](https://www.rust-lang.org/es) y conocer su
ecosistema. Su API está sujeta a cambios frecuentes. No se recomienda su uso en producción, al menos
hasta que se libere la versión **1.0.0**.
## 📜 Licencia
## Licencia
El código está disponible bajo una doble licencia:

View file

@ -10,7 +10,6 @@
[![Descargas](https://img.shields.io/crates/d/pagetop-bootsier.svg?label=Descargas&style=for-the-badge&logo=transmission)](https://crates.io/crates/pagetop-bootsier)
[![Licencia](https://img.shields.io/badge/license-MIT%2FApache-blue.svg?label=Licencia&style=for-the-badge)](https://git.cillero.es/manuelcillero/pagetop/src/branch/main/extensions/pagetop-bootsier#licencia)
<br>
</div>
## Sobre PageTop
@ -19,8 +18,7 @@
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
# Guía rápida
## Guía rápida
Igual que con otras extensiones, **añade la dependencia** a tu `Cargo.toml`:
@ -46,11 +44,6 @@ impl Extension for MyApp {
]
}
}
#[pagetop::main]
async fn main() -> std::io::Result<()> {
Application::prepare(&MyApp).run()?.await
}
```
Y **selecciona el tema en la configuración** de la aplicación:

View file

@ -11,14 +11,13 @@
</div>
## 🧭 Sobre PageTop
## Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la esencia de la web
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
## ⚡️ Guía rápida
## Guía rápida
**Añade la dependencia** a tu `Cargo.toml` activando el motor de base de datos que necesites:
@ -59,7 +58,7 @@ impl Extension for MyApp {
}
fn initialize(&self) {
install_migrations!(m20240101_000001_create_users_table);
install_migrations!(m20240101_000001_create_users);
}
}
@ -146,8 +145,7 @@ async fn example() -> Result<(), DbErr> {
}
```
## 📚 Créditos
## Créditos
Este *crate* se apoya en bibliotecas del ecosistema [SeaQL](https://github.com/SeaQL) como:
@ -179,15 +177,13 @@ extensión. Los ficheros adaptados del original son:
| `schema.rs` | Integra con ajustes, adaptado de [loco](https://github.com/loco-rs/loco) |
| `seaql_migrations.rs` | Integración completa |
## 🚧 Advertencia
## Advertencia
**PageTop** es un proyecto personal para aprender [Rust](https://www.rust-lang.org/es) y conocer su
ecosistema. Su API está sujeta a cambios frecuentes. No se recomienda su uso en producción, al menos
hasta que se libere la versión **1.0.0**.
## 📜 Licencia
## Licencia
El código está disponible bajo una doble licencia:

View file

@ -12,14 +12,13 @@
</div>
## 🧭 Sobre PageTop
## Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la esencia de la web
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
## Guía rápida
## Guía rápida
**Añade la dependencia** a tu `Cargo.toml` activando el motor de base de datos que necesites:

View file

@ -11,14 +11,13 @@
</div>
## 🧭 Sobre PageTop
## Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la esencia de la web
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
## ⚡️ Guía rápida
## Guía rápida
Añadir en el archivo `Cargo.toml` del proyecto:
@ -82,8 +81,7 @@ fn main() -> std::io::Result<()> {
Este código compila el archivo `main.scss` de la carpeta `static` del proyecto, y prepara un recurso
llamado `main_styles` que contiene el archivo `styles.min.css` obtenido.
## 📦 Archivos generados
## Archivos generados
Cada conjunto de recursos [`StaticFilesBundle`] genera un archivo en el directorio estándar
[OUT_DIR](https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-build-scripts)
@ -103,22 +101,21 @@ use pagetop::prelude::*;
pub struct MyExtension;
impl Extension for MyExtension {
// Servicio web que publica los recursos de `guides` en `/ruta/a/guides`.
fn configure_service(&self, scfg: &mut service::web::ServiceConfig) {
serve_static_files!(scfg, guides => "/ruta/a/guides");
/// Registra los recursos de `guides` en el router bajo `/ruta/a/guides`.
fn configure_router(&self, mut router: Router) -> Router {
serve_static_files!(router, [guides] => "/ruta/a/guides");
router
}
}
```
## 🚧 Advertencia
## Advertencia
**PageTop** es un proyecto personal para aprender [Rust](https://www.rust-lang.org/es) y conocer su
ecosistema. Su API está sujeta a cambios frecuentes. No se recomienda su uso en producción, al menos
hasta que se libere la versión **1.0.0**.
## 📜 Licencia
## Licencia
El código está disponible bajo una doble licencia:

View file

@ -18,8 +18,7 @@
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
# Guía rápida
## Guía rápida
Añadir en el archivo `Cargo.toml` del proyecto:
@ -31,7 +30,7 @@ pagetop-build = { ... }
Y crear un archivo `build.rs` a la altura de `Cargo.toml` para indicar cómo se van a incluir los
archivos estáticos o cómo se van a compilar los archivos SCSS para el proyecto. Casos de uso:
## Incluir archivos estáticos desde un directorio
### Incluir archivos estáticos desde un directorio
Hay que preparar una carpeta en el proyecto con todos los archivos que se quieren incluir, por
ejemplo `static`, y añadir el siguiente código en `build.rs` para crear el conjunto de recursos:
@ -65,7 +64,7 @@ fn main() -> std::io::Result<()> {
}
```
## Compilar archivos SCSS a CSS
### Compilar archivos SCSS a CSS
Se puede compilar un archivo SCSS, que podría importar otros a su vez, para preparar un recurso con
el archivo CSS minificado obtenido. Por ejemplo:
@ -83,8 +82,7 @@ fn main() -> std::io::Result<()> {
Este código compila el archivo `main.scss` de la carpeta `static` del proyecto, y prepara un recurso
llamado `main_styles` que contiene el archivo `styles.min.css` obtenido.
# 📦 Archivos generados
## Archivos generados
Cada conjunto de recursos [`StaticFilesBundle`] genera un archivo en el directorio estándar
[OUT_DIR](https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-build-scripts)

View file

@ -11,14 +11,13 @@
</div>
## 🧭 Sobre PageTop
## Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la esencia de la web
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
## 📚 Créditos
## Créditos
Este *crate* incluye entre sus macros una adaptación de
[maud-macros](https://crates.io/crates/maud_macros)
@ -29,15 +28,13 @@ Este *crate* incluye entre sus macros una adaptación de
necesidad de referenciar `maud` o `smart_default` en las dependencias del archivo `Cargo.toml` de
cada proyecto PageTop.
## 🚧 Advertencia
## Advertencia
**PageTop** es un proyecto personal para aprender [Rust](https://www.rust-lang.org/es) y conocer su
ecosistema. Su API está sujeta a cambios frecuentes. No se recomienda su uso en producción, al menos
hasta que se libere la versión **1.0.0**.
## 📜 Licencia
## Licencia
El código está disponible bajo una doble licencia:

View file

@ -11,21 +11,19 @@
</div>
## 🧭 Sobre PageTop
## Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la esencia de la web
clásica para crear soluciones web SSR (*renderizadas en el servidor*) modulares, extensibles y
configurables, basadas en HTML, CSS y JavaScript.
## 🗺️ Descripción general
## Descripción general
Este *crate* proporciona un conjunto básico de macros que se integran en las utilidades de PageTop
para optimizar operaciones habituales relacionadas con la composición estructurada de texto, la
concatenación de cadenas y el uso rápido de colecciones clave-valor.
## 📚 Créditos
## Créditos
Las macros para texto multilínea **`indoc!`**, **`formatdoc!`** y **`concatdoc!`** se reexportan del
*crate* [indoc](https://crates.io/crates/indoc) de [David Tolnay](https://crates.io/users/dtolnay).
@ -39,15 +37,13 @@ La macro para generar identificadores dinámicos **`paste!`** se reexporta del *
[pastey](https://crates.io/crates/pastey), una implementación avanzada y soportada del popular
`paste!` de [David Tolnay](https://crates.io/users/dtolnay).
## 🚧 Advertencia
## Advertencia
**PageTop** es un proyecto personal para aprender [Rust](https://www.rust-lang.org/es) y conocer su
ecosistema. Su API está sujeta a cambios frecuentes. No se recomienda su uso en producción, al menos
hasta que se libere la versión **1.0.0**.
## 📜 Licencia
## Licencia
El código está disponible bajo una doble licencia:

View file

@ -31,15 +31,13 @@ Para ello, adapta el código de [static-files](https://crates.io/crates/static_f
se integra en PageTop para evitar que cada proyecto tenga que declarar `static-files` manualmente
como dependencia en su `Cargo.toml`.
## 🚧 Advertencia
## Advertencia
**PageTop** es un proyecto personal para aprender [Rust](https://www.rust-lang.org/es) y conocer su
ecosistema. Su API está sujeta a cambios frecuentes. No se recomienda su uso en producción, al menos
hasta que se libere la versión **1.0.0**.
## 📜 Licencia
## Licencia
El código está disponible bajo una doble licencia:

View file

@ -41,6 +41,8 @@ como dependencia en su `Cargo.toml`.
/// Resource definition and single module based generation.
pub mod resource;
#[doc(inline)]
pub use resource::Resource as StaticFile;
mod resource_dir;