diff --git a/.agente/proyecto_estructura.md b/.agente/proyecto_estructura.md index da9e661..c962135 100644 --- a/.agente/proyecto_estructura.md +++ b/.agente/proyecto_estructura.md @@ -34,6 +34,11 @@ app_compartir/ │ └── storage/ │ └── storage.go # Slugs aleatorios, sniffing MIME y guardado en disco ├── web/ +│ ├── static/ # Iconos, favicons y recursos estáticos de la marca +│ │ ├── favicon.ico # Icono multirresolución para navegadores +│ │ ├── favicon.svg # Icono vectorial escalable y moderno +│ │ ├── icon-192.png # Icono PWA / accesos directos móviles +│ │ └── icon-512.png # Icono alta resolución / splash screen │ └── templates/ │ ├── base.html # Layout común con Tailwind CSS y FontAwesome │ ├── expired.html # Mensaje informativo de archivo guest caducado (24h) diff --git a/.agente/proyecto_memoria.md b/.agente/proyecto_memoria.md index e164684..61c5a71 100644 --- a/.agente/proyecto_memoria.md +++ b/.agente/proyecto_memoria.md @@ -20,6 +20,7 @@ | 2026-10-19 | Despliegue en producción en CT 132 con supervisión SIAX Monitor | Se desplegó en `server-webapps`. Registrado en SIAX Monitor (:8080) como `siax-app-DROP_SIGMAC_APP.service`, habilitando reinicio atómico vía API sin sudo. | | 2026-10-20 | Reasignación de puerto a 2008 para liberar 2006 a audio_control | Se acordó con pablinux liberar el puerto 2006 para `audio_control` (correlativo a SoundWave en 2005) y trasladar `drop.sigmac.app` al puerto 2008 en CT 132 y MCP Infraestructura (ID 34). | | 2026-10-20 | Activación de dominio público https://drop.sigmac.app | Pablinux configuró el proxy reverso Apache en CT 150 con SSL Let's Encrypt. Se optimizó `getBaseURL()` para forzar HTTPS en los enlaces y códigos QR generados cuando el Host es `drop.sigmac.app`. | +| 2026-10-20 | Identidad visual e iconos multi-formato (SVG, ICO, PNG) | Se diseñó un icono SVG escalable con flecha bidireccional y pulsos de transferencia en colores esmeralda/cian sobre contenedor squircle grafito oscuro. Se generaron versiones PNG (64, 192, 512 px) e ICO multi-resolución, enlazados en el navbar y servidos nativamente en `/favicon.ico` y `/favicon.svg`. | --- @@ -51,6 +52,7 @@ Versión funcional completa y validada: - [x] Soporte para proxy reverso dinámico Apache (`X-Forwarded-Proto`, `Host`) en puerto 2008 - [x] Registrar proyecto en MCP de Infraestructura (ID 34) y crear `id_agente.md` oficial - [x] Desplegar en producción en `server-webapps` (CT 132, :2008) y registrar en SIAX Monitor (:8080) +- [x] Crear icono SVG/PNG/ICO e integrarlo en la cabecera, navbar y servidor HTTP en producción --- diff --git a/.agente/tareas.md b/.agente/tareas.md index 08500b6..2aa7220 100644 --- a/.agente/tareas.md +++ b/.agente/tareas.md @@ -23,6 +23,7 @@ - [x] **Centro de Comunicaciones sigma-robot:** Autorizado formalmente por Pablinux como **Agente ID 86** (`Agente drop.sigmac.app`). Token definitivo resguardado en `.env` (modo 600). - [x] **Despliegue a Producción (CT 132 server-webapps):** Desplegado y ejecutándose activamente como `siax-app-DROP_SIGMAC_APP.service` supervisado por SIAX Monitor (`:8080`), escuchando en puerto interno `2008` (dejando el 2006 reservado para `audio_control`). Subida atómica y reinicio automático operativo. - [x] **Proxy Reverso Apache (SSL port 443 en CT 150):** Configurado por Pablinux y verificado operando al 100% en `https://drop.sigmac.app` (redirección 301 de HTTP a HTTPS, terminación SSL y proxy a `:2008`). Detección inteligente de HTTPS en enlaces generados y códigos QR. +- [x] **Identidad Visual e Iconos del Proyecto:** Creación de conjunto completo de iconos SVG vectoriales y ráster (SVG, ICO multi-resolución, PNG 64/192/512 px) con temática visual de transferencia (verde esmeralda / cian sobre grafito). Integrados en `web/templates/base.html` (meta tags, favicon, icono de marca en navbar) y expuestos vía `/favicon.ico`, `/favicon.svg` y `/static/*`. Desplegado en producción. --- diff --git a/desplegar.sh b/desplegar.sh index f68bda9..8ca54ce 100755 --- a/desplegar.sh +++ b/desplegar.sh @@ -53,7 +53,7 @@ compilar() { preparar_remoto() { echo "" echo "📂 Preparando estructura de directorios en $SERVIDOR:$REMOTE_DIR..." - remote "mkdir -p '$REMOTE_DIR/web/templates' '$REMOTE_DIR/data/uploads'" + remote "mkdir -p '$REMOTE_DIR/web/templates' '$REMOTE_DIR/web/static' '$REMOTE_DIR/data/uploads'" echo "✅ Directorios listos" } @@ -68,6 +68,7 @@ subir() { remote "mv -f '$REMOTE_DIR/app_compartir.tmp' '$REMOTE_DIR/app_compartir' && chmod 0755 '$REMOTE_DIR/app_compartir'" copy "$SCRIPT_DIR/init.sh" "$SCRIPT_DIR/.env.example" "$SCRIPT_DIR/siax-app-DROP_SIGMAC_APP.service" "$SERVIDOR:$REMOTE_DIR/" copy "$SCRIPT_DIR/web/templates/"*.html "$SERVIDOR:$REMOTE_DIR/web/templates/" + copy "$SCRIPT_DIR/web/static/"* "$SERVIDOR:$REMOTE_DIR/web/static/" remote "chmod 0755 '$REMOTE_DIR/init.sh'" echo "✅ Archivos sincronizados en $REMOTE_DIR" } diff --git a/main.go b/main.go index bbc58df..9ff35b6 100644 --- a/main.go +++ b/main.go @@ -56,6 +56,17 @@ func main() { mux := http.NewServeMux() + // Archivos estáticos e iconos + fs := http.FileServer(http.Dir("web/static")) + mux.Handle("GET /static/", http.StripPrefix("/static/", fs)) + mux.HandleFunc("GET /favicon.ico", func(w http.ResponseWriter, r *http.Request) { + http.ServeFile(w, r, "web/static/favicon.ico") + }) + mux.HandleFunc("GET /favicon.svg", func(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "image/svg+xml") + http.ServeFile(w, r, "web/static/favicon.svg") + }) + // Rutas Web mux.HandleFunc("GET /", h.Index) mux.HandleFunc("GET /v/{id}", h.View) diff --git a/web/static/favicon-64.png b/web/static/favicon-64.png new file mode 100644 index 0000000..981fd54 Binary files /dev/null and b/web/static/favicon-64.png differ diff --git a/web/static/favicon.ico b/web/static/favicon.ico new file mode 100644 index 0000000..a77ac66 Binary files /dev/null and b/web/static/favicon.ico differ diff --git a/web/static/favicon.svg b/web/static/favicon.svg new file mode 100644 index 0000000..ff08feb --- /dev/null +++ b/web/static/favicon.svg @@ -0,0 +1,75 @@ + diff --git a/web/static/icon-192.png b/web/static/icon-192.png new file mode 100644 index 0000000..c3f4ac2 Binary files /dev/null and b/web/static/icon-192.png differ diff --git a/web/static/icon-512.png b/web/static/icon-512.png new file mode 100644 index 0000000..00e142e Binary files /dev/null and b/web/static/icon-512.png differ diff --git a/web/templates/base.html b/web/templates/base.html index ff745d9..6241238 100644 --- a/web/templates/base.html +++ b/web/templates/base.html @@ -4,6 +4,11 @@