Remix.run Logo
vldszn 5 days ago

I’m working on a free & open-source invoice generator:

- Live PDF preview

- 100% client-side

- No sign-up required

- Includes a Stripe-style invoice template

- Built with modern web tech – simple to self-host or fork

Repo: https://github.com/VladSez/easy-invoice-pdf

Demo: https://easyinvoicepdf.com

Would love feedback, contributions, or ideas for other templates/features!

wonger_ 5 days ago | parent [-]

Seems to work well. The live preview workflow is nice. I like data URLs but not sure how other people feel handling several-hundred character URLs.

Only minor gripe is that the "support my work" popup is a bit aggressive.

vldszn 5 days ago | parent [-]

Thanks for the feedback!

The long URL is a compromise that lets the service work without requiring sign-ups or storing user data.

I’ll definitely try to make the “support my work” popup less aggressive.

wonger_ 4 days ago | parent [-]

I think you could cut the URL length in half if you remap the JSON keys before compressing. Like turning

  "total": 18,
  "vatTableSummaryIsVisible": true,
  "paymentMethod": "wire transfer",
  "paymentMethodFieldIsVisible": true,
  "paymentDue": "2025-08-27",
  "stripePayOnlineUrl": "https://example.com",
  "notes": "Reverse charge",
  "notesFieldIsVisible": true,
  "personAuthorizedToReceiveFieldIsVisible": false,
  ...
  
to this

  "1": 18,
  "2": 1,
  "3": "wire transfer",
  "4": 0,
  "5": "2025-08-27",
  "6": "https://example.com",
  "7": "Reverse charge",
  "8": 1,
  "9": 0,
  ...
Cut from ~1400 to ~700 chars in my testing, which is still a lot, so idk if you think it would be worth the extra code.
vldszn 4 days ago | parent [-]

Awesome idea, thank you, will look into this