Smart Workload vs. Personal Time Balance Checker

Smart Workload vs. Personal Time Balance Checker

Log your daily activities to analyze and improve your work-life balance.

Your balance summary will appear here. Go to 'Activity Configuration' to log your time.

Log Your Activities

${workHours.toFixed(1)}

Total Personal Hours

${personalHours.toFixed(1)}

Your Balance: ${workPercentage.toFixed(0)}% Work / ${personalPercentage.toFixed(0)}% Personal

Activity Log

`; data.forEach(item => { dashboardHTML += ` `; }); dashboardHTML += `
Activity Category Hours
${item.description} ${item.category} ${item.hours.toFixed(1)}
`; dashboardOutput.innerHTML = dashboardHTML; } function downloadPDF() { const data = getActivityData(); if (data.length === 0) { console.warn("No data to export."); return; } const { jsPDF } = window.jspdf; const doc = new jsPDF(); const tableData = data.map(item => [item.description, item.category, item.hours.toFixed(1)]); const workHours = data.filter(d => d.category === 'Work').reduce((sum, d) => sum + d.hours, 0); const personalHours = data.filter(d => d.category === 'Personal').reduce((sum, d) => sum + d.hours, 0); doc.setFontSize(18); doc.text('Work-Life Balance Report', 14, 22); doc.setFontSize(11); doc.setTextColor(100); doc.text(`Report as of: ${new Date().toLocaleDateString()}`, 14, 30); doc.text(`Total Work Hours: ${workHours.toFixed(1)}`, 14, 36); doc.text(`Total Personal Hours: ${personalHours.toFixed(1)}`, 14, 42); doc.autoTable({ head: [['Activity', 'Category', 'Hours']], body: tableData, startY: 50, theme: 'grid', headStyles: { fillColor: [79, 70, 229] }, // Indigo-600 }); doc.save('Work-Life-Balance-Report.pdf'); } // --- Event Listeners --- addActivityBtn.addEventListener('click', addActivityForm); downloadPdfBtn.addEventListener('click', downloadPDF); // --- Initial Setup --- updateNavButtons(); generateDashboard(); });
Scroll to Top