Releases: VladSez/easy-invoice-pdf
Releases · VladSez/easy-invoice-pdf
Release list
EasyInvoicePDF v1.0.3 - Email visibility toggle for seller and buyer, reworked seller/buyer sections, confirm dialog to discard changes, UX improvements
EasyInvoicePDF v1.0.3 - Email visibility toggle for seller and buyer, reworked seller/buyer sections, confirm dialog to discard changes, UX improvements
Latest
✨ Highlights
- Email visibility toggle for seller and buyer sections - control whether the email address appears in the generated PDF
ConfirmDiscardDialogcomponent to warn users about unsaved changes when closing the buyer/seller dialogs- Reworked seller and buyer information form sections with improved layout, locked-state banners, and cleaner field grouping
- Auto-scroll the invoice form on mobile when switching between tabs (UX improvement)
- Out-of-Date dates helper improved with more accurate state detection
Screen.Recording.2026-03-29.at.23.13.27.mov
Changed
- Invalid localStorage entries for buyers and sellers are now validated and silently dropped instead of causing errors
- Error message component layout and copy updated for better readability
- GitHub Actions workflows updated to latest action versions; failure handling added to all CI jobs
- Added knip github ci job
Fixed
- Pre-fill switch in buyer/seller dialogs no longer retains its state after the dialog is closed and reopened
- Buyer and seller dialogs now reset form values and pre-fill switch to their defaults when closed
- Buyer and seller names are trimmed of whitespace before saving; whitespace-padded duplicates are rejected
What's Changed
- feat: auto-scroll form on mobile when switching between tabs, fix loading placeholder by @VladSez in #191
- refactor: update layout and improve accessibility in invoice-related components by @VladSez in #192
- refactor: improve layout in BuyerDialog and SellerDialog components by @VladSez in #193
- refactor: streamline toast management in InvoiceForm component by @VladSez in #194
- feat: enhance buyer and seller management with new functionality and improved toast notifications by @VladSez in #195
- feat: reworked seller/buyer sections, email visibility switch field, shared invoice indicator, improved Out-of-Date helper + minor things by @VladSez in #197
- feat: add cancel confirm dialog for seller/buyer dialog, update gh actions, added new script update-github-actions in package.json by @VladSez in #198
- fix: update GitHub Actions script and fix buyer/seller dialog pre-fill bug by @VladSez in #199
- feat: replaced window.confirm with alert discard dialog for buyer and seller management by @VladSez in #200
Full Changelog: v1.0.2...v1.0.3
v1.0.2
🏞️ QR Code Support, logo upload for the default invoice template and many more
✨ Highlights
- QR code generation for invoices with customizable descriptions and visibility toggles, supported in both default and Stripe templates
- Logo upload for the default invoice template (previously available only in the Stripe template)
- Searchable currency combobox with grouped categories, replacing the native dropdown for faster selection
- Improved multi-page PDF support with automatic pagination and page breaks
Changed
- Reorganized Stripe payment link input position in the form for better flow
- Increased QR code size and improved rendering quality for better scannability
- Enhanced invoice template text color and visuals for improved readability
- Improved user feedback during invoice item deletion with better toast notification handling
- Enhanced error handling to reset invoice metadata to defaults on errors
- Clearer error messages when invoice sharing fails
- Tooltip on the "Add invoice item" button for contextual guidance
- Sentry error tracking integration for invoice sharing and GitHub stars features
Fixed
- i18n issue when generating PDF via the API route
- Delete invoice item flow not working correctly
- Item name field validation too strict (now optional for flexibility)
What's Changed
- feat: add QR code functionality to invoice templates and other improvements + bug fixes by @VladSez in #165
- improvement: update QR code images and enhance invoice template visuals by @VladSez in #172
- test: enhance URL verification in e2e tests for various pages by @VladSez in #174
- test: update navigation wait strategy in e2e tests for improved reliability by @VladSez in #175
- feat: update Playwright configuration and enhance e2e tests by @VladSez in #176
- chore: adjust Playwright configuration and e2e test settings for stability by @VladSez in #177
- chore: set timezone environment variable in e2e workflow to fix timezone issue in node js server env by @VladSez in #178
- docs: add Star History section to README and improve e2e test navigation strategy by @VladSez in #179
- fix: delete invoice item flow by @VladSez in #180
- fix: fix i18n issue with generating pdf via api + other improvements by @VladSez in #181
- refactor: rename item removal handler and enhance user feedback in invoice form by @VladSez in #182
- refactor: currency searchable combobox by @VladSez in #183
- feat: expand TODO list with discounts feature and improve e2e workflow by @VladSez in #186
- feat: upload logo for default invoice templates, improve add invoice btn styles, add more e2e tests by @VladSez in #189
- fix: update README logo and refactor invoice form for Stripe payment link by @VladSez in #190
Full Changelog: EasyInvoicePDF-1.0.1...v1.0.2
EasyInvoicePDF v1.0.1
Customizable Tax/VAT Labels & Major Improvements
Screen.Recording.2026-01-12.at.01.01.27.mov
✨ New Features
- Customizable Tax Label - Users can now personalize the tax/VAT label text in invoices (e.g., "VAT", "GST", "Sales Tax", etc.)
- Customizable Tax Number Label - Added support for custom Tax Number labels in buyer and seller information sections
- Dynamic Tax Label per Language - Tax labels automatically update based on selected invoice language
🛠️ Improvements
- Enhanced validation for VAT input to accept both numeric values and specific strings
- Improved user interface messages for clarity regarding VAT input requirements
- Updated README with enhanced project description, links, and feature presentation
- Better localization across all supported languages (EN, DE, ES, FR, IT, NL, PL, PT, RU, UK)
- Streamlined PDF font handling with improved caching for better performance
- Enhanced invoice PDF rendering quality
🧪 Testing & Infrastructure
- Added comprehensive e2e tests for new tax label features
- Improved Playwright test stability with refined screenshot assertions
- Updated CI/CD to use macOS runners for consistent snapshot generation
- Added static assets tests for better reliability
🐛 Bug Fixes
- Fix bug with accordion
- Fixed error message for invoice link generation to include refresh suggestion
- Improved invoice item tax label helper text
- Various UI polish and consistency fixes
What's Changed
- feat: customizable tax/VAT label text + a lot of other improvements and bug fixes by @VladSez in #163
Full Changelog: EasyInvoicePDF-v1.0.0...EasyInvoicePDF-1.0.1
EasyInvoicePDF v1.0.0
EasyInvoicePDF Is Here - Fast, Free, Open-Source Invoicing
EasyInvoicePDF is a free, open-source tool that lets you create, customize, and download professional invoices with real-time preview. Runs entirely in your browser.
Features
- ⚡ Live Preview: See changes in real-time as you type
- 🔗 Shareable Links: Send invoices directly to clients without attachments
- ⭐ No Sign-Up Required: Start creating invoices immediately without any registration
- 📱 Browser Only: No server uploads, your data stays private
- 🌍 Multi-Language: Support for 10+ languages and all major currencies
- 🧮 European VAT: Automatic VAT calculation and formatting
- 🎨 Multiple Templates: Including modern Stripe-style design
- 📄 Instant PDF: One-click download ready for printing or sending
- 📱 Mobile-Friendly: Fully responsive design works perfectly on all devices
Demo
easy-invoice-demo.mp4
What's Changed
- chore: add metadata + minor fixes by @VladSez in #1
- feat: change analytics lib + minor fixes by @VladSez in #3
- feat: update dependencies and enhance invoice form functionality by @VladSez in #14
- feat: Show/hide columns on pdf, add og image, tooltips + other improvements by @VladSez in #36
- refactor: standardize loading button text and timeout constant by @VladSez in #40
- fix: improve invoice form payment due date UX and PDF download error handling + PDF download bug fix by @VladSez in #41
- feat: enhance invoice form with money input components and currency improvements by @VladSez in #42
- feat: add error handling page and update README resources by @VladSez in #43
- chore: update project license from MIT to GNU Affero General Public License (AGPLv3) + add .cursor/rules by @VladSez in #44
- feat: save sellers for future use, enhance invoice form with advanced input validation and user experience improvements by @VladSez in #47
- chore: add open panel for analytics by @VladSez in #54
- refactor: extract initial invoice data to constants and improve error page recovery by @VladSez in #55
- feat: add Radix UI Accordion to invoice form for improved section organization by @VladSez in #56
- feat: store pdf fonts locally, adjust styles to prevent input focus on iOS by @VladSez in #57
- feat: donation support and add some analytics event by @VladSez in #60
- fix: double re-rerender during edit seller and check if local storage is available, add umami analytics by @VladSez in #61
- feat: Add general information section to invoice form using shadcn/ui Accordion by @VladSez in #62
- feat: Add mobile-friendly tabs for invoice form and PDF preview by @VladSez in #64
- feat: Add Axiom logging and enhance error tracking across application + update invoice form styles by @VladSez in #65
- feat: Integrate Sentry for comprehensive error monitoring and tracking by @VladSez in #66
- feat: Enhance SEO and metadata for invoice generator landing page by @VladSez in #69
- feat: add more sentry captures by @VladSez in #70
- feat: Add PWA icons and manifest for improved web app experience by @VladSez in #72
- feat: Add multi-language PDF download feature with multi-select component and create/edite/delete buyer by @VladSez in #73
- feat: Improve default settings for buyer and seller dialogs by @VladSez in #76
- feat: refactoring and improvements by @VladSez in #78
- feat: add e2e tests with playwright and other improvements by @VladSez in #79
- chore: remove @openpanel/nextjs dependency and update Sentry configuration for production environment by @VladSez in #85
- feat: i18n /about page, new translations and currencies and other improvements by @VladSez in #84
- feat: add support for additional currencies HKD, TWD, CNY, and SGD by @VladSez in #92
- chore: remove demo video assets and update video source links to cdn by @VladSez in #93
- feat: add notes for seller and buyer, seo improvements and other stuff by @VladSez in #95
- chore: refactor middleware for root redirection and update configuration by @VladSez in #100
- chore: update routing and configuration for improved SEO and user exp… by @VladSez in #102
- fix: update invoice generator text for consistency and clarity; remov… by @VladSez in #103
- fix: update asset URLs in About page and tests for improved resource … by @VladSez in #104
- fix: update Open Graph image URLs in layout metadata for cache busting by @VladSez in #105
- fix: centralize asset URLs in config and update references across com… by @VladSez in #106
- fix: adjust width of loading and header components for improved layout consistency by @VladSez in #107
- fix: update STATIC_ASSETS_URL in config and restore generateStaticPar… by @VladSez in #108
- metadata updates by @VladSez in #110
- automate invoice creation by @VladSez in #111
- feat: save invoice to google drive and tg notification by @VladSez in #113
- feat: add INVOICE_EMAIL_COMPANY_TO for invoice email functionality by @VladSez in #114
- attempt to fix android pdf preview by @VladSez in #115
- chore: add tsgo, some dev libs and file structure improvements by @VladSez in #116
- feat: stripe invoice template, new CTA toasts, cleanup landing page + other improvements by @VladSez in #118
- feat: format price on stripe template and make updates to license by @VladSez in #123
- chore: update license information in LICENSE and README for clarity by @VladSez in #124
- refactor: update HeroSection layout and introduce responsive CTA comp… by @VladSez in #126
- feat: add /?template=stripe|default to url, implement URL compression logic by @VladSez in #130
- chore: refactor metadata handling to include APP_URL for canonical links and enhance Open Graph support by @VladSez in #131
- fix: invoice preview and functionality in in-app browsers by @VladSez in #133
- fix: enhance error handling and re-render logic in MobileInvoicePDFViewer by @VladSez in #134
- feat: enhance README and sitemap with changelog support by @VladSez in #135
- fix: do not show invoice type field on stripe template invoice, add e2e tests for invoice type and signature field visibility in default and Stripe templates by @VladSez in #136
- feat: stripe template improvements (Template-aware UI, etc) by @VladSez in #137
- feat: update sitemap, JSON-LD, added shadcn mcp by @VladSez in #139
- chore: styles fixes, pin pnpm in pkg.json, minor improvements by @VladSez in #140
- fix: update metadata titles and descriptions across multiple language… by @VladSez in #141
- feat: integrate GitHub stars feature and update configuration by @VladSez in #145
- feat: improved gh star animation + fix icon size by @VladSez in #147
- feat: add typescript-plugin-directives and update configurations by @VladSez in #148
- feat: expand suppo...
