SoloFury update — the miner page, rebuilt around you and your hardwareOver the last week we rebuilt the entire miner page on SoloFury. Not a restyle: every section was redone with one idea in mind — a solo miner should be able to open one page, for one address, and know within seconds whether their setup is doing what it should. No account, no signup, nothing to configure. Paste an address, everything below is yours.
Here is what changed, section by section, with the technical details for those who want them.
Real screenshot from today. Only the address was replaced.1. Worker table: grouping, tiles, outlier detectionAnyone running more than a handful of devices knows the problem: twenty rows that all look alike. The table now has three grouping modes:
- Family — automatic. The table strips the trailing number from each worker name (S21Plus01, S21Plus02 → group "S21Plus"), or uses an explicit prefix if you name your workers rack1_s19-01. Nothing to configure, and because the grouping lives in the name, it follows you on every device.
- Region — by the stratum region each worker connects through.
- Custom — drag one worker onto another, name the group. Multi-select with checkboxes on mobile. Saved per wallet address and coin in your browser.
Each group header shows summed hashrate, online count, best difficulty and most recent share, and collapses with a click. On top of that:
- Outlier detection — inside a homogeneous family, any worker below 72% of the family median gets an orange "attention" tag with the percentage gap. That is how you spot the one S21 that is quietly running at 70% before it shows up in your daily totals.
- Tiles view — a heatmap: one tile per worker, coloured against its family median (green above, orange below, red offline). For 20+ devices you see the state of the whole fleet in one look. Click a tile → the table opens on that worker.
- Filters — All / Online / Attention / Offline with counts, and a search box that accepts regex.
The worker detail panel (the + button) is untouched — every patch was verified byte-for-byte against it.
Naming guide, in 10 languages:
How to name mining workers2. The chart
Still Chart.js — we benchmarked the alternatives and at our data volume (288 points per 24h) there is no reason to change engine; the difference is in what sits on top of it:
- Stats strip — now, average, peak, low, % vs your average, and minutes spent under −15% of it, for the selected range.
- Attention bands — every window where you dropped below −15% of your own average is shaded. Against yourself, not against the network.
- Previous period — yesterday overlaid on today as a grey dashed line (up to 7d ranges).
- Rich tooltip — time, hashrate with delta vs average, accepted shares, difficulty in one hover. Zoom with the wheel, pan by dragging, double-click to reset. LTTB downsampling keeps 90-day ranges smooth.
- Rejected shares — the toggle appears only if your address actually has rejected/stale/invalid shares in the range. If you mine clean, it stays out of your way.
- Share PNG — one click exports the chart with your stats, coin, period and address as a branded image.
Range and toggles are remembered per address. The pool page chart got all of the same, with pool data.
3. Cards that are entry points, not just numbersThe top cards now use the same colours and thresholds as the table and the chart, and each one takes you somewhere:
- YOUR HASHRATE shows the 24h stats strip in miniature, attention bands and your block pins on the sparkline. Click → the chart with the average line drawn.
- ASIC ONLINE — online / attention / offline with a tri-colour bar and chips for your three largest hardware families. Click the card → the table filtered on attention. Click a chip → only that family open.
- BEST SHARE — the all-time record plus the 24h best with the worker that found it. Click → table sorted by best difficulty, worker highlighted.
- BLOCK IN PROGRESS — with your current round effort. Click → the luck section.
The threshold for "online" was also aligned between cards and table (10 minutes), so the two never disagree.
4. Luck, calculated properlyThis is the part we spent the most care on, because it is the number solo miners look at every day.
Round effort = work done ÷ work expected. Work done is the sum of the difficulty of your accepted shares since your last block, aggregated across all our regions; work expected is the current network difficulty. This is the definition 2Miners, Kryptex and Miningcore use. It rises until you find a block, then resets to zero. If difficulty changes mid-round, it moves with it.
Two things we added on the backend:
- Effort is recorded at every block. When your address finds a block, the final effort of that round is written to disk before the reset. From now on, every block on your page shows the luck of the round that produced it — real shares, not an estimate.
- Effort never resets without a block. The per-address baseline is persisted to disk, so an aggregator restart does not touch anyone's bar. And if a mining node restarts and its cumulative counter drops, the baseline is recalibrated to preserve the effort in progress. We tested this explicitly: restart the aggregator, same number before and after.
On the page: your current round on an honest 0→300% scale (the old bar was capped at 100%, so 137% looked exactly like 100%), the time since your last block against the expected time at your 24h hashrate, a probability curve with the 50/50 point and "you are here", and a histogram of your real rounds — median, best, worst, blocks found vs expected.
5. Blocks, fully explainedEvery block your address has found is now enriched from
our own nodes, not from a label:
- Block hash, confirmations, time, difficulty, transaction count, size.
- The coinbase, decoded: subsidy plus the transaction fees that block carried, then the two outputs — yours, and the 1% pool fee. This is the non-custodial model made visible: the same numbers a block explorer shows, because they come from the coinbase itself. Anyone can verify them.
- USD value on the day it was found (historical price, cached permanently) and USD today.
- Luck of that round, your hashrate at the time, best share of the round, time since the previous block vs expected.
- Status from the chain: maturing (with confirmations counting up and time to spendable), matured, or orphaned.
Layout: a lifetime strip (blocks, mined, value today vs when found, average luck, days since last vs expected), months with only the current one open, a two-line row per block, and a four-column panel on click: Block · Reward · Round · Verification. Search by height, deep link to any block, CSV/JSON export for your records, a share card for the day you hit.
On the pool page the same data is a
calendar: days with blocks light up, brighter with more; click a day to see who found what, from which region; a year heatmap shows the pool's rhythm at a glance. Since April: 97 blocks, $71,000+ paid directly to miners' addresses — none of it ever passed through us.
Under the hood, brieflyAstro static frontend, 10 languages, ~1,000 pages. Block enrichment runs as a cron on our aggregator: it queries the local node of each coin (getblock, coinbase outputs), CoinGecko for historical prices, and our own hashrate history for round statistics, and writes static JSON served by nginx — no new API surface, nothing dynamic to break. Everything mentioned above is live on all five SHA-256 coins (BTC, BCH, XEC, BC2, BCH2) across nine regions on five continents.
What's next- Public pages for every block found (/block/coin/height) — a verifiable, shareable proof page.
- The stratum region that delivered each block, shown on the block.
- Full translation of the new sections' labels (the section titles are already in 10 languages).
Try itsolofury.com/miner/ — pick a coin, paste your address. If you are not mining with us yet, the
Solo Start page generates the configuration for Bitaxe, NerdAxe, Antminer and Whatsminer in one step.
Feedback, bug reports and feature requests are welcome here in the thread. This whole update came out of one miner's frustration with twenty identical rows — the next one can come out of yours.
Non-custodial. No signup. 1% fee, paid as a second coinbase output.