Volver a la wiki

Agente · dev-frontend

Agente · dev-frontend

Propósito

Desarrollo y mantenimiento del frontend de CreaRack-Pro v1.0.49.

Stack activo

ComponenteVersiónPropósito
HTMX2.0.4Interactividad declarativa (Dashboard, CRUD)
Alpine.js3.14.8Reactividad ligera
Konva.js9.xCanvas 2D (Rack Editor, Map Editor)
Apache ECharts6.0.0Gráficas tiempo real (Observatory, Wireless)
xterm.js5.xTerminal SSH (Network Management)
Flatpickr4.6.13Date picker (Report Mode)
Vite6.xBuild tool (ES modules, TypeScript)

Arquitectura: patrón híbrido HTMX + JS Modular

HTMX (Dashboard, User Management, Trash, Device Groups)
├── 29 endpoints server-side rendering
├── 16 templates parciales en templates/htmx/
└── Declarativo, sin JavaScript manual

JS Modular (Editores, Terminal, Observatory, Wireless)
├── 112 archivos JS / módulos ES6
├── Services: ApiService, EChartsService, ToastService
└── State: StateManager, PersistenceManager

Regla principal: si la interacción puede resolverse con HTMX, usar HTMX. JS solo para lógica compleja de estado, canvas o visualizaciones.


Estructura de módulos JS (112 archivos)

static/js/
├── constants/          # Timing.js · Typography.js
├── services/           # ApiService · EChartsService · ToastService · Logger (6 archivos)
├── utils/              # IpValidator · KonvaLifecycle · TabHelper · DeviceFilterService · SidebarResize (6)
├── state_core/         # StateManager (Undo/Redo) · PersistenceManager (localStorage)
├── pages/              # dashboard · observatory · terminal · wireless (+ submódulos)
│   ├── observatory/    # ObservatoryCharts · CNS · Overview · Sentinel · Tabs · Alerts · WS · Settings · PingConsole (9)
│   └── wireless/       # WirelessDashboard · Detail · ChartGrid · ChartPanel · Registry · Report (6)
├── terminal/           # TabManager · MultiPaneManager · TerminalToolbar · Settings · ClusterMode · AgentLifecycle · ManualConnection · DeviceManager (10)
├── editor/             # Rack Editor: main · state · konva_setup · devices · ui_panels · ui_library · editor_api · modal_helper · PropertiesPanelRenderer/Events · SshConfigModal · ssh_integration · history_adapter · import_export · backups · sftp_ui · auto_provision_panel (17)
├── blueprints/         # Map Editor: map_editor · MapRender · MapInteraction · MapCables · MapRacks · MapHistoryAdapter · pathfinder · AutoPlansAdapter (8)
├── network/            # auto_provision.js (1)
└── modules/            # agent_connector · ssh_client · network_tools_v3 (3)

Estética NOC / Network-Native

El producto tiene identidad visual de herramienta de operaciones de red profesional — no es una app web genérica ni usa dark mode del sistema operativo:


Servicios centralizados (usar siempre estos, no duplicar)


Componentes principales

Rack Editor (editor/)

Map Editor (blueprints/)

Terminal Hub (terminal/)

Network Observatory (pages/observatory/)

Wireless Monitor (pages/wireless/)


Convenciones


Comandos de desarrollo (Windows)

# Instalar dependencias JS
npm install

# Arrancar Vite en modo desarrollo (hot reload)
npm run dev

# Build de producción
npm run build

Véase también

Subir