A modern, professional invoice generator built with React and TypeScript. Create, preview, and send beautiful invoices with integrated PayPal payment support.
- 🎨 Beautiful, responsive design with light/dark mode
- 💰 Multiple currency support
- 📱 Mobile-friendly interface
- 🏢 Business and client information management
- 📊 Dynamic line items with automatic calculations
- 💳 PayPal.me integration for easy payments
- 📷 Company logo upload support
- 🖨️ PDF generation and download
- 📧 Email invoice sharing
- 📱 QR code generation for quick payments
- 🌙 "Under the table" mode with tax handling
- 🔢 Automatic invoice numbering
- 📝 Custom notes support
- React 18
- TypeScript
- Tailwind CSS
- Vite
- jsPDF (PDF generation)
- QR Code generation
- Lucide React (icons)
- React Hot Toast (notifications)
- Clone the repository
- Install dependencies:
npm install
- Start the development server:
npm run dev
-
Fill in your business information:
- Company name
- Address
- PayPal.me link
- Upload company logo (optional)
-
Add client information:
- Client name
- Address
-
Customize invoice details:
- Invoice number (auto-generated)
- Date
- Due date
- Currency
-
Add line items:
- Description
- Quantity
- Unit price
- (Total is calculated automatically)
-
Set tax rate (optional)
- Click "Preview Invoice" to see how it looks
- Download as PDF
- Send via email
- Share PayPal payment link with QR code
- Dark Mode: Toggle between light and dark themes
- "Under the Table" Mode: Special mode for informal transactions
- Currency Support: Multiple currency options available
- QR Code: Automatically generated for PayPal payments
- Responsive Design: Works on all devices
src/
├── components/ # React components
├── types/ # TypeScript interfaces
├── utils/ # Utility functions
└── App.tsx # Main application component
InvoiceForm
: Main form for creating invoicesInvoicePreview
: Preview and actions for completed invoicesCurrencySelector
: Currency selection componentLogoUpload
: Company logo upload handler
pdf.ts
: PDF generation using jsPDFqrcode.ts
: QR code generation for paymentscurrencies.ts
: Currency formatting and optionsemail.ts
: Email handling functions
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a new Pull Request
MIT License - feel free to use this project for personal or commercial purposes.