Meeting Information

🏘️
HOA
Chapter 720
🏢
Condo
Chapter 718
Board Members / Attendance
Quorum & Prior Minutes
Discussion Items
Motions & Votes
Motion 1
Individual Director Votes §720.303/718.112
Add board members above, then click "Sync from Attendance"
Action Items
Closing
⚠️ Quorum counts not entered. PDF will include a quorum warning. Add Directors Present and Total Board Size to confirm quorum.
📝

Your minutes will appear here

Fill in the meeting details, attendance, and motions. MinuteMate formats everything into state-compliant minutes with a compliance checklist.

Formatted Minutes

Meeting Minutes

Minutes Compliance Checklist

// ── Lead Capture + PDF Gate ────────────────────── const PDF_LEAD_KEY = 'mm_lead_email'; function downloadPDF() { if (!lastResult) return; const saved = localStorage.getItem(PDF_LEAD_KEY); if (saved) { _doPDF(); } else { document.getElementById('leadOverlay').classList.add('open'); setTimeout(() => document.getElementById('leadEmail').focus(), 100); } } function handleOverlayClick(e) { if (e.target === document.getElementById('leadOverlay')) closePDFModal(false); } function closePDFModal(andPrint) { document.getElementById('leadOverlay').classList.remove('open'); document.getElementById('leadError').style.display = 'none'; document.getElementById('leadEmail').value = ''; if (andPrint) _doPDF(); } async function submitLeadAndPDF() { const emailInput = document.getElementById('leadEmail'); const errorEl = document.getElementById('leadError'); const btn = document.getElementById('leadSubmitBtn'); const email = emailInput.value.trim(); const emailRe = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; if (!emailRe.test(email)) { errorEl.textContent = 'Please enter a valid email address.'; errorEl.style.display = 'block'; return; } btn.disabled = true; btn.textContent = 'Saving…'; errorEl.style.display = 'none'; try { await fetch('/api/capture-lead', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ email, source: 'minutes_formatter' }) }); localStorage.setItem(PDF_LEAD_KEY, email); if (typeof plausible !== 'undefined') plausible('email_captured', { props: { source: 'minutes_formatter' } }); } catch (e) { /* silently pass */ } btn.disabled = false; btn.textContent = 'Get my PDF'; closePDFModal(true); } document.addEventListener('keydown', (e) => { if (e.key === 'Escape') closePDFModal(false); }); // ── Compliance Tips Strip ──────────────────────── function injectTipsStrip() { if (document.getElementById('tipsStrip')) return; // already injected const resultSection = document.getElementById('resultSection'); if (!resultSection) return; const savedEmail = localStorage.getItem(PDF_LEAD_KEY) || ''; const strip = document.createElement('div'); strip.id = 'tipsStrip'; strip.className = 'tips-strip'; strip.innerHTML = `
✉️ Get Florida compliance tips Monthly digest — HOA & condo board best practices, statute updates.
✓ You\'re subscribed!
`; resultSection.appendChild(strip); } async function submitTipsLead() { const emailInput = document.getElementById('tipsEmail'); const email = emailInput ? emailInput.value.trim() : ''; if (!email || !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)) return; try { await fetch('/api/capture-lead', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ email, source: 'compliance_tips' }) }); localStorage.setItem(PDF_LEAD_KEY, email); if (typeof plausible !== 'undefined') plausible('email_captured', { props: { source: 'compliance_tips' } }); } catch(e) {} const form = document.getElementById('tipsForm'); const success = document.getElementById('tipsSuccess'); if (form) form.style.display = 'none'; if (success) success.style.display = 'block'; } // ── End Lead Capture ─────────────────────────────
📄

Get your PDF

Enter your email and we'll generate your minutes as a PDF — no account needed.