Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Custom CSV import #22

Open
gitowiec opened this issue Oct 24, 2017 · 3 comments
Open

Custom CSV import #22

gitowiec opened this issue Oct 24, 2017 · 3 comments

Comments

@gitowiec
Copy link

I would like to use an importer for custom CSV file format.
It could allow to order and name columns to import, and it is enough to be good.
Eg: portal name, user name, password, note.
Then user just opens CSV file and buttercup imports it regarding to column order

@perry-mitchell
Copy link
Member

Thanks for creating an issue @gitowiec. The problem with CSV importing in the free-form nature of CSVs - There could literally be any type of data in the file. Some areas of concern for me are:

  • Are there entries, groups or both in the CSV?
  • Which columns mean what? Should we expect that they're named a certain way?
  • If they're all entries, do we just dump them into a single group on the Buttercup side?
  • Is this something we need a GUI for so the user can choose what columns are what, or is it something rigid that we throw an error for if it's not in the right format?
  • Will we need multiple CSV importers for different file types?

I'd like to work through these so we know what we're up against. Having a more rigid CSV import (say, entries only, strict column ordering) may definitely be easier to begin with.

@gitowiec
Copy link
Author

In my opinion it would be good to start simple. I don't use groups in CSV, in my use case I store passwords in simple LibreOffice Calc sheet. If there are only entries and no sign of groups just dump it into General. If there is fourth column in CSV use it as group. There should be brief information about it in importer.

Regarding meaning of columns, I think there should be one default option of columns meaning and order for example url, login, password. When I open Buttercup and press Add Entry I get form with Title, Username and Password and that is enough. So the default import option should be exactly this order and with the same meaning as in default Add Entry form. There is no problem for user to change order of columns in his CSV using any desktop software like LibreOffice Calc.

Regarding GUI: As I said before, to start simple the GUI is not a must. An information screen about importer behavior is enough, for example: Simple CSV importer imports files with 3 columns required and 4th optional. The meaning and order of columns are: title, username, password and [group]. The delimiter is ",". There could be a checkbox "File has the header row" and that's it. One more thing, importer could allow to change delimiter, use comma for default.

Regarding multiple CSV importers: I think there will be need for more advanced CSV importer. For example one that allows to add custom fields. Another useful feature is remapping columns order, or read order from properly named headers from first row. But all that features make this importer advanced, and for me it is important to get my hands on something simple and stop using LibreOffice Calc as my personal password manager :-)

@perry-mitchell
Copy link
Member

perry-mitchell commented Oct 25, 2017 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants