Dashboard ahora usa:
- fn_tokens::apply_dark_theme() al primer frame (colors + spacing
+ radius + rounding consistentes con @fn_library / Mantine).
- page_header_begin/end para el header (en vez de Text + Separator
+ Button manual). Subtítulo con conteos de entidades.
- empty_state en las 4 tablas cuando están vacías — mensaje amable
con acción sugerida en lugar de tabla vacía silenciosa.
Nuevas deps de compilación (.cpp fuentes añadidas al CMakeLists):
tokens.cpp, badge.cpp, empty_state.cpp, page_header.cpp.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
El .exe se enlazaba como console app (mingw default), lo que
abría una ventana de consola negra al lanzarlo desde el escritorio.
WIN32_EXECUTABLE TRUE hace que CMake pase -mwindows al linker
(SUBSYSTEM:WINDOWS), dejando solo la ventana ImGui.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
cpp-httplib requiere std::mutex que no compila con MinGW win32
thread model. Se reemplaza por http_client.cpp: sockets crudos,
sin threading, sin SSL, funciona en ambos thread models.
Elimina vendor/httplib.h (10K lineas). nlohmann/json se mantiene.
main.cpp: doble clic sin argumentos intenta la API en localhost:8484
automaticamente. Si falla muestra pantalla de error con boton Retry.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Nuevo data_http.cpp que obtiene todos los datos del registry via HTTP
POST a sqlite_api (/api/databases/registry/query). Mismas queries SQL
que el data layer SQLite pero ejecutadas remotamente. cpp-httplib como
cliente HTTP, nlohmann/json para parsear respuestas.
CMakeLists.txt actualizado: incluye data_http.cpp, vendor/ en includes,
linkea pthreads (Linux) y ws2_32 (Windows) para sockets.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>