Shareholder Voting Agreement Generator

Shareholder Voting Agreement Generator

Create a comprehensive voting agreement for your corporation.

Agreement Basics

Parties to the Agreement

Company Information

Shareholder Information

Voting Provisions

Specify how the shares subject to this agreement will be voted. You can define commitments for electing directors, approving major corporate actions, or other matters.

Agreement Term

Generated Voting Agreement

Review the generated agreement below. To make changes, please use the "Previous" button or click on the relevant tabs. When satisfied, download the document as a PDF.

Click "Generate/Update Agreement" to see your document.

3.2 Entire Agreement. This Agreement constitutes the entire agreement among the parties with respect to the subject matter hereof and supersedes all prior agreements, oral or written.

IN WITNESS WHEREOF, the parties have executed this Shareholder Voting Agreement as of the date first above written.

COMPANY:

${companyName}

SHAREHOLDERS:

${shareholders.map(s => `

Name: ${s.name}

`).join('')}
`; document.getElementById('agreement-preview').textContent = text; document.getElementById('pdf-output').innerHTML = pdfHtml; downloadPdfBtn.style.display = 'block'; } // --- PDF DOWNLOAD --- // downloadPdfBtn.addEventListener('click', async () => { const { jsPDF } = window.jspdf; const pdfContainer = document.getElementById('pdf-container'); pdfContainer.style.visibility = 'visible'; try { const canvas = await html2canvas(pdfContainer, { scale: 2 }); const imgData = canvas.toDataURL('image/png'); const pdf = new jsPDF({ orientation: 'portrait', unit: 'in', format: 'letter' }); const imgProps = pdf.getImageProperties(imgData); const pdfWidth = pdf.internal.pageSize.getWidth(); const pdfHeight = (imgProps.height * pdfWidth) / imgProps.width; pdf.addImage(imgData, 'PNG', 0, 0, pdfWidth, pdfHeight); pdf.save('Shareholder-Voting-Agreement.pdf'); } catch(err) { console.error("PDF generation failed: ", err); alert("Could not generate PDF. Please try again."); } finally { pdfContainer.style.visibility = 'hidden'; } }); // --- INITIALIZATION --- // function initialize() { effectiveDateInput.valueAsDate = new Date(); addShareholderRow(); addShareholderRow(); // Start with two rows showTab(1); } initialize(); });
Scroll to Top