Is there a way to use javascript to generate a file based on user input and provide it as a download without storing it on the server? For instance, imagine a scenario where a user is using an application and they want to download their work by clicking a "download" button. How can we ensure that a file is created containing their work and starts downloading in the browser? Additionally, how can we give this file a custom name?