CV Matching Tool
Define your requirements, upload or paste CVs, and get an AI-ranked shortlist instantly.
📋 Job Requirements
Must-Haves
📎
Click to upload JD (PDF, DOCX, TXT)
📄 Candidate CVs
📂
Click to upload or drag & drop
PDF, DOCX, TXT — max 10 CVs
Analysing CVs...
'; var blob = new Blob([html], { type: 'text/html' }); var a = document.createElement('a'); a.href = URL.createObjectURL(blob); a.download = 'CV-Match-' + role.replace(/[^a-z0-9]/gi, '_') + '-' + date.replace(/ /g, '-') + '.html'; a.click(); } // ── Reset ───────────────────────────────────────────────── function newCVSet() { uploadedFiles = []; renderBadges(); document.getElementById('cv-input').value = ''; document.getElementById('paste-list').innerHTML = '
'; document.getElementById('results-section').style.display = 'none'; lastResults = []; window.scrollTo({ top: 0, behavior: 'smooth' }); } function newJD() { document.getElementById('role-title').value = ''; document.getElementById('must-education').value = ''; document.getElementById('must-experience').value = ''; document.getElementById('must-keywords').value = ''; document.getElementById('must-location').value = ''; document.getElementById('must-other').value = ''; document.getElementById('jd-text').value = ''; removeJdFile(); newCVSet(); } // ── Loading ─────────────────────────────────────────────── function showLoading(msg) { document.getElementById('loading-text').textContent = msg || 'Analysing...'; document.getElementById('loading-overlay').classList.add('show'); document.getElementById('btn-analyse').disabled = true; } function hideLoading() { document.getElementById('loading-overlay').classList.remove('show'); document.getElementById('btn-analyse').disabled = false; }