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.
This commit is contained in:
Manuel Cillero 2025-07-03 20:33:52 +02:00
parent 45e2882653
commit cbee4c2cb8
13 changed files with 1818 additions and 1 deletions

38
Cargo.toml Normal file
View file

@ -0,0 +1,38 @@
[package]
name = "pagetop"
version = "0.0.1"
edition = "2021"
description = """\
Un entorno de desarrollo para crear soluciones web modulares, extensibles y configurables.\
"""
categories = ["web-programming", "gui", "development-tools", "asynchronous"]
keywords = ["pagetop", "web", "framework", "frontend", "ssr"]
repository.workspace = true
homepage.workspace = true
license.workspace = true
authors.workspace = true
[dependencies]
actix-web = "4.11.0"
pagetop-macros.workspace = true
[workspace]
resolver = "2"
members = [
"helpers/pagetop-macros",
]
[workspace.package]
repository = "https://git.cillero.es/manuelcillero/pagetop"
homepage = "https://pagetop.cillero.es"
license = "MIT OR Apache-2.0"
authors = ["Manuel Cillero <manuel@cillero.es>"]
[workspace.dependencies]
# Helpers
pagetop-macros = { version = "0.0", path = "helpers/pagetop-macros" }