Skip to content

Releases: VladSez/easy-invoice-pdf

EasyInvoicePDF v1.0.3 - Email visibility toggle for seller and buyer, reworked seller/buyer sections, confirm dialog to discard changes, UX improvements

Choose a tag to compare

@VladSez VladSez released this 29 Mar 21:18

✨ Highlights

  • Email visibility toggle for seller and buyer sections - control whether the email address appears in the generated PDF
  • ConfirmDiscardDialog component 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

Choose a tag to compare

@VladSez VladSez released this 10 Mar 12:02
850a00b

🏞️ QR Code Support, logo upload for the default invoice template and many more

qr-code

✨ 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

Choose a tag to compare

@VladSez VladSez released this 12 Jan 00:03
66cc63b

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

Choose a tag to compare

@VladSez VladSez released this 19 Nov 12:48
ccac646

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
image

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...
Read more