🏗️ Development Build Dev
Best for: Development, debugging, customization
<script src="webminer.js"
data-pool="wss://pool.example.com"
data-wallet="YOUR_ADDRESS"
data-throttle="0.25">
</script>
console.log(PerformanceMonitor.getPerformanceReport());
console.log(MobileOptimizer.getOptimizationStatus());
Click buttons above to test development build...
⚡ Production Build Prod
Best for: Live websites, CDN deployment, performance
<script src="webminer.min.js"
data-pool="wss://pool.example.com"
data-wallet="YOUR_ADDRESS"
data-throttle="0.25">
</script>
WebMiner.start().then(success => {
console.log('Mining:', success);
});
Click buttons above to test production build...
🎯 Simple Integration Pattern
<script src="webminer.min.js"
data-pool="wss://your-pool.com"
data-wallet="YOUR_MONERO_ADDRESS"
data-throttle="0.15"
data-auto-start="false"></script>
🔧 Programmatic Control Pattern
<script src="webminer.min.js"></script>
<script>
const miner = new WebMiner({
pool: 'wss://your-pool.com',
wallet: 'YOUR_MONERO_ADDRESS',
throttle: 0.20,
enablePerformanceMonitoring: true,
enableMobileOptimizations: true,
autoStart: false
});
document.getElementById('start-mining').onclick = async () => {
const started = await miner.start();
if (started) {
console.log('Mining started with consent');
updateMiningIndicator(true);
}
};
setInterval(() => {
if (miner.isMining()) {
const stats = miner.getStats();
updateDashboard(stats);
}
}, 5000);
</script>
📱 Mobile-Optimized Pattern
<script src="webminer.min.js"></script>
<script>
const isMobile = /Mobi|Android|iPhone/i.test(navigator.userAgent);
const miner = new WebMiner({
pool: 'wss://your-pool.com',
wallet: 'YOUR_MONERO_ADDRESS',
throttle: isMobile ? 0.10 : 0.25,
enableMobileOptimizations: true,
autoStart: false
});
if (isMobile) {
MiningConsent.state.showMobileWarning = true;
MiningConsent.state.pauseWhenHidden = true;
}
</script>
🛡️ Content Security Policy Pattern
Content-Security-Policy:
script-src 'self' 'unsafe-inline';
connect-src 'self' wss://your-pool.com;
worker-src 'self' blob:;
<script src="webminer.min.js" nonce="random123"></script>
<script nonce="random123">
WebMiner.init({
pool: 'wss://your-pool.com',
wallet: 'YOUR_ADDRESS'
});
</script>
🚀 Performance Test Suite
Compare the performance characteristics of both builds:
Click buttons above to run performance tests...