Online Small Claims Court Guide

Online Small Claims Court Guide

A step-by-step guide to navigating the small claims process in the USA.

Eligibility & Claim Limits

$

Case & Party Details

Action Items & Evidence

Your Personalized Guide

Disclaimer: This tool provides general information and a checklist for informational purposes only. It is not legal advice. Court rules and procedures vary by jurisdiction and are subject to change. Consult a qualified attorney for advice on your specific situation.

This claim appears to be eligible.

The small claims limit in ${state} is $${limit.toLocaleString()}. Your claim of $${amount.toLocaleString()} is within this limit.

`; eligibilityResult.classList.remove('border-red-500', 'bg-red-50'); eligibilityResult.classList.add('border-green-500', 'bg-green-50'); } else { eligibilityResult.innerHTML = `

This claim may NOT be eligible.

The small claims limit in ${state} is $${limit.toLocaleString()}. Your claim of $${amount.toLocaleString()} exceeds this. You may need to file in a higher court or reduce your claim amount to proceed in small claims.

`; eligibilityResult.classList.remove('border-green-500', 'bg-green-50'); eligibilityResult.classList.add('border-red-500', 'bg-red-50'); } } stateSelect.addEventListener('change', checkEligibility); claimAmountInput.addEventListener('input', checkEligibility); // --- Tab Navigation --- const tabButtons = document.querySelectorAll('.tab-button'); const tabContents = document.querySelectorAll('.tab-content'); const nextBtn = document.getElementById('next-btn'); const prevBtn = document.getElementById('prev-btn'); let currentTab = 1; const totalTabs = 4; function updateDisplay() { tabButtons.forEach(button => button.classList.toggle('active', parseInt(button.dataset.tab) === currentTab)); tabContents.forEach(content => content.classList.toggle('active', parseInt(content.id.split('-')[1]) === currentTab)); prevBtn.style.display = currentTab > 1 ? 'inline-block' : 'none'; nextBtn.style.display = currentTab < totalTabs ? 'inline-block' : 'none'; if (currentTab === totalTabs) generateSummary(); } tabButtons.forEach(button => { button.addEventListener('click', () => { currentTab = parseInt(button.dataset.tab); updateDisplay(); }); }); nextBtn.addEventListener('click', () => { if (currentTab < totalTabs) { currentTab++; updateDisplay(); } }); prevBtn.addEventListener('click', () => { if (currentTab > 1) { currentTab--; updateDisplay(); } }); // --- Summary & Checklist Generation --- function generateSummary() { const getVal = (id) => document.getElementById(id).value.trim(); const state = getVal('claim-state'); const amount = getVal('claim-amount'); const plaintiff = getVal('plaintiff-name') || '[Plaintiff Name]'; const defendant = getVal('defendant-name') || '[Defendant Name]'; const summary = getVal('case-summary').replace(/\n/g, '
') || 'Not provided.'; const rawEvidence = getVal('evidence-list'); const evidenceItems = rawEvidence ? rawEvidence.split(',').map(item => `
  • ${item.trim()}
  • `).join('') : '
  • No evidence listed.
  • '; const rawDeadline = getVal('filing-deadline'); const deadline = rawDeadline ? new Date(rawDeadline + 'T00:00:00').toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' }) : 'Not specified.'; const summaryHTML = `

    Case Overview

    Plaintiff: ${plaintiff}

    Defendant: ${defendant}

    Jurisdiction: ${state}

    Claim Amount: $${parseFloat(amount || 0).toLocaleString()}

    Case Summary:
    ${summary}

    Pre-Trial Checklist

    Evidence & Deadlines

    Filing Deadline/Statute of Limitations: ${deadline}

    Evidence to Organize:

      ${evidenceItems}
    `; document.getElementById('summary-output').innerHTML = summaryHTML; document.getElementById('pdf-preview').innerHTML = `

    Small Claims Court Case Summary

    ` + summaryHTML; } // --- PDF Download --- const downloadPdfBtn = document.getElementById('download-pdf-btn'); async function downloadPDF() { const { jsPDF } = window.jspdf; const content = document.getElementById('pdf-preview'); const container = document.getElementById('pdf-container'); downloadPdfBtn.textContent = 'Generating...'; downloadPdfBtn.disabled = true; container.classList.remove('hidden'); container.style.position = 'absolute'; container.style.left = '-9999px'; container.style.top = '0'; try { const canvas = await html2canvas(content, { scale: 2, useCORS: true }); const imgData = canvas.toDataURL('image/png'); const pdf = new jsPDF({ orientation: 'p', unit: 'pt', format: 'a4' }); const pdfWidth = pdf.internal.pageSize.getWidth(); const margin = 40; const usableWidth = pdfWidth - margin * 2; const imgScaledHeight = (canvas.height * usableWidth) / canvas.width; let heightLeft = imgScaledHeight; pdf.addImage(imgData, 'PNG', margin, margin, usableWidth, imgScaledHeight); heightLeft -= (pdf.internal.pageSize.getHeight() - margin * 2); let position = -pdf.internal.pageSize.getHeight() + margin * 2; while (heightLeft > 0) { pdf.addPage(); pdf.addImage(imgData, 'PNG', margin, position, usableWidth, imgScaledHeight); heightLeft -= pdf.internal.pageSize.getHeight(); position -= pdf.internal.pageSize.getHeight(); } pdf.save('Small-Claims-Court-Guide.pdf'); } catch (error) { console.error("Error generating PDF:", error); } finally { container.classList.add('hidden'); container.style.position = ''; container.style.left = ''; container.style.top = ''; downloadPdfBtn.textContent = 'Download PDF Guide'; downloadPdfBtn.disabled = false; } } downloadPdfBtn.addEventListener('click', downloadPDF); updateDisplay(); });
    Scroll to Top