📝 Normaliza documentación

This commit is contained in:
Manuel Cillero 2024-12-07 13:35:02 +01:00
parent b8ea19ad4f
commit ee9b1370b0
13 changed files with 128 additions and 52 deletions

View file

@ -13,7 +13,7 @@
</div> </div>
`PageTop` reivindica la sencillez de la web clásica utilizando SSR (*renderizado en el servidor*), `PageTop` reivindica la sencillez de la web clásica combinando SSR (*renderizado en el servidor*),
HTML, CSS y JavaScript. Proporciona un conjunto completo de funcionalidades que pueden extenderse y HTML, CSS y JavaScript. Proporciona un conjunto completo de funcionalidades que pueden extenderse y
adaptarse a las necesidades de cada solución web implementando: adaptarse a las necesidades de cada solución web implementando:
@ -77,8 +77,7 @@ El repositorio se organiza en un *workspace* con los siguientes subproyectos:
* **[pagetop](https://github.com/manuelcillero/pagetop/tree/latest/pagetop)**, es la librería * **[pagetop](https://github.com/manuelcillero/pagetop/tree/latest/pagetop)**, es la librería
principal. Reúne algunos de los *crates* más estables y populares del ecosistema Rust para principal. Reúne algunos de los *crates* más estables y populares del ecosistema Rust para
proporcionar APIs, patrones de desarrollo y buenas prácticas para la creación avanzada de proporcionar APIs y recursos para la creación avanzada de soluciones web.
soluciones web SSR (*Server-Side Rendering*).
## Auxiliares ## Auxiliares

View file

@ -16,10 +16,11 @@ dinámicos, manejables y personalizables; y facilite a los usuarios la gestión
contenidos de manera sencilla. contenidos de manera sencilla.
# 📦 Sobre PageTop # 📌 Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo con convenciones que reivindican la [PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la sencillez de la web
sencillez de la web clásica aplicando *renderizado en el servidor* (SSR), HTML, CSS y JS. clásica combinando SSR (*renderizado en el servidor*), HTML, CSS y JS, para crear soluciones web
modulares, extensibles y configurables.
# 🚧 Advertencia # 🚧 Advertencia

View file

@ -1,3 +1,21 @@
//! <div align="center">
//!
//! <h1>Drust</h1>
//!
//! <p>Un Sistema de Gestión de Contenidos (CMS) basado en <strong>PageTop</strong> para compartir tu mundo.</p>
//!
//! [![Licencia](https://img.shields.io/badge/license-MIT%2FApache-blue.svg?label=Licencia&style=for-the-badge)](#-license)
//! [![Crates.io](https://img.shields.io/crates/v/drust.svg?style=for-the-badge&logo=ipfs)](https://crates.io/crates/drust)
//! [![Descargas](https://img.shields.io/crates/d/drust.svg?label=Descargas&style=for-the-badge&logo=transmission)](https://crates.io/crates/drust)
//!
//! </div>
//!
//! # 📌 Sobre PageTop
//!
//! [`PageTop`](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la sencillez de
//! la web clásica combinando SSR (*renderizado en el servidor*), HTML, CSS y JS, para crear
//! soluciones web modulares, extensibles y configurables.
use pagetop::prelude::*; use pagetop::prelude::*;
struct Drust; struct Drust;

View file

@ -11,10 +11,11 @@
</div> </div>
# 📦 Sobre PageTop # 📌 Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo con convenciones que reivindican la [PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la sencillez de la web
sencillez de la web clásica aplicando *renderizado en el servidor* (SSR), HTML, CSS y JS. clásica combinando SSR (*renderizado en el servidor*), HTML, CSS y JS, para crear soluciones web
modulares, extensibles y configurables.
# 🚧 Advertencia # 🚧 Advertencia

View file

@ -1,7 +1,23 @@
//! Incluye fácilmente archivos estáticos o archivos SCSS compilados directamente en el binario de //! <div align="center">
//! tus aplicaciones `PageTop``.
//! //!
//! # Añadir al proyecto //! <h1>PageTop Build</h1>
//!
//! <p>Incluye fácilmente archivos estáticos o archivos SCSS compilados directamente en el binario de tus aplicaciones <strong>PageTop</strong>.</p>
//!
//! [![Licencia](https://img.shields.io/badge/license-MIT%2FApache-blue.svg?label=Licencia&style=for-the-badge)](#-license)
//! [![Doc API](https://img.shields.io/docsrs/pagetop-build?label=Doc%20API&style=for-the-badge&logo=Docs.rs)](https://docs.rs/pagetop-build)
//! [![Crates.io](https://img.shields.io/crates/v/pagetop-build.svg?style=for-the-badge&logo=ipfs)](https://crates.io/crates/pagetop-build)
//! [![Descargas](https://img.shields.io/crates/d/pagetop-build.svg?label=Descargas&style=for-the-badge&logo=transmission)](https://crates.io/crates/pagetop-build)
//!
//! </div>
//!
//! # 📌 Sobre PageTop
//!
//! [`PageTop`](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la sencillez de
//! la web clásica combinando SSR (*renderizado en el servidor*), HTML, CSS y JS, para crear
//! soluciones web modulares, extensibles y configurables.
//!
//! # ⚡️ Guía rápida
//! //!
//! Añade en el archivo `Cargo.toml` de tu aplicación: //! Añade en el archivo `Cargo.toml` de tu aplicación:
//! //!
@ -10,12 +26,14 @@
//! pagetop-build = { ... } //! pagetop-build = { ... }
//! ``` //! ```
//! //!
//! Crea luego un archivo `build.rs` para definir cómo se van a incluir los archivos estáticos o //! Luego crea un archivo `build.rs` para definir cómo se van a incluir los archivos estáticos o
//! archivos SCSS en tu aplicación, diseño o paquete de `PageTop`. Ejemplos de uso: //! archivos SCSS en tu aplicación. Casos de uso:
//! //!
//! ## 1. Incluir archivos estáticos desde un directorio //! ## Incluir archivos estáticos desde un directorio
//! //!
//! Prepara un conjunto de recursos con todos los archivos de un directorio: //! Prepara una carpeta en tu proyecto con todos los archivos que deseas incluir, por ejemplo
//! `static`, y añade el siguiente código a tu archivo `build.rs` para crear tu conjunto de
//! recursos:
//! //!
//! ```rust#ignore //! ```rust#ignore
//! use pagetop_build::StaticFilesBundle; //! use pagetop_build::StaticFilesBundle;
@ -27,54 +45,55 @@
//! } //! }
//! ``` //! ```
//! //!
//! O aplica un filtro para incluir únicamente archivos específicos: //! Si es necesario, puedes añadir un filtro para seleccionar archivos específicos de la carpeta:
//! //!
//! ```rust#ignore //! ```rust#ignore
//! use pagetop_build::StaticFilesBundle; //! use pagetop_build::StaticFilesBundle;
//! use std::path::Path; //! use std::path::Path;
//! //!
//! fn main() -> std::io::Result<()> { //! fn main() -> std::io::Result<()> {
//! fn solo_archivos_css(path: &Path) -> bool { //! fn only_pdf_files(path: &Path) -> bool {
//! // Incluye solo archivos con la extensión `.css`. //! // Include only files with the `.pdf` extension.
//! path.extension().map_or(false, |ext| ext == "css") //! path.extension().map_or(false, |ext| ext == "pdf")
//! } //! }
//! //!
//! StaticFilesBundle::from_dir("./static", Some(solo_archivos_css)) //! StaticFilesBundle::from_dir("./static", Some(only_pdf_files))
//! .with_name("guides") //! .with_name("guides")
//! .build() //! .build()
//! } //! }
//! ``` //! ```
//! //!
//! ## 2. Compilar archivos SCSS a CSS //! ## Compilar archivos SCSS a CSS
//! //!
//! Crea un archivo CSS compilando un archivo SCSS, que puede importar otros a su vez, para preparar //! Puedes compilar un archivo SCSS, que podría importar otros a su vez, para preparar un conjunto
//! el conjunto de recursos: //! de recursos con el archivo CSS obtenido. Por ejemplo:
//! //!
//! ```rust#ignore //! ```rust#ignore
//! use pagetop_build::StaticFilesBundle; //! use pagetop_build::StaticFilesBundle;
//! //!
//! fn main() -> std::io::Result<()> { //! fn main() -> std::io::Result<()> {
//! StaticFilesBundle::from_scss("./styles/main.scss", "main.css") //! StaticFilesBundle::from_scss("./styles/main.scss", "styles.css")
//! .with_name("main_styles") //! .with_name("main_styles")
//! .build() //! .build()
//! } //! }
//! ``` //! ```
//! //!
//! Este código compila el archivo `main.scss`, incluyendo los archivos SCSS que importe, en un //! Este código compila el archivo `main.scss` de la carpeta `static` del proyecto, en un archivo
//! archivo `main.css` que definirá el conjunto de recursos `main_styles`. //! `styles.css` que se preparará como un conjunto de recursos llamado `main_styles`.
//! //!
//! //!
//! # Módulos generados //! # 📦 Módulos generados
//! //!
//! Cada [`StaticFilesBundle`] genera un archivo en el directorio estándar //! 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) donde se //! [OUT_DIR](https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-build-scripts)
//! incluyen los recursos requeridos para compilar. Por ejemplo, si usas `with_name("guides")` se //! donde se incluyen los recursos necesarios para la compilación. Por ejemplo, para
//! generará un archivo llamado `guides.rs`. //! `with_name("guides")` se crea un archivo llamado `guides.rs`.
//! //!
//! Ten en cuenta que puedes generar más de un conjunto de recursos para usar en tu proyecto. //! Ten en cuenta que puedes generar más de un conjunto de recursos para usar en tu proyecto.
//! //!
//! Normalmente no necesitarás acceder directamente a este archivo; simplemente inclúyelo en tu //! Normalmente no necesitarás acceder directamente a este archivo; sólo inclúyelo en tu proyecto
//! proyecto con `include_files!`, y luego configura un servicio web usando `include_files_service!` //! con [`include_files!`](https://docs.rs/pagetop/latest/pagetop/macro.include_files.html), y luego
//! configura un servicio web usando [`include_files_service!`](https://docs.rs/pagetop/latest/pagetop/macro.include_files_service.html)
//! para servir tu conjunto de recursos desde la ruta indicada: //! para servir tu conjunto de recursos desde la ruta indicada:
//! //!
//! ```rust#ignore //! ```rust#ignore
@ -92,7 +111,7 @@
//! } //! }
//! ``` //! ```
//! //!
//! También puedes incluir el conjunto de recursos declarando un `HashMap` estático global: //! También podrías acceder a tu conjunto de recursos declarando un `HashMap` estático global:
//! //!
//! ```rust#ignore //! ```rust#ignore
//! use pagetop::prelude::*; //! use pagetop::prelude::*;

View file

@ -20,10 +20,11 @@ necesidad de referenciar `maud` o `smart_default` en las dependencias del archiv
cada proyecto `PageTop`. cada proyecto `PageTop`.
# 📦 Sobre PageTop # 📌 Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo con convenciones que reivindican la [PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la sencillez de la web
sencillez de la web clásica aplicando *renderizado en el servidor* (SSR), HTML, CSS y JS. clásica combinando SSR (*renderizado en el servidor*), HTML, CSS y JS, para crear soluciones web
modulares, extensibles y configurables.
# 🚧 Advertencia # 🚧 Advertencia

View file

@ -1,4 +1,21 @@
//! Una colección de macros que impulsan el desarrollo con `PageTop`. //! <div align="center">
//!
//! <h1>PageTop Macros</h1>
//!
//! <p>Una colección de macros que mejoran la experiencia de desarrollo con <strong>PageTop</strong>.</p>
//!
//! [![Licencia](https://img.shields.io/badge/license-MIT%2FApache-blue.svg?label=Licencia&style=for-the-badge)](#-license)
//! [![Doc API](https://img.shields.io/docsrs/pagetop-macros?label=Doc%20API&style=for-the-badge&logo=Docs.rs)](https://docs.rs/pagetop-macros)
//! [![Crates.io](https://img.shields.io/crates/v/pagetop-macros.svg?style=for-the-badge&logo=ipfs)](https://crates.io/crates/pagetop-macros)
//! [![Descargas](https://img.shields.io/crates/d/pagetop-macros.svg?label=Descargas&style=for-the-badge&logo=transmission)](https://crates.io/crates/pagetop-macros)
//!
//! </div>
//!
//! # 📌 Sobre PageTop
//!
//! [`PageTop`](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la sencillez de
//! la web clásica combinando SSR (*renderizado en el servidor*), HTML, CSS y JS, para crear
//! soluciones web modulares, extensibles y configurables.
mod maud; mod maud;
mod smart_default; mod smart_default;

View file

@ -5,7 +5,7 @@
<p>Integra SeaORM para trabajar con bases de datos en aplicaciones <strong>PageTop</strong>.</p> <p>Integra SeaORM para trabajar con bases de datos en aplicaciones <strong>PageTop</strong>.</p>
[![Licencia](https://img.shields.io/badge/license-MIT%2FApache-blue.svg?label=Licencia&style=for-the-badge)](#-license) [![Licencia](https://img.shields.io/badge/license-MIT%2FApache-blue.svg?label=Licencia&style=for-the-badge)](#-license)
[![Doc API](https://img.shields.io/docsrs/pagetop-seaorm?label=Doc%20API&label=API%20Docs&style=for-the-badge&logo=Docs.rs)](https://docs.rs/pagetop-seaorm) [![Doc API](https://img.shields.io/docsrs/pagetop-seaorm?label=Doc%20API&style=for-the-badge&logo=Docs.rs)](https://docs.rs/pagetop-seaorm)
[![Crates.io](https://img.shields.io/crates/v/pagetop-seaorm.svg?style=for-the-badge&logo=ipfs)](https://crates.io/crates/pagetop-seaorm) [![Crates.io](https://img.shields.io/crates/v/pagetop-seaorm.svg?style=for-the-badge&logo=ipfs)](https://crates.io/crates/pagetop-seaorm)
[![Descargas](https://img.shields.io/crates/d/pagetop-seaorm.svg?label=Descargas&style=for-the-badge&logo=transmission)](https://crates.io/crates/pagetop-seaorm) [![Descargas](https://img.shields.io/crates/d/pagetop-seaorm.svg?label=Descargas&style=for-the-badge&logo=transmission)](https://crates.io/crates/pagetop-seaorm)
@ -17,10 +17,11 @@ exportar sus funcionalidades, y también integra en código una versión adaptad
permitir migraciones independientes para cada paquete del proyecto. permitir migraciones independientes para cada paquete del proyecto.
# 📦 Sobre PageTop # 📌 Sobre PageTop
[PageTop](https://docs.rs/pagetop) es un entorno de desarrollo con convenciones que reivindican la [PageTop](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la sencillez de la web
sencillez de la web clásica aplicando *renderizado en el servidor* (SSR), HTML, CSS y JS. clásica combinando SSR (*renderizado en el servidor*), HTML, CSS y JS, para crear soluciones web
modulares, extensibles y configurables.
# 🚧 Advertencia # 🚧 Advertencia

View file

@ -1,4 +1,4 @@
//! Configuration settings for the SeaORM PageTop package. //! Opciones de configuración del paquete.
//! //!
//! Example: //! Example:
//! //!

View file

@ -1,3 +1,22 @@
//! <div align="center">
//!
//! <h1>PageTop SeaORM</h1>
//!
//! <p>Integra SeaORM para trabajar con bases de datos en aplicaciones <strong>PageTop</strong>.</p>
//!
//! [![Licencia](https://img.shields.io/badge/license-MIT%2FApache-blue.svg?label=Licencia&style=for-the-badge)](#-license)
//! [![Doc API](https://img.shields.io/docsrs/pagetop-seaorm?label=Doc%20API&style=for-the-badge&logo=Docs.rs)](https://docs.rs/pagetop-seaorm)
//! [![Crates.io](https://img.shields.io/crates/v/pagetop-seaorm.svg?style=for-the-badge&logo=ipfs)](https://crates.io/crates/pagetop-seaorm)
//! [![Descargas](https://img.shields.io/crates/d/pagetop-seaorm.svg?label=Descargas&style=for-the-badge&logo=transmission)](https://crates.io/crates/pagetop-seaorm)
//!
//! </div>
//!
//! # 📌 Sobre PageTop
//!
//! [`PageTop`](https://docs.rs/pagetop) es un entorno de desarrollo que reivindica la sencillez de
//! la web clásica combinando SSR (*renderizado en el servidor*), HTML, CSS y JS, para crear
//! soluciones web modulares, extensibles y configurables.
use pagetop::prelude::*; use pagetop::prelude::*;
use std::sync::LazyLock; use std::sync::LazyLock;
@ -5,7 +24,7 @@ use std::sync::LazyLock;
pub mod config; pub mod config;
pub mod db; pub mod db;
/// The package Prelude. /// *Prelude* del paquete.
pub mod prelude { pub mod prelude {
pub use crate::db; pub use crate::db;
pub use crate::install_migrations; pub use crate::install_migrations;
@ -13,7 +32,7 @@ pub mod prelude {
include_locales!(LOCALES_SEAORM); include_locales!(LOCALES_SEAORM);
/// Implements [`PackageTrait`] and specific package API. /// Implementa [`PackageTrait`] y API específica.
pub struct SeaORM; pub struct SeaORM;
impl PackageTrait for SeaORM { impl PackageTrait for SeaORM {

View file

@ -1,4 +1,4 @@
//! Carga los ajustes de configuración. //! Carga las opciones de configuración.
//! //!
//! These settings are loaded from [TOML](https://toml.io) files as `key = value` pairs and mapped //! These settings are loaded from [TOML](https://toml.io) files as `key = value` pairs and mapped
//! into type-safe structures with predefined values. //! into type-safe structures with predefined values.

View file

@ -1,4 +1,4 @@
//! Ajustes globales de `PageTop`. //! Opciones globales de configuración de `PageTop`.
use crate::include_config; use crate::include_config;

View file

@ -14,7 +14,7 @@
//! <br> //! <br>
//! </div> //! </div>
//! //!
//! `PageTop` reivindica la sencillez de la web clásica utilizando SSR (*renderizado en el //! `PageTop` reivindica la sencillez de la web clásica combinando SSR (*renderizado en el
//! servidor*), HTML, CSS y JavaScript. Proporciona un conjunto completo de funcionalidades que //! servidor*), HTML, CSS y JavaScript. Proporciona un conjunto completo de funcionalidades que
//! pueden extenderse y adaptarse a las necesidades de cada solución web implementando: //! pueden extenderse y adaptarse a las necesidades de cada solución web implementando:
//! //!
@ -28,7 +28,7 @@
//! * **Paquetes** (*packages*). Extienden o personalizan funcionalidades existentes interactuando //! * **Paquetes** (*packages*). Extienden o personalizan funcionalidades existentes interactuando
//! con las APIs de `PageTop` o de paquetes de terceros. //! con las APIs de `PageTop` o de paquetes de terceros.
//! //!
//! # ⚡️ Inicio rápido //! # ⚡️ Guía rápida
//! //!
//! La aplicación más sencilla de `PageTop` se ve así: //! La aplicación más sencilla de `PageTop` se ve así:
//! //!
@ -96,9 +96,9 @@ pub type Weight = i8;
// Funciones y macros útiles. // Funciones y macros útiles.
pub mod util; pub mod util;
// Carga los ajustes de configuración. // Carga las opciones de configuración.
pub mod config; pub mod config;
// Ajustes globales. // Opciones de configuración globales.
pub mod global; pub mod global;
// Gestión de trazas y registro de eventos de la aplicación. // Gestión de trazas y registro de eventos de la aplicación.
pub mod trace; pub mod trace;