Website Audit Report

18-point SEO, social sharing, and technical health check

", "HTTPS":"Redirect all HTTP to HTTPS. Free certs from Let\u0027s Encrypt.", "Viewport Meta":"", "HTML Lang":" — set the correct language code.", "Robots Meta":"Remove noindex to let search engines find this page.", "Internal Links":"Add internal links to important pages. Aim for 5+." }; var h = ""; items.forEach(function(c) { h += "
" + (c.pass?"\u2713":"\u2717") + "
" + c.label + ""; if (!c.pass && fixes[c.label]) { if (isUnlocked) { h += "
\u2705 " + fixes[c.label] + "
"; } else { h += "
\u2705 " + fixes[c.label] + "
"; } } h += "
" + c.detail + "
"; }); return h; } // Build results: first 2 checks visible, rest locked var html = ''; // SEO - only first 2 checks visible (title + description) html += catHeader('SEO', cats.seo); html += renderItems(cats.seo); // Security & broken link teasers from API var secMissing = a.secHeadersMissing || 0; var secTotal = a.secHeadersTotal || 7; var brokenFound = a.brokenLinks || 0; var linksChecked = a.checkedLinks || 0; var totalIssues = failed + secMissing + brokenFound; // Inline CTA - right after SEO, before locked sections // PDF report CTA if (totalIssues > 0 && !isUnlocked) { html += '
'; html += '

Your site has ' + totalIssues + ' issue' + (totalIssues > 1 ? 's' : '') + ' to fix

'; html += '

Get ' + failed + ' ready-to-paste HTML fixes. Just copy into your <head> tag.

'; html += '
Fix hints shown above. Want someone to implement them?
'; html += 'Get Issues Fixed — $25'; html += '
We implement all fixes for you. Done within 24 hours.
'; html += '
'; } if (isUnlocked) { html += '
'; html += '\u2705 Fix instructions unlocked — scroll through each failing check above.'; html += '
'; } html += catHeader('Social & Sharing', cats.social); html += renderItems(cats.social); html += catHeader('Technical', cats.technical); html += renderItems(cats.technical); // Bottom summary + second CTA html += '
'; html += '' + passed + '/' + all.length + ' checks passed'; if (failed > 0) { html += '
Get All Issues Fixed — $25
'; } html += '
'; html += ''; html += ''; html += 'Share on X'; html += '
'; html += '
'; // Weekly monitoring signup html += '
'; html += '
Track your score over time
'; html += '
Get a free weekly email when your SEO score changes. No spam, unsubscribe anytime.
'; html += '
'; html += ''; html += '
'; // Support section html += "
"; html += "
Free & open. API access available for developers.
"; html += "
"; html += ''; document.getElementById('checks').innerHTML = html; preview.classList.remove('hidden'); } catch (e) { alert('Error: ' + e.message); } finally { btn.disabled = false; loading.classList.add('hidden'); } } async function directCheckout() { var url = scannedUrl || document.getElementById("url").value.trim(); if (!url) { alert("Please run an audit first."); return; } try { var res = await fetch("/api/audit/checkout", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ url: url, email: "collect@checkout.com" }) }); var json = await res.json(); if (!res.ok) throw new Error(json.error); window.location.href = json.checkout_url; } catch (e) { alert("Error: " + e.message); } } async function quickUnlock() { var url = scannedUrl || document.getElementById("url").value.trim(); if (!url) { alert("Please run an audit first."); return; } try { var res = await fetch("/api/audit/quick-unlock", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ url: url }) }); var json = await res.json(); if (!res.ok) throw new Error(json.error); window.location.href = json.checkout_url; } catch (e) { alert("Error: " + e.message); } } async function lightningPay() { var url = scannedUrl || document.getElementById("url").value.trim(); if (!url) { alert("Please run an audit first."); return; } try { var res = await fetch("/api/audit/lightning", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ url: url }) }); var json = await res.json(); if (!res.ok) throw new Error(json.error); var invoice = json.invoice; var modal = document.createElement("div"); modal.style.cssText = "position:fixed;inset:0;background:rgba(0,0,0,.8);z-index:999;display:flex;align-items:center;justify-content:center"; modal.innerHTML = '
' + '

⚡ Pay with Lightning

' + '

~' + json.amount_sats + ' sats (~$3)

' + '
' + 'QR' + '
' + '' + '

Click invoice to copy. Scan QR with any Lightning wallet.

' + '' + '
'; document.body.appendChild(modal); modal.addEventListener("click", function(e) { if (e.target === modal) modal.remove(); }); } catch (e) { alert("Error: " + e.message); } } function scrollToUnlock() { var el = document.getElementById('unlock-cta'); if (el) el.scrollIntoView({behavior:'smooth',block:'center'}); else quickUnlock(); } document.getElementById('url').addEventListener('keydown', function(e) { if (e.key === 'Enter') runAudit(); });