Our great sponsors
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
If it's a relatively small amount of data (like 100mb or less), try https://github.com/eligrey/FileSaver.js it handles all the edge cases nicely.
If it's larger, it's complicated... https://github.com/jimmywarting/StreamSaver.js generally works, but is not 100% reliable. https://github.com/jimmywarting/native-file-system-adapter is supposed to be like a newer version of it, but I struggled to get it working. You can also use https://web.dev/file-system-access/ but it's only supported in Chrome.
If it's larger, it's complicated... https://github.com/jimmywarting/StreamSaver.js generally works, but is not 100% reliable. https://github.com/jimmywarting/native-file-system-adapter is supposed to be like a newer version of it, but I struggled to get it working. You can also use https://web.dev/file-system-access/ but it's only supported in Chrome.