Files
chart_demo/app.md
T
egutierrez 5f46b9b105 chore(auto): construir iter 1 — añadir e2e_checks a chart_demo app.md
Adds e2e_checks block with 2 checks:
- build: cmake --build cpp/build/windows --target chart_demo -j (timeout 300s)
- binary_exists: test -f cpp/build/windows/apps/chart_demo/chart_demo.exe (timeout 5s)

Part of autonomous task_run task_b3069559f34415c3 for issue 0120.

Co-Authored-By: fn-orquestador <noreply@anthropic.com>
2026-05-18 22:01:56 +02:00

2.6 KiB

name, lang, domain, version, description, tags, uses_functions, uses_types, framework, entry_point, dir_path, repo_url, icon, e2e_checks
name lang domain version description tags uses_functions uses_types framework entry_point dir_path repo_url icon e2e_checks
chart_demo cpp viz 0.1.0 Demo ImGui de primitivos viz del registry: line_plot, scatter_plot, bar_chart, heatmap. Cada chart en su propia tab del TabBar. Usado como showcase y como build gate de las funciones viz/.
imgui
demo
charts
viz
showcase
line_plot_cpp_viz
scatter_plot_cpp_viz
bar_chart_cpp_viz
heatmap_cpp_viz
imgui main.cpp apps/chart_demo
phosphor accent
chart-bar #0ea5e9
id cmd timeout_s
build cmake --build cpp/build/windows --target chart_demo -j 300
id cmd timeout_s
binary_exists test -f cpp/build/windows/apps/chart_demo/chart_demo.exe 5

Que hace

App de una sola ventana con cuatro tabs (Line / Scatter / Bar / Heatmap) que renderiza datos sinteticos para mostrar el aspecto y la API de los primitivos viz del registry. Sirve como:

  • Showcase visual de las funciones viz existentes — al añadir una nueva primitiva, anadir su tab aqui es la forma natural de probar el binding.
  • Build gate: si una de las funciones rompe API, esta app deja de compilar y lo cazamos sin tener que tocar registry_dashboard o graph_explorer.

Estructura

main.cpp (~93 lineas):

  • init_data() — genera arrays sinteticos una vez (estado modulo).
  • render() — DockSpaceOverViewport + TabBar con 4 tabs, cada una invoca un primitivo del registry.
  • main()fn::run_app(...) con AppConfig estandar (titulo, tamaño, about, log).

Build

# Linux
cd cpp && cmake -B build/linux -S . && cmake --build build/linux --target chart_demo

# Windows (cross-compile)
cd cpp && cmake -B build/windows -S . -DCMAKE_TOOLCHAIN_FILE=toolchains/mingw-w64.cmake \
  && cmake --build build/windows --target chart_demo

Decisiones

  • viewports = true (default de fn::run_app): las ventanas se pueden arrastrar fuera del main window.
  • init_gl_loader = false: solo usa ImGui/ImPlot, sin gl* directo.
  • Sin persistencia propia (no abre BD).
  • log: file_path = "chart_demo.log" con nivel Debug — el init_data emite info+debug para verificar que el logger funciona.

Capability growth log

Una linea por bump SemVer. Bump-type segun .claude/commands/version.md:

  • major: breaking observable (CLI args, schema BBDD propia, formato wire).

  • minor: feature aditiva (nuevo panel, endpoint, opcion).

  • patch: bugfix sin cambio observable.

  • v0.1.0 (2026-05-18) — baseline.