Easy Connect es una aplicación interactiva desarrollada para mostrar a los clientes una representación 3D referencial de su futura instalación eléctrica, junto con las especificaciones técnicas de su proyecto antes de la instalación real.
El sistema combina una interfaz moderna basada en React + Vite + TailwindCSS + shadcn/ui, renderizado 3D con Three.js, y un servidor ligero embebido en Go, que genera un ejecutable autónomo sin dependencias externas.
├── 3D/ # Modelos y texturas 3D utilizados para la visualización
├── facade-planner/ # Aplicación principal (frontend con React + Vite)
├── Go/ # Servidor Go embebido para distribución y despliegue
│ └── server.go
└── dist/ # Carpeta generada por Vite tras el build (auto-embebida)
| Área | Tecnologías |
|---|---|
| Frontend | React 18, TypeScript 5, Vite 7 |
| UI y diseño | TailwindCSS 3, shadcn/ui, Radix UI, Lucide Icons |
| 3D y gráficos | Three.js, @react-three/fiber, @react-three/drei |
| Validaciones y formularios | React Hook Form, Zod |
| Estado y datos | TanStack React Query |
| Utilidades | date-fns, html2canvas, jsPDF, recharts |
| Servidor | Go 1.23+, embed.FS, net/http |
| Build Tools | Vite, TypeScript, ESLint, PostCSS, Autoprefixer |
- Radix UI – componentes accesibles y modulares.
- shadcn/ui – sistema de diseño moderno para React con TailwindCSS.
- React Three Fiber / Drei – renderizado 3D interactivo.
- jsPDF + html2canvas – generación de reportes PDF con vista 3D y disclaimers.
- Tailwind Merge / Animate – composición dinámica de estilos.
cd facade-planner
npm installnpm run devLa app se abrirá en http://localhost:5173
npm run buildEsto genera la carpeta /dist que será embebida dentro del servidor Go.
cd ../Go
go build -o server.exe server.goEjecuta:
./server.exeEl servidor abrirá automáticamente tu navegador en
👉 http://localhost:8484
- Usa Go embed.FS para empaquetar todos los archivos del
dist/dentro del binario. - Sirve rutas SPA con
index.htmlcomo fallback. - Implementa una pantalla de carga animada antes de redirigir a la app.
- Incluye caché inmútale para activos estáticos (
assets/*).
Para generar ejecutables en otros sistemas:
# Linux
GOOS=linux GOARCH=amd64 go build -o server-linux server.go
# macOS
GOOS=darwin GOARCH=amd64 go build -o server-mac server.goEste proyecto se distribuye bajo una Licencia Pública No Comercial (LPNC) basada en la GPL-3.0, adaptada para uso interno y sin fines comerciales.
Las bibliotecas de terceros incluidas conservan sus respectivas licencias MIT o equivalentes.
Consulta el archivo LICENSE para más detalles.
Desarrollado por:
Mariano Moisés Oblitas Davila