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

Chrome/Firefox bookmark import #2

Open
3 tasks
itsmehemant123 opened this issue Jan 18, 2018 · 9 comments
Open
3 tasks

Chrome/Firefox bookmark import #2

itsmehemant123 opened this issue Jan 18, 2018 · 9 comments

Comments

@itsmehemant123
Copy link

itsmehemant123 commented Jan 18, 2018

This would be a lifesaver! I'm been on the look out for a bookmark server so that i can import my chrome bookmarks (I have ~5000). Anchr does just that, except for the bookmark import.

Is chrome/firefox bookmark import on the horizon? This would also entail folder capability for the bookmarks.

  • Import netscape compatible bookmarks (chrome/firefox).
  • Flatten folder hierarchy to 1 level.
  • Tags.
@muety
Copy link
Owner

muety commented Jan 18, 2018

Thanks for your feedback! That'd be a nice feature and I'd definitely like to have that in Anchr. Unfortunately I don't have enough time for the implementation, currently. But PRs are always welcome. I'd be glad if someone would attend to that matter.

@itsmehemant123
Copy link
Author

@n1try I was looking at how I'd preserve the hierarchical structure when you import from chrome/firefox.

https://docs.mongodb.com/manual/tutorial/model-tree-structures-with-materialized-paths/

I'm thinking this would be a good method to do that, all the while giving us the ability to search. What do you think? Any objections?

@muety
Copy link
Owner

muety commented Jan 19, 2018

Could be a way to model nested collections in the database, yes. But a general issue is that Anchr currently does only support one level of "folders" at all and to be honest, I wouldn't like to have nested hierarchies. If someone writes a browser importer then I'd suggest the restriction that the hierarchy is flattened to only the top folder / collection level.

@itsmehemant123
Copy link
Author

Gotcha, I want to pick up this task this weekend. I'll flatten the hierarchy to just 1 level.

@itsmehemant123
Copy link
Author

What about tagging support for links? It'll be adding one more string array to each link object. Tagging would help with search too - and it could be added to images and short links as a global search.

However, if you think it doesn't fit with that overall idea you had with anchr, I'll drop it.

@muety
Copy link
Owner

muety commented Jan 19, 2018

In principle, tagging is a good idea, but that'd be a larger modification, so I'd at least think about that in a separate issue.

Concerning the importer: you don't necessarily have to deeply integrate that with the core application, including UI controls etc. For me, a simple command-line script that puts links from a bookmark file into Anchr's database would be perfectly fine and way less effort.

@itsmehemant123
Copy link
Author

True, I won't build the tagging as a part of this task.

Gotcha, I'll see what I can come up with.

@itsmehemant123
Copy link
Author

@n1try When you find time, look at my branch - https://github.com/itsmehemant123/anchr/tree/BookmarkImport

I've added the UI for uploading the bookmarks, and then it flattens the bookmarks to 1 level, and adds them as collections.

Its still rough around the edges, so needs cleanup, but the functionality is working. I'd have to add a progress indicator to show the current status of import while its happening, handle any possible errors while adding the collections.

@muety
Copy link
Owner

muety commented Jan 23, 2018

First of all: congratulations for even getting this messy project set up and running 😄
I like your implementation and really want to thank you for your effort. However, I still got a few points:

  • Looks like you broke the table. Table header as well as description- and date column is gone (see http://prntscr.com/i4iezf)
  • The import-related UI is too prominent. Instead of the whole drag & drop thing, I'd rather add a small icon + text (analogously to the + New button in the left bar), which directly opens a file picker. Roughly like this: http://prntscr.com/i4ii4m. You don't necessarily need to add a progress indicator in my opinion.
  • Auto-reload collections after import is complete, so that the user gets feedback on success and immediately can see his bookmarks.
  • I'd suggest to rather use bookmarks-parser (instead of bookmark-parser) since it has fewer dependencies and doesn't require Python and stuff for compilation (which makes it easier to be installed especially on Windows)
  • As you said, correctly handle corner cases and possible errors

Thank you for that work! Please open a PR so we can carry on this discussion right there.

EDIT:

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