feat: adoptar branding oficial drop.sigmac.app en templates, docs e infra
This commit is contained in:
@@ -1328,7 +1328,7 @@ Plataforma de lealtad desarrollada para gestionar clientes y acumulación de pun
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### app_compartir — Plataforma de Transferencia y Visor Rápido de Archivos
|
### drop.sigmac.app (app_compartir) — Plataforma de Transferencia y Visor Rápido de Archivos
|
||||||
|
|
||||||
**Descripción:**
|
**Descripción:**
|
||||||
Aplicación web en Go para transferencia inmediata de archivos, fotos, documentos y texto/código entre dispositivos (PC y móvil) sin depender de WhatsApp. Incluye un visor universal integrado con reproductores multimedia, lector de PDF y visualizador de código, además de generación instantánea de código QR para escaneo móvil.
|
Aplicación web en Go para transferencia inmediata de archivos, fotos, documentos y texto/código entre dispositivos (PC y móvil) sin depender de WhatsApp. Incluye un visor universal integrado con reproductores multimedia, lector de PDF y visualizador de código, además de generación instantánea de código QR para escaneo móvil.
|
||||||
@@ -1341,7 +1341,7 @@ Aplicación web en Go para transferencia inmediata de archivos, fotos, documento
|
|||||||
| Estado actual | ✅ Operativo / En pruebas |
|
| Estado actual | ✅ Operativo / En pruebas |
|
||||||
| Ubicación local | `siax-amd` — `/home/pablinux/Projects/GO/app_compartir` |
|
| Ubicación local | `siax-amd` — `/home/pablinux/Projects/GO/app_compartir` |
|
||||||
| Servidor de producción | `server-webapps` CT 132 (`192.168.10.160`) — pendiente deploy |
|
| Servidor de producción | `server-webapps` CT 132 (`192.168.10.160`) — pendiente deploy |
|
||||||
| Dominio público | `compartir.sigmac.app` (o `compartir.telcotronics.net`) |
|
| Dominio público | `drop.sigmac.app` |
|
||||||
| Puerto | `8085` |
|
| Puerto | `8085` |
|
||||||
| Servicio systemd | `app-compartir.service` |
|
| Servicio systemd | `app-compartir.service` |
|
||||||
|
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
| 2026-10-12 | Backend autónomo en Go con SQLite | Binario único de alto rendimiento, bajo consumo de memoria y concurrencia nativa con goroutine para la limpieza periódica. |
|
| 2026-10-12 | Backend autónomo en Go con SQLite | Binario único de alto rendimiento, bajo consumo de memoria y concurrencia nativa con goroutine para la limpieza periódica. |
|
||||||
| 2026-10-13 | Generación de QR nativa en Go vía `/qr/{id}` | Se utiliza `github.com/skip2/go-qrcode` para servir el QR directamente en formato PNG (256x256), garantizando compatibilidad total con cualquier cámara de smartphone sin depender de scripts cliente pesados. |
|
| 2026-10-13 | Generación de QR nativa en Go vía `/qr/{id}` | Se utiliza `github.com/skip2/go-qrcode` para servir el QR directamente en formato PNG (256x256), garantizando compatibilidad total con cualquier cámara de smartphone sin depender de scripts cliente pesados. |
|
||||||
| 2026-10-13 | Soporte doble de login: WebControl corporativo + Google OAuth | Brinda flexibilidad tanto para colaboradores del ecosistema Telcotronics (vía `api.siax-system.net`) como para usuarios externos con Google. |
|
| 2026-10-13 | Soporte doble de login: WebControl corporativo + Google OAuth | Brinda flexibilidad tanto para colaboradores del ecosistema Telcotronics (vía `api.siax-system.net`) como para usuarios externos con Google. |
|
||||||
|
| 2026-10-14 | Adopción de la marca y dominio `drop.sigmac.app` | Nombre conciso, memorable y alineado con los servicios y subdominios del ecosistema SIGMA (sigmac.app). |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
# Configuración de app_compartir
|
# Configuración de drop.sigmac.app (app_compartir)
|
||||||
PORT=8085
|
PORT=8085
|
||||||
BASE_URL=http://localhost:8085
|
BASE_URL=http://localhost:8085
|
||||||
DATA_DIR=./data
|
DATA_DIR=./data
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# 🚀 app_compartir
|
# 🚀 drop.sigmac.app
|
||||||
|
|
||||||
> **Pasa fotos, notas, PDFs y archivos entre tu teléfono y tu ordenador en segundos — sin necesidad de abrir WhatsApp ni mandar mensajes a tu propio chat.**
|
> **Pasa fotos, notas, PDFs y archivos entre tu teléfono y tu ordenador en segundos — sin necesidad de abrir WhatsApp ni mandar mensajes a tu propio chat.**
|
||||||
|
|
||||||
@@ -10,7 +10,7 @@ Una aplicación web ágil, moderna y ligera desarrollada en **Go**. Permite tran
|
|||||||
|
|
||||||
Pasarse una foto de la PC al celular, un fragmento de código, una contraseña temporal o un PDF habitualmente obliga a abrir WhatsApp Web, buscar tu propio chat ("Chat contigo mismo"), enviar el archivo (que a menudo se recomprime) y luego borrarlo.
|
Pasarse una foto de la PC al celular, un fragmento de código, una contraseña temporal o un PDF habitualmente obliga a abrir WhatsApp Web, buscar tu propio chat ("Chat contigo mismo"), enviar el archivo (que a menudo se recomprime) y luego borrarlo.
|
||||||
|
|
||||||
**app_compartir elimina toda esa fricción:**
|
**drop.sigmac.app elimina toda esa fricción:**
|
||||||
1. Arrastras el archivo o pegas una captura con <kbd>Ctrl+V</kbd> en el navegador.
|
1. Arrastras el archivo o pegas una captura con <kbd>Ctrl+V</kbd> en el navegador.
|
||||||
2. Apuntas con la cámara de tu móvil al código QR que aparece en pantalla.
|
2. Apuntas con la cámara de tu móvil al código QR que aparece en pantalla.
|
||||||
3. ¡Listo! Se abre el visor en tu móvil de forma inmediata.
|
3. ¡Listo! Se abre el visor en tu móvil de forma inmediata.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# agents.md — Punto de entrada del proyecto: app_compartir
|
# agents.md — Punto de entrada del proyecto: drop.sigmac.app (app_compartir)
|
||||||
|
|
||||||
> **Reglas:**
|
> **Reglas:**
|
||||||
> - Este archivo es el eslabón más importante. Leerlo siempre antes de cualquier tarea.
|
> - Este archivo es el eslabón más importante. Leerlo siempre antes de cualquier tarea.
|
||||||
@@ -44,21 +44,21 @@ Proporcionar una aplicación web ágil en Go para transferir, compartir y previs
|
|||||||
## Módulos del sistema
|
## Módulos del sistema
|
||||||
|
|
||||||
### 1. Motor de Almacenamiento y Uploads (`storage`)
|
### 1. Motor de Almacenamiento y Uploads (`storage`)
|
||||||
**Estado: ⏳ Pendiente**
|
**Estado: ✅ Completo**
|
||||||
Manejo de archivos multipart, validación de tamaños, generación de IDs únicos (slugs) y persistencia en `./uploads/`.
|
Manejo de archivos multipart, validación de tamaños, generación de IDs únicos (slugs) y persistencia en `./uploads/`.
|
||||||
|
|
||||||
### 2. Visor Universal (`viewer`)
|
### 2. Visor Universal (`viewer`)
|
||||||
**Estado: ⏳ Pendiente**
|
**Estado: ✅ Completo**
|
||||||
Interfaz de visualización responsive con detección de tipo MIME: imágenes con zoom, video/audio HTML5, visor PDF embebido, visualizador de texto/código con botón de copiar y QR de acceso rápido.
|
Interfaz de visualización responsive con detección de tipo MIME: imágenes con zoom, video/audio HTML5, visor PDF embebido, visualizador de texto/código con botón de copiar y QR de acceso rápido.
|
||||||
|
|
||||||
### 3. Autenticación y Sesiones (`auth`)
|
### 3. Autenticación y Sesiones (`auth`)
|
||||||
**Estado: ⏳ Pendiente**
|
**Estado: ✅ Completo**
|
||||||
- Sesión Guest por defecto (identificador anónimo/cookie).
|
- Sesión Guest por defecto (identificador anónimo/cookie).
|
||||||
- Integración WebControl (`https://api.siax-system.net/api/auth/login`).
|
- Integración WebControl (`https://api.siax-system.net/api/auth/login`).
|
||||||
- Integración Google OAuth2.
|
- Integración Google OAuth2.
|
||||||
|
|
||||||
### 4. Worker de Limpieza 24h (`cleaner`)
|
### 4. Worker de Limpieza 24h (`cleaner`)
|
||||||
**Estado: ⏳ Pendiente**
|
**Estado: ✅ Completo**
|
||||||
Goroutine periódica (ticker) que consulta items donde `is_guest = true AND expires_at <= NOW()`, borrando el archivo físico del disco y la fila de SQLite. Las cuentas registradas son ignoradas por el limpiador.
|
Goroutine periódica (ticker) que consulta items donde `is_guest = true AND expires_at <= NOW()`, borrando el archivo físico del disco y la fila de SQLite. Las cuentas registradas son ignoradas por el limpiador.
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -73,7 +73,7 @@ Goroutine periódica (ticker) que consulta items donde `is_guest = true AND expi
|
|||||||
|
|
||||||
| Parámetro | Valor |
|
| Parámetro | Valor |
|
||||||
|---|---|
|
|---|---|
|
||||||
| Dominio público | Por definir (ej: `compartir.sigmac.app` / `compartir.telcotronics.net`) |
|
| Dominio público | `drop.sigmac.app` |
|
||||||
| Puerto interno | `8085` (o configurable vía `PORT`) |
|
| Puerto interno | `8085` (o configurable vía `PORT`) |
|
||||||
| Servicio systemd | `app-compartir.service` |
|
| Servicio systemd | `app-compartir.service` |
|
||||||
| BD principal | SQLite local (`data/compartir.db`) |
|
| BD principal | SQLite local (`data/compartir.db`) |
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ func main() {
|
|||||||
cfg := config.Load()
|
cfg := config.Load()
|
||||||
|
|
||||||
log.Println("==================================================")
|
log.Println("==================================================")
|
||||||
log.Printf("🚀 Iniciando app_compartir en puerto %s", cfg.Port)
|
log.Printf("🚀 Iniciando drop.sigmac.app en puerto %s", cfg.Port)
|
||||||
log.Printf("🌐 URL Base: %s", cfg.BaseURL)
|
log.Printf("🌐 URL Base: %s", cfg.BaseURL)
|
||||||
log.Printf("📂 Almacenamiento: %s (Uploads: %s)", cfg.DataDir, cfg.UploadDir)
|
log.Printf("📂 Almacenamiento: %s (Uploads: %s)", cfg.DataDir, cfg.UploadDir)
|
||||||
log.Printf("🛡️ Auth WebControl: %s", cfg.WebControlURL)
|
log.Printf("🛡️ Auth WebControl: %s", cfg.WebControlURL)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>{{block "title" .}}Compartir — Pasa archivos y texto al instante{{end}}</title>
|
<title>{{block "title" .}}drop.sigmac.app — Pasa archivos y texto al instante{{end}}</title>
|
||||||
<!-- Tailwind CSS CDN -->
|
<!-- Tailwind CSS CDN -->
|
||||||
<script src="https://cdn.tailwindcss.com"></script>
|
<script src="https://cdn.tailwindcss.com"></script>
|
||||||
<script>
|
<script>
|
||||||
@@ -45,9 +45,9 @@
|
|||||||
<div class="max-w-6xl mx-auto px-4 h-16 flex items-center justify-between">
|
<div class="max-w-6xl mx-auto px-4 h-16 flex items-center justify-between">
|
||||||
<a href="/" class="flex items-center gap-2.5 font-bold text-lg tracking-tight hover:opacity-90 transition">
|
<a href="/" class="flex items-center gap-2.5 font-bold text-lg tracking-tight hover:opacity-90 transition">
|
||||||
<span class="w-9 h-9 rounded-xl bg-gradient-to-tr from-brand-600 to-emerald-400 flex items-center justify-center text-slate-950 font-black shadow-lg shadow-brand-500/20">
|
<span class="w-9 h-9 rounded-xl bg-gradient-to-tr from-brand-600 to-emerald-400 flex items-center justify-center text-slate-950 font-black shadow-lg shadow-brand-500/20">
|
||||||
<i class="fa-solid fa-share-nodes text-base"></i>
|
<i class="fa-solid fa-cloud-arrow-up text-base"></i>
|
||||||
</span>
|
</span>
|
||||||
<span class="text-white">app<span class="text-brand-500">_compartir</span></span>
|
<span class="text-white">drop<span class="text-brand-500">.sigmac.app</span></span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<!-- User status / Actions -->
|
<!-- User status / Actions -->
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
|
|
||||||
<!-- Footer -->
|
<!-- Footer -->
|
||||||
<footer class="border-t border-slate-900 py-6 text-center text-xs text-slate-500">
|
<footer class="border-t border-slate-900 py-6 text-center text-xs text-slate-500">
|
||||||
<p>Ecosistema Telcotronics • Pasa archivos, texto y capturas sin usar WhatsApp</p>
|
<p><strong>drop.sigmac.app</strong> • Ecosistema Telcotronics • Pasa archivos, texto y capturas sin usar WhatsApp</p>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
{{block "scripts" .}}{{end}}
|
{{block "scripts" .}}{{end}}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{{template "base.html" .}}
|
{{template "base.html" .}}
|
||||||
|
|
||||||
{{define "title"}}Archivo Expirado — app_compartir{{end}}
|
{{define "title"}}Archivo Expirado — drop.sigmac.app{{end}}
|
||||||
|
|
||||||
{{define "content"}}
|
{{define "content"}}
|
||||||
<div class="max-w-md mx-auto space-y-6 pt-12 text-center">
|
<div class="max-w-md mx-auto space-y-6 pt-12 text-center">
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{{template "base.html" .}}
|
{{template "base.html" .}}
|
||||||
|
|
||||||
{{define "title"}}Compartir — Inicio{{end}}
|
{{define "title"}}drop.sigmac.app — Pasa archivos y texto al instante{{end}}
|
||||||
|
|
||||||
{{define "content"}}
|
{{define "content"}}
|
||||||
<div class="max-w-3xl mx-auto space-y-8">
|
<div class="max-w-3xl mx-auto space-y-8">
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{{template "base.html" .}}
|
{{template "base.html" .}}
|
||||||
|
|
||||||
{{define "title"}}Iniciar Sesión — app_compartir{{end}}
|
{{define "title"}}Iniciar Sesión — drop.sigmac.app{{end}}
|
||||||
|
|
||||||
{{define "content"}}
|
{{define "content"}}
|
||||||
<div class="max-w-md mx-auto space-y-6 pt-4">
|
<div class="max-w-md mx-auto space-y-6 pt-4">
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
<div class="w-12 h-12 mx-auto rounded-2xl bg-gradient-to-tr from-brand-600 to-emerald-400 flex items-center justify-center text-slate-950 text-xl font-black shadow-lg shadow-brand-500/20">
|
<div class="w-12 h-12 mx-auto rounded-2xl bg-gradient-to-tr from-brand-600 to-emerald-400 flex items-center justify-center text-slate-950 text-xl font-black shadow-lg shadow-brand-500/20">
|
||||||
<i class="fa-solid fa-lock"></i>
|
<i class="fa-solid fa-lock"></i>
|
||||||
</div>
|
</div>
|
||||||
<h1 class="text-2xl font-bold text-white">Acceso a app_compartir</h1>
|
<h1 class="text-2xl font-bold text-white">Acceso a drop.sigmac.app</h1>
|
||||||
<p class="text-xs text-slate-400">
|
<p class="text-xs text-slate-400">
|
||||||
Inicia sesión para que tus archivos se guarden de forma <strong class="text-emerald-400 font-semibold">permanente</strong> y no caduquen en 24h.
|
Inicia sesión para que tus archivos se guarden de forma <strong class="text-emerald-400 font-semibold">permanente</strong> y no caduquen en 24h.
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{{template "base.html" .}}
|
{{template "base.html" .}}
|
||||||
|
|
||||||
{{define "title"}}Mis Archivos — app_compartir{{end}}
|
{{define "title"}}Mis Archivos — drop.sigmac.app{{end}}
|
||||||
|
|
||||||
{{define "content"}}
|
{{define "content"}}
|
||||||
<div class="max-w-5xl mx-auto space-y-6">
|
<div class="max-w-5xl mx-auto space-y-6">
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{{template "base.html" .}}
|
{{template "base.html" .}}
|
||||||
|
|
||||||
{{define "title"}}{{.Share.Title}} — Visor de app_compartir{{end}}
|
{{define "title"}}{{.Share.Title}} — drop.sigmac.app{{end}}
|
||||||
|
|
||||||
{{define "content"}}
|
{{define "content"}}
|
||||||
<div class="max-w-4xl mx-auto space-y-6">
|
<div class="max-w-4xl mx-auto space-y-6">
|
||||||
|
|||||||
Reference in New Issue
Block a user