{% extends "base.html" %} {% block title %}DBSprout Dashboard — Progress{% endblock %} {% block content %}

Generation progress

{# ── overall summary ─────────────────────────────────────────────── #}

Overall

{{ snapshot.status }}
Completed: {{ snapshot.completed_tables }}/{{ snapshot.total_tables }} tables
Total rows: {{ "{:,}".format(snapshot.total_rows) }}
Current: {{ snapshot.current_table or "—" }}
Elapsed: {{ snapshot.elapsed_ms }} ms
{# ── empty / idle state ──────────────────────────────────────────── #}
No generation in progress. Run dbsprout generate to see live progress here.
{# ── per-table progress ──────────────────────────────────────────── #}
{% for t in snapshot.tables %} {% endfor %}
Table Rows Rows/sec Elapsed (ms) Status
{{ t.table_name }} {{ "{:,}".format(t.row_count) }} {{ "{:,.0f}".format(t.rows_per_sec) }} {{ t.generation_ms }} {{ t.status }}
{# ────────────────────────────────────────────────────────────────── SSE client (vanilla JS, no build step). Subscribes to the BOUNDED /progress/stream; the server emits a terminal `complete` event and closes, so we also close the EventSource then to avoid auto-reconnect. ────────────────────────────────────────────────────────────────── #} {% endblock %}