{% extends "base_miner.html" %} {% block title %}Dashboard — {{ coin.display_name }} Pool{% endblock %} {% set page = 'dashboard' %} {# Auto-refresh ~20s — a plain polled meta refresh, no SPA #} {% block head_extra %}{% endblock %} {% block content %}

Your mining

{{ current_user.mining_name }}{% if current_user.payout_address %} · {{ current_user.payout_address | truncate_mid }}{% else %} · no payout address set{% endif %}
Live · refreshes 20s
{# ── Empty: no payout address ── #} {% if not current_user.payout_address %}
Set a payout address to receive {% if POOL_MODE == 'demo' %}test {% endif %}rewards
We're recording your shares already — but we can't send {% if POOL_MODE == 'demo' %}test {% endif %}rewards until you add a wallet address.
Add address →
{% endif %} {# ── Balance trio ── #}
{% if POOL_MODE == 'demo' %}Confirmed · payable{% else %}Available{% endif %}
{{ balance.confirmed | coin_amount }} {{ coin.ticker }}
Next payout when ≥ {{ current_user.payout_threshold | coin_amount }} {{ coin.ticker }} threshold
Maturing
{{ balance.pending | coin_amount }} {{ coin.ticker }}
From immature blocks · maturing
{# ── Live mining strip ── #}
Your hashrate
{{ stats.hashrate | hashrate }}
estimated · 10-min share weight
Active workers
{{ stats.active_workers }}
of {{ stats.total_workers }} configured
Valid shares · 1h
{{ stats.shares_1h }}
{{ stats.rejected_1h }} rejected
Last share
{% if stats.last_share %}{{ stats.last_share | ago }}{% else %}—{% endif %}
{{ stats.last_worker | default('—') }}
{# ── No shares yet ── #} {% if stats.shares_1h == 0 and stats.last_share is none %}
Waiting for your first share…
Your account is ready. Point a miner at the pool and shares will appear here within a few seconds.
minerd -o {{ coin.stratum_url }}:{{ coin.stratum_port }} -u {{ current_user.mining_name }}.rig-01 -p x
Copy
Full mining guide →
{% else %} {# ── Workers + payments ── #}
{% for w in workers[:4] %} {% endfor %}
WorkerHashrateLast shareStatus
{{ w.worker_name }} {{ w.hashrate | hashrate }} {{ w.last_share | ago }} {% if w.is_active %}active{% else %}stale{% endif %}
Recent payments
All payments →
{% for p in payments[:3] %} {% else %} {% endfor %}
DateAmountTxidStatus
{{ p.time | date_short }} {{ p.amount | coin_amount }} {{ coin.ticker }} {{ p.txid | truncate_mid }} ↗ {% if p.status == 'confirmed' %}confirmed{% elif p.status == 'sent' %}sent{% else %}failed{% endif %}
No payments yet
{% endif %}
{% endblock %} {% block scripts %} {% endblock %}