diff --git a/extensions/pagetop-aliner/Cargo.toml b/extensions/pagetop-aliner/Cargo.toml index d2828b3f..072324e3 100644 --- a/extensions/pagetop-aliner/Cargo.toml +++ b/extensions/pagetop-aliner/Cargo.toml @@ -17,8 +17,5 @@ authors.workspace = true [dependencies] pagetop.workspace = true -[dev-dependencies] -tokio.workspace = true - [build-dependencies] pagetop-build.workspace = true diff --git a/extensions/pagetop-aliner/README.md b/extensions/pagetop-aliner/README.md index bf515d66..ded3aa6f 100644 --- a/extensions/pagetop-aliner/README.md +++ b/extensions/pagetop-aliner/README.md @@ -11,14 +11,13 @@ -## 🧭 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 { 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 { } ``` - -## 🚧 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: diff --git a/extensions/pagetop-aliner/src/lib.rs b/extensions/pagetop-aliner/src/lib.rs index dedf4e19..33f32677 100644 --- a/extensions/pagetop-aliner/src/lib.rs +++ b/extensions/pagetop-aliner/src/lib.rs @@ -3,14 +3,13 @@

PageTop Aliner

-

Tema para PageTop que muestra esquemáticamente la composición de las páginas HTML.

+

Tema de PageTop que muestra esquemáticamente la composición de las páginas HTML.

[![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) -
## 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: diff --git a/extensions/pagetop-bootsier/Cargo.toml b/extensions/pagetop-bootsier/Cargo.toml index 44b6d248..47766c52 100644 --- a/extensions/pagetop-bootsier/Cargo.toml +++ b/extensions/pagetop-bootsier/Cargo.toml @@ -18,8 +18,5 @@ authors.workspace = true pagetop.workspace = true serde.workspace = true -[dev-dependencies] -tokio.workspace = true - [build-dependencies] pagetop-build.workspace = true diff --git a/extensions/pagetop-bootsier/README.md b/extensions/pagetop-bootsier/README.md index f71f221e..69440ec6 100644 --- a/extensions/pagetop-bootsier/README.md +++ b/extensions/pagetop-bootsier/README.md @@ -11,14 +11,13 @@ -## 🧭 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 { 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 { } ``` - -## 📚 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: diff --git a/extensions/pagetop-bootsier/src/lib.rs b/extensions/pagetop-bootsier/src/lib.rs index 8c0ec847..d0820937 100644 --- a/extensions/pagetop-bootsier/src/lib.rs +++ b/extensions/pagetop-bootsier/src/lib.rs @@ -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) -
## 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: diff --git a/extensions/pagetop-seaorm/README.md b/extensions/pagetop-seaorm/README.md index 23a4ce40..b9b7e1a4 100644 --- a/extensions/pagetop-seaorm/README.md +++ b/extensions/pagetop-seaorm/README.md @@ -11,14 +11,13 @@ -## 🧭 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: diff --git a/extensions/pagetop-seaorm/src/lib.rs b/extensions/pagetop-seaorm/src/lib.rs index ef056f64..9901389a 100644 --- a/extensions/pagetop-seaorm/src/lib.rs +++ b/extensions/pagetop-seaorm/src/lib.rs @@ -12,14 +12,13 @@ -## 🧭 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: diff --git a/helpers/pagetop-build/README.md b/helpers/pagetop-build/README.md index bb7d3bfa..52f0b105 100644 --- a/helpers/pagetop-build/README.md +++ b/helpers/pagetop-build/README.md @@ -11,14 +11,13 @@ -## 🧭 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: diff --git a/helpers/pagetop-build/src/lib.rs b/helpers/pagetop-build/src/lib.rs index eacb6180..a6194c5f 100644 --- a/helpers/pagetop-build/src/lib.rs +++ b/helpers/pagetop-build/src/lib.rs @@ -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) diff --git a/helpers/pagetop-macros/README.md b/helpers/pagetop-macros/README.md index 9b0174a6..599f81bb 100644 --- a/helpers/pagetop-macros/README.md +++ b/helpers/pagetop-macros/README.md @@ -11,14 +11,13 @@ -## 🧭 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: diff --git a/helpers/pagetop-minimal/README.md b/helpers/pagetop-minimal/README.md index 1f8ec148..b7a17bc0 100644 --- a/helpers/pagetop-minimal/README.md +++ b/helpers/pagetop-minimal/README.md @@ -11,21 +11,19 @@ -## 🧭 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: diff --git a/helpers/pagetop-statics/README.md b/helpers/pagetop-statics/README.md index 3184f095..92541096 100644 --- a/helpers/pagetop-statics/README.md +++ b/helpers/pagetop-statics/README.md @@ -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: diff --git a/helpers/pagetop-statics/src/lib.rs b/helpers/pagetop-statics/src/lib.rs index d72176c6..58a2d765 100644 --- a/helpers/pagetop-statics/src/lib.rs +++ b/helpers/pagetop-statics/src/lib.rs @@ -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;