Skip to content
Home » AI Resume Builder

AI Resume Builder

✨ AI is improving your text…

AI Resume Builder

Craft your professional resume with a little help from AI.

Personal Details

Online Presence

Work Experience

Education

Skills

Your Name

your.email@example.com (123) 456-7890 Your City, State

Work Experience

Education

Skills

'); printWindow.document.close(); printWindow.focus(); setTimeout(() => { printWindow.print(); printWindow.close(); }, 500); } else { console.error("Popup window blocked. Please disable your browser's pop-up blocker to print the resume."); } } // --- Gemini API Integration --- const loader = document.getElementById('loader-overlay');const PROXY_URL = 'https://blogofanup.com/gemini-proxy%20api/gemini-proxy.php';function retryWithExponentialBackoff(fn, retries = 3, delay = 1000) { return new Promise((resolve, reject) => { const attempt = (attemptCount) => { fn() .then(resolve) .catch(error => { if (attemptCount <= retries) { setTimeout(() => attempt(attemptCount + 1), delay); delay *= 2; } else { reject(error); } }); }; attempt(1); }); } async function improveWithAI(button, textareaId) { const textarea = document.getElementById(textareaId); const originalText = textarea.value; if (!originalText.trim()) { return; } loader.style.display = 'flex'; button.disabled = true; button.innerText = 'Improving...'; const prompt = `Rewrite the following resume points to be more professional and impactful. Keep the original meaning and use a bullet point or line-separated format if present:\n\n${originalText}`; const payload = { prompt: prompt }; try { const fetchPromise = () => fetch(PROXY_URL, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(payload) }); const response = await retryWithExponentialBackoff(fetchPromise); if (!response.ok) { throw new Error(`API error: ${response.statusText}`); } const result = await response.json(); const improvedText = result?.response; if (improvedText) { textarea.value = improvedText.trim(); updatePreview(); } else { console.error('No improved text found in API response:', result); } } catch (error) { console.error('Failed to fetch from proxy:', error); } finally { loader.style.display = 'none'; button.disabled = false; button.innerText = '✨ Improve with AI'; } }// Initial setup document.addEventListener('DOMContentLoaded', () => { addExperience(); addEducation(); updatePreview(); });