Online Mindfulness & Stress Management for Students

Mindfulness & Stress Management for Students

Find your calm and focus.

Guided Box Breathing

Ready?

Exercise Complete. You are present.

`; startGroundingBtn.textContent = 'Start Again'; groundingStep = -1; } }; startGroundingBtn.addEventListener('click', advanceGrounding); // --- Journal Logic --- const loadJournal = () => { const saved = localStorage.getItem('mindfulnessJournal'); journalEntries = saved ? JSON.parse(saved) : []; renderJournal(); }; const saveJournal = () => { localStorage.setItem('mindfulnessJournal', JSON.stringify(journalEntries)); }; const renderJournal = () => { journalEntriesContainer.innerHTML = ''; if (journalEntries.length === 0) { journalEntriesContainer.innerHTML = '

Your saved entries will appear here.

'; return; } journalEntries.slice().reverse().forEach(entry => { const entryEl = document.createElement('div'); entryEl.className = 'p-3 border-l-4 border-indigo-200 bg-gray-50 rounded'; entryEl.innerHTML = `

${new Date(entry.date).toLocaleString()}

${entry.text}

`; journalEntriesContainer.appendChild(entryEl); }); }; saveEntryBtn.addEventListener('click', () => { const text = journalInput.value.trim(); if (!text) { showMessage('Please write something in your journal entry.', 'error'); return; } journalEntries.push({ text: text, date: new Date().toISOString() }); journalInput.value = ''; saveJournal(); renderJournal(); showMessage('Journal entry saved!', 'success'); }); // --- PDF Export --- pdfBtn.addEventListener('click', () => { if (journalEntries.length === 0) { showMessage('No journal entries to download.', 'error'); return; } const { jsPDF } = window.jspdf; const doc = new jsPDF(); doc.setFontSize(18); doc.text('My Mindfulness Journal', 105, 20, { align: 'center' }); const tableData = journalEntries.map(entry => [ new Date(entry.date).toLocaleDateString(), entry.text ]); doc.autoTable({ startY: 30, head: [['Date', 'Entry']], body: tableData, headStyles: { fillColor: [79, 70, 229] }, columnStyles: { 1: { cellWidth: 'auto' } } }); doc.save('mindfulness-journal.pdf'); }); // --- Utility --- const showMessage = (message, type = 'success') => { messageBox.textContent = message; messageBox.className = `message-box ${type} show`; setTimeout(() => { messageBox.classList.remove('show'); }, 3000); }; // Initial Load loadJournal(); });
Scroll to Top