Commit graph

33 commits

Author SHA1 Message Date
4c07a2b75a (util): Añade indoc para indentar código bien 2025-12-21 10:22:53 +01:00
8842063f01 🩹 Corrige doc y código por cambios en Page 2025-12-21 10:22:52 +01:00
9716f43dd7 📝 (doc): Normaliza referencias al nombre PageTop 2025-12-21 10:22:02 +01:00
65fb79f5ed 🧑‍💻 Mejora la integración de archivos estáticos
Elimina el uso de `include_files!` y sustituye `include_files_service!`
por alternativas más completas ofreciadas por `static_files_service!`.
2025-12-21 10:21:10 +01:00
d3263beff7 📝 Cambia el formato para la documentación (#4)
Reviewed-on: #4
Co-authored-by: Manuel Cillero <manuel@cillero.es>
Co-committed-by: Manuel Cillero <manuel@cillero.es>
2025-12-21 10:21:10 +01:00
f44b6ade4f Añade librería para gestionar recursos estáticos (#1)
Reviewed-on: #1
Co-authored-by: Manuel Cillero <manuel@cillero.es>
Co-committed-by: Manuel Cillero <manuel@cillero.es>
2025-12-21 10:21:10 +01:00
eb7302b0f3 🩹 Corrige enlaces de licencia en la documentación 2025-12-21 10:21:09 +01:00
7bdd90d37c 📝 Retoques menores en la documentación 2025-12-21 10:21:02 +01:00
f29a364682 🚧 Normaliza versiones a las últimas publicaciones
Revisa y completa la documentación general.
2025-12-21 10:21:02 +01:00
4c45c3d251 Añade página de bienvenida y de comprobación
- Añade nueva hoja de estilos (normalize.css) al tema básico.
- Activa la extensión de la página de bienvenida por defecto en el
   registro de extensiones.
- Añade traducciones en inglés y español para el contenido de la página
  de bienvenida.
- Incluye estilos CSS y recursos gráficos para el diseño y disposición
  de la página de bienvenida.
2025-12-21 10:18:14 +01:00
81f2e9f04b 💡 Mejora los comentarios para normalizar 2025-12-21 10:17:55 +01:00
cafa3e4276 Añade respuestas web con redirecciones HTTP 2025-12-21 10:17:48 +01:00
86add3e897 Añade el primer componente básico nativo
Este componente renderiza directamente código HTML durante el
renderizado del documento.
2025-12-21 10:17:48 +01:00
2ac09060b8 Añade acciones base y renderizado de componentes
- Añade acciones BeforeRender y AfterRender para ejecutar código
  personalizado antes y después de renderizar un componente.
- Introduce la acción PrepareRender para personalizar totalmente el
  renderizado de un componente.
- Se actualizan las definiciones de acciones para utilizar el nuevo
  "trait" ActionDispatcher.
- Se crea un nuevo trait ComponentTrait para definir componentes
  renderizables.
- Se implementan las estructuras Children y Child para gestionar
  componentes hijos dentro de un componente padre.
- Se añade OptionComponent para encapsular de forma segura componentes
  opcionales y poder usarlos en otros componentes.
2025-12-21 10:17:48 +01:00
74c850d5c8 Añade soporte para inyectar acciones en código 2025-12-21 10:17:48 +01:00
f2d9fff0c3 Añade soporte a temas en la API de extensiones
- Incluye una opción de configuración para definir el tema por defecto.
- Añade un tema básico predeterminado.
2025-12-21 10:17:48 +01:00
e6c59b8579 📝 Retoques en la documentación 2025-12-21 10:17:48 +01:00
8ea85a365e Añade soporte para recursos en documentos HTML
- Incluye los recursos favicon, hojas de estilo y scripts JavaScript.
- Se introduce una estructura de contexto que, además de gestionar el
  idioma y el uso de parámetros contextuales, permite administrar estos
  recursos en documentos HTML.
2025-12-21 10:17:48 +01:00
5fe4a7d1e6 🚑 (macros): Corrige rutas absolutas en html!
- Mantiene fijas las rutas absolutas en las funciones de la macro html!.
- Introduce un alias interno del crate (`extern crate self as pagetop;`)
  en `src/lib.rs` para que las expansiones funcionen uniformemente en
  tests, ejemplos y dependencias externas.
2025-12-21 10:17:33 +01:00
85bb448f78 📝 Actualiza documentación con favicon propio 2025-12-21 10:17:33 +01:00
39eb449310 Añade API para extensiones con funcionalidades
Añade el interfaz común que debe implementar cualquier extensión de
PageTop para añadir nuevas funcionalidades a la aplicación en forma de
servicios web y API de uso.
2025-12-21 10:17:33 +01:00
5c0129ee4a 🎨 Mejora definición encapsulando uso de recursos 2025-12-21 10:17:33 +01:00
bf3f0c0277 (macros): Añade macro builder_fn 2025-12-21 10:17:26 +01:00
1abf040b50 Añade gestión de recursos en binario o de disco
- Añade dosnuevas macros `include_files` y `include_files_service` para
  incluir los recursos preparados con `pagetop-build`.
- Añade nueva función útil `absolute_dir` y sus tests correspondientes.
2025-12-21 10:17:26 +01:00
e1e2f63e2b 📝 Actualiza el banner en la documentación 2025-12-21 10:17:26 +01:00
46b058776c Añade soporte para manejo de fechas y horas 2025-12-21 10:17:26 +01:00
4f08a50a8f Añade soporte para localización y traducción
- Incluye recursos Fluent básicos y pruebas asociadas.
- Nueva variable de configuración global para definir el idioma
  predeterminado.
2025-12-21 10:17:26 +01:00
1984e9611a Añade AutoDefault para derivar Default avanzado 2025-12-21 10:17:26 +01:00
4a7b328ea3 Añade macro para componer HTML en código
- Incorpora el código de la versión 0.25.0 de `maud_macros` creado por
  Chris Wong.
- Y reexporta los elementos esenciales desde la librería principal.
2025-12-21 10:17:26 +01:00
2914847ac0 Añade gestión de trazas y registro de eventos
- Reexporta macros esenciales de `tracing` para el registro de eventos.
- Inicializa el gestor de trazas en el servidor web.
2025-12-21 10:17:25 +01:00
0f2bbfe13a 📝 (config): Amplía y corrige documentación 2025-12-21 10:17:14 +01:00
f7dbd90af2 Añade lectura de configuración global y modular
- Soporta jerarquía de ficheros TOML que mapean ajustes a estructuras
  fuertemente tipadas con valores predefinidos.
- Permite definir configuraciones distintas para cada entorno.
- Añade la macro `include_config!` para facilitar la asignación modular
  de ajustes de configuración.
- Añade documentación detallada y tests de verificación.
2025-07-05 22:23:05 +02:00
cbee4c2cb8 Añade servidor web y primeras macros de PageTop
- Crea el crate raíz `pagetop` y configura el workspace con
  `helpers/pagetop-macros`.
- Añade las macros #[pagetop::main] y #[pagetop::test] que envuelven
  Actix-web para crear aplicaciones y pruebas asíncronas sin depender
  explícitamente del framework.
- Reexporta, mediante el módulo `service`, los tipos esenciales de
  Actix-web para gestionar servidores y servicios web.
- Implementa `Application::{new, run, test}` para simplificar el
  arranque y la ejecución de tests.
- Expone `pagetop::prelude` con las macros, `service` y `Application`
  para una API pública coherente.
- Incorpora ejemplo `examples/app-basic.rs` que levanta un servidor web
  vacío con el código mínimo para hacerlo.
2025-07-03 20:33:52 +02:00