Files
peya-nodejs-pool/website_example/pages/getting_started.html
Codex Bot b8851f18fc
Some checks failed
CodeQL / Analyze (javascript) (push) Failing after 28s
Fix pool difficulty locking wording
2026-03-24 14:54:51 +01:00

332 lines
14 KiB
HTML

<section class="page-hero page-hero-compact">
<div class="page-hero-copy">
<span class="eyebrow">Miner onboarding</span>
<h3><span data-tkey="gettingStarted">Getting Started</span></h3>
<p class="hero-copy-text">
Pool connection details, mining ports, and configuration snippets in the same bounded layout as the main dashboard.
</p>
</div>
<div class="page-hero-panel">
<div class="hero-kpi">
<span>Setup</span>
<strong>Parent Wallet</strong>
</div>
<div class="hero-kpi">
<span>Output</span>
<strong>Ready Config</strong>
</div>
</div>
</section>
<section class="section-block">
<div class="section-head">
<div>
<span class="eyebrow">Connection setup</span>
<h4>Details and mining ports</h4>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<h3><span data-tkey="connectionDetails">Connection Details</span></h3>
<div class="card padding-l-10 padding-r-10">
<div class="stats">
<div><i class="fa fa-cloud"></i> <span data-tkey="miningPoolHost">Mining Pool Address</span>: <span id="miningPoolHost"></span></div>
<div><i class="fa fa-cubes"></i> <span data-tkey="cnAlgorithm">Algorithm</span>: <span id="cnAlgorithm"></span></div>
</div>
</div>
<h4 class="push-up-15"><span data-tkey="username">Username<span></h4>
<div class="card padding-l-10 padding-r-10">
<div class="stats">
<div><i class="fa fa-key"></i> <span data-tkey="usernameDesc">This is your wallet address</span></div>
<div id="fixedDiff"><i class="fa fa-wrench"></i> <span data-tkey="fixedDiff">Difficulty locking</span>: <span><u>wallet address</u><span id="fixedDiffSeparator">+</span><u data-tkey="addrDiff">diff</u></span></div>
</div>
</div>
<h4 class="push-up-15"><span data-tkey="password">Password</span></h4>
<div class="card padding-l-10 padding-r-10">
<div class="stats">
<div><i class="fa fa-key"></i> <span data-tkey="usernameDesc2">Use the password field only for optional worker naming or miner-specific settings if your miner supports them.</span></div>
<div><i class="fa fa-server"></i> <span data-tkey="fixedDiff2">Worker Name</span>: <span><u>workerName</u></span></div>
</div>
</div>
</div>
<div class="col-sm-6">
<h3><span data-tkey="miningPorts">Mining Ports</span></h3>
<div class="card">
<div id="miningPorts" class="table-responsive">
<table class="table table-hover table-striped">
<thead>
<tr>
<th class="col1"><span data-tkey="port">Port</span></th>
<th class="col2"><span data-tkey="portDiff">Starting Difficulty</span></th>
<th class="col3"><span data-tkey="description">Description</span></th>
</tr>
</thead>
<tbody id="miningPorts_rows">
<tr>
<td class="col1"><span class="miningPort"></span></td>
<td class="col2"><span class="miningPortDiff"></span></td>
<td class="col3"><span class="miningPortDesc"></span></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</section>
<section class="section-block">
<div class="section-head">
<div>
<span class="eyebrow">Config generator</span>
<h4>Generate miner configuration</h4>
</div>
</div>
<div class="card padding-15">
<p><span data-tkey="configGeneratorDesc">Generate your custom configuration to mine on our pool</span></p>
<div id="configGenerator" class="row">
<div class="col-sm-3 col-xs-8">
<div class="input-group push-down-5">
<span class="input-group-addon"><i class="fa fa-link"></i></span>
<select class="form-control" id="gMiningPort"></select>
</div>
</div>
<div class="col-sm-3 col-xs-4">
<div class="input-group push-down-5">
<span style="white-space: nowrap;">Solo Mining
<label><input type="checkbox" name="solo" id="gSolo" value="1" title="Check if want to mine both pools solo"></label>
</span>
</div>
</div>
<div class="col-sm-6 col-xs-12">
<div class="input-group push-down-5">
<span class="input-group-addon"><i class="fa fa-server"></i></span>
<input class="form-control" id="gWorkerName" data-tplaceholder="workerNameField" type="text" placeholder="Worker_Name" />
</div>
</div>
<div class="col-sm-6 col-xs-12">
<div class="input-group push-down-5">
<span class="input-group-addon"><i class="fa fa-key"></i></span>
<input class="form-control" id="gAddress" type="text" data-tplaceholder="addressField" placeholder="Wallet Address" required="required" />
</div>
</div>
<div class="col-sm-6 col-xs-12">
<div class="input-group push-down-5">
<span class="input-group-addon"><i class="fa fa-wrench"></i></span>
<input class="form-control" id="gDifficulty" type="text" data-tplaceholder="fixedDiffField" placeholder="Fixed difficulty (optional)" />
</div>
</div>
<div class="col-md-12 push-up-5">
<input id="generateConf" type="submit" tvalue="generateConfig" value="Generate configuration" class="btn btn-default" data-toggle="collapse" href="#xmrstak" />
</div>
</div>
</div>
</section>
<section class="section-block">
<div class="section-head">
<div>
<span class="eyebrow">Mining applications</span>
<h4><span data-tkey="miningApps">Mining Applications</span></h4>
</div>
</div>
<div class="card push-up-5">
<div id="miningApps" class="table-responsive">
<table class="table">
<thead>
<tr>
<th><i class="fa fa-book"></i> <span data-tkey="appName">App Name</span></th>
<th><i class="fa fa-car"></i> <span data-tkey="appArch">Architecture</span></th>
<th><i class="fa fa-star"></i> <span data-tkey="appDesc">Features</span></th>
<th><i class="fa fa-download"></i> <span data-tkey="download">Download</span></th>
<th><i class="fa fa-file-code-o"></i> <span data-tkey="configuration">Configuration</span></th>
</tr>
</thead>
<tbody id="miningApps_rows">
<!-- XMRig -->
<tr class="appInfo">
<td class="miningAppTitle">XMRig</td>
<td>CPU</td>
<td>Ligthweight but powerful CPU Mining App</td>
<td><a class="btn btn-success" target="_blank" href="https://github.com/xmrig/xmrig/releases/latest"><span data-tkey="download">Download</span></a></td>
<td><a class="btn btn-default" role="button" data-toggle="collapse" href="#xmrig" aria-expanded="true" aria-controls="collapseExample"><span data-tkey="showConfig">See more</span></a></td>
</tr>
<tr class="appConfig">
<td colspan="5">
<div class="collapse" id="xmrig">
<pre><code>"pools": [
{
"url": "<span class="exampleHost">POOL_HOST</span>:<span class="examplePort">PORT</span>",
"user": "<span class="exampleLogin">YOUR_WALLET_ADDRESS</span>",
"pass": "<span class="examplePassword">YOUR_WORKER_NAME</span>",
"keepalive": true,
"nicehash": false,
"variant": "!msr",
"algo": "<span id="xmrigAlgoCPU"></span>"
}
],</code></pre>
</div>
</td>
</tr>
<!-- SRBMiner -->
<tr class="appInfo">
<td class="miningAppTitle">SRBMiner Multi</td>
<td>CPU</td>
<td>Alternative RandomX CPU miner with direct command-line pool support</td>
<td><a class="btn btn-success" target="_blank" href="https://www.srbminer.com/download.html"><span data-tkey="download">Download</span></a></td>
<td><a class="btn btn-default" role="button" data-toggle="collapse" href="#srbminer" aria-expanded="true" aria-controls="collapseExample"><span data-tkey="showConfig">See more</span></a></td>
</tr>
<tr class="appConfig">
<td colspan="5">
<div class="collapse" id="srbminer">
<pre><code>./SRBMiner-MULTI \
--disable-gpu \
--algorithm randomx \
--pool <span class="exampleHost">POOL_HOST</span>:<span class="examplePort">PORT</span> \
--wallet <span class="exampleLogin">YOUR_WALLET_ADDRESS</span> \
--password <span class="examplePassword">YOUR_WORKER_NAME</span></code></pre>
</div>
</td>
</tr>
<!-- xmr-stak -->
<tr class="appInfo">
<td class="miningAppTitle">xmr-stak</td>
<td>CPU</td>
<td>Legacy RandomX-capable miner kept as a fallback option for older setups</td>
<td><a class="btn btn-success" target="_blank" href="https://github.com/fireice-uk/xmr-stak/releases/latest"><span data-tkey="download">Download</span></a></td>
<td><a class="btn btn-default" role="button" data-toggle="collapse" href="#xmr-stak" aria-expanded="true" aria-controls="collapseExample"><span data-tkey="showConfig">See more</span></a></td>
</tr>
<tr class="appConfig">
<td colspan="5">
<div class="collapse" id="xmr-stak">
<pre><code>"pool_address" : "<span class="exampleHost">POOL_HOST</span>:<span class="examplePort">PORT</span>",
"wallet_address" : "<span class="exampleLogin">YOUR_WALLET_ADDRESS</span>",
"pool_password" : "<span class="examplePassword">YOUR_WORKER_NAME</span>",
"use_nicehash" : false,
"currency" : "<span id="xmrstakCurrency">cryptonight_r</span>",</code></pre>
</div>
</td>
</tr>
<!-- XMRigCC -->
<tr class="appInfo">
<td class="miningAppTitle">XMRigCC</td>
<td>CPU</td>
<td>XMRIG Fork, optimized with remote control</td>
<td><a class="btn btn-success" target="_blank" href="https://github.com/Bendr0id/xmrigCC/releases/latest"><span data-tkey="download">Download</span></a></td>
<td><a class="btn btn-default" role="button" data-toggle="collapse" href="#xmrig-cc" aria-expanded="true" aria-controls="collapseExample"><span data-tkey="showConfig">See more</span></a></td>
</tr>
<tr class="appConfig">
<td colspan="5">
<div class="collapse" id="xmrig-cc">
<pre><code>"pools": [
{
"url": "<span class="exampleHost">POOL_HOST</span>:<span class="examplePort">PORT</span>",
"user": "<span class="exampleLogin">YOUR_WALLET_ADDRESS</span>",
"pass": "<span class="examplePassword">YOUR_WORKER_NAME</span>",
"keepalive": true,
"nicehash": false,
"algo": "<span id="xmrigAlgoCC"></span>",
"pow-variant": "!msr"
},
],</code></pre>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</section>
<!-- Javascript -->
<script>
// Cleanup mining ports
var lastPortsJson = '';
var $miningPorts = $('#miningPorts_rows');
var miningPortTemplate = $miningPorts.html();
$miningPorts.empty();
var $miningPortSelect = $('#gMiningPort');
$miningPortSelect.empty();
// Update current page
currentPage = {
destroy: function(){
},
update: function(updateKey){
var portsJson = JSON.stringify(lastStats.config.ports);
if (lastPortsJson !== portsJson) {
lastPortsJson = portsJson;
var $miningPortChildren = [];
var $miningPortOptions = [];
for (var i = 0; i < lastStats.config.ports.length; i++) {
var portData = lastStats.config.ports[i];
var $portChild = $(miningPortTemplate);
$portChild.find('.miningPort').text(portData.port);
$portChild.find('.miningPortDiff').text(formatDifficulty(portData.difficulty));
$portChild.find('.miningPortDesc').text(portData.desc);
$miningPortChildren.push($portChild);
$miningPortOptions.push('<option value="'+portData.port+'">'+portData.port+' &ndash; '+portData.desc+'</option>');
}
$miningPorts.empty().append($miningPortChildren);
$miningPortSelect.empty().append($miningPortOptions);
updateTextClasses('examplePort', lastStats.config.ports[0].port.toString());
}
updateText('miningPoolHost', getPoolHost());
updateTextClasses('exampleHost', getPoolHost());
updateText('fixedDiffSeparator', lastStats.config.fixedDiffSeparator);
if (!lastStats.config.fixedDiffEnabled) $('#fixedDiff').hide();
var algorithm = 'RandomX';
var xmrstakAlgo = '';
var xmrigAlgo = 'rx/0';
updateText('cnAlgorithm', algorithm);
updateText('xmrstakAlgo', xmrstakAlgo);
updateText('xmrstakCurrency', 'randomx');
updateText('xmrigAlgoCPU', xmrigAlgo);
updateText('xmrigAlgoCC', xmrigAlgo);
}
};
/**
* Configuration generator
**/
$('#generateConf').click(function() {
// Mining Port
var port = $('#gMiningPort').val();
updateTextClasses('examplePort', port);
// Username
var address = $('#gAddress').val().replace(/\s+/g, '').trim();
var solo = $('#gSolo').val();
var difficulty = parseInt($('#gDifficulty').val().replace(/\s+/g, '').trim());
var workerName = $('#gWorkerName').val().replace(/\s+/g, '').trim();
var login = address ? address : 'YOUR_WALLET_ADDRESS';
if (difficulty) login = login + lastStats.config.fixedDiffSeparator + difficulty;
if ($('input[name=solo]').is(':checked')) login = `solo:${login}`
updateTextClasses('exampleLogin', login);
// Password
updateTextClasses('examplePassword', workerName || 'YOUR_WORKER_NAME');
});
</script>