Treecify es una plataforma Micro-SaaS "Self-Hosted" diseñada para que negocios locales y creadores gestionen su identidad digital. Permite crear una página de aterrizaje ("Link in Bio") totalmente personalizada, ultra-rápida y generar códigos QR dinámicos para el mundo físico.
La versión v3.0 introduce personalización visual completa, gestión de avatares y una arquitectura Docker blindada para producción en entornos mixtos (AMD64/ARM64).
- 🎨 Personalización Total: Nuevo Panel de Diseño. Elige entre temas predefinidos o personaliza colores de fondo, botones y textos manualmente.
- 📸 Gestión de Avatares: Subida de imágenes de perfil con Multer. Incluye limpieza automática de archivos antiguos para ahorrar espacio y URLs anti-caché.
- 📱 Mobile-First & Instantáneo: Renderizado optimizado para carga < 1s en móviles.
- ⚡ Dashboard Reactivo: Vista previa en tiempo real. Los cambios de foto y colores se reflejan al instante sin recargar.
- 🗄️ Persistencia Blindada: Base de datos SQLite y sistema de archivos local para imágenes. Tus datos sobreviven a reinicios.
- 🐳 Docker Multi-Arch: Construido sobre
node:slimcon soporte nativo para x86_64 y ARM64 (Raspberry Pi, CasaOS), solucionando problemas de compilación nativa (SQLite). - 🔒 Seguridad Mejorada: Validación de sesión robusta, manejo de
Mixed Contentvía variables de entorno y limpieza de localStorage en tokens expirados.
- Frontend: React + Vite + Tailwind CSS (v3).
- Backend: Node.js + Express (ES Modules).
- Gestión de Archivos: Multer (Configuración modular).
- Base de Datos: SQLite3 (Driver
sqlite3compilado para multi-arquitectura). - Infraestructura: Docker + Docker Compose (Soporte HTTPS Proxy).
Estructura modularizada para separar configuración, rutas y lógica de negocio.
treecify/
├── .dockerignore # Ignora uploads locales y node_modules
├── docker-compose.yml # Orquestación con volúmenes persistentes
├── Dockerfile # Build Multi-Stage basado en Debian Slim
├── vite.config.js # Proxy reverso para desarrollo
├── uploads/ # Carpeta de persistencia de imágenes (Mapeada en Docker)
├── src/
│ ├── config/ # Configuraciones externas
│ ├── components/ # UI Modular
│ ├── hooks/ # Custom Hooks (useDashboard)
│ ├── server/ # Backend Node.js
│ └── App.jsx # Estado Global
└── package.json
