Feature request: download data link when requesting data

It would be useful to have a download link available on the data request page. It is hard to discover that it is possible to download your data from /user/export/download unless you have email configured.

I’m quite excited to give Vikunja a try. To import content from Trello, Vikunja needs to talk to Trello directly but the server I’m using is unable to talk to the internet. To work around this, I can spin up an instance of Vikunja in an internet connected docker container, use that to import the data, then download my data from the temporary instance before importing it on the real instance.

I found that the UX flow for user data export implies you have to click on a link in an email. In an environment that doesn’t use email it’s not obvious how to get access to the data.

I did find the download url by searching this forum, but for ease of use it might be good to indicate the download url on the request page.

Welcome! :wave:

This probably makes sense to have, but I wouldn’t exactly say this has a high priority. I’d love a PR for this.

Hi!
I’m ready to make a PR pending gitea account activation. I found it helpful to do this as a minor feature, just to gain familiarity with the codebase.

In this change, once a user successfully requests a download, text is displayed that giving the location of the download page. I didn’t make it a link as there is no check for whether the export is ready yet. I wonder whether instead of / as well as the text, a UI notification should be generated. I figure with the events system it should be possible to track export readiness + produce a notification.

Also, a couple of questions around my dev environment setup, I’m unsure if I’ve missed some config in vscode:

  • I’m getting a bunch of typescript linting errors, but everything compiles and runs fine. E.g. Object literal may only specify known properties, and 'password' does not exist in type 'IAbstract'. I can update the types for this to clear the error, but I don’t want to make changes elsewhere if it’s just me.
  • I had to add a few rules to my local eslint.js to get it to format things (indents, spaces). Again, I’m unsure if it’s just my config or if those rules aren’t set.

I’ve enabled your account now.

I think this would be a better solution because just redirecting them to the page without anything to do will likely cause more confusion.

Adding a notification in the ui should be pretty easy since the mail is already a notification:

All that’s left would be to store it in the database and add a little logic in the frontend so that it is properly shown.

Also check out the docs about the notification system.

1 Like

Thank you, I’ve added a PR as a WIP while I work out the notifications :slight_smile: