Add "Folders" to Bookmarks to collect Bookmarks into Categories #13

Closed
craigarno opened this Issue Apr 26, 2013 · 78 comments

Comments

Projects
@craigarno

I find the Bookmarks feature really useful since I find myself in many different locations and on different computers. So I collect a large number of bookmarks.

To help me organize my Bookmarks, I'd like to request a new "Folder" feature in Bookmarks so I can group related Bookmarks together. I'm attaching a picture to help explain this concept. This concept is very similar to how Firefox and Chrome organize bookmarks.

OwnCloud-Bookmark-Feature-Request

I should probably mention I'm using OwnCloud 5.0.5 on OpenSUSE 12.2 x64 LAMP setup, and am brand new to OwnCloud.

Thank you,
Craig

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Aug 29, 2013

+1
I'll work on this on the next couple of days.

So far it needs an schema change (add column parent, to have a hierarchy structure) and, on the frontend, may be jsTree (http://www.jstree.com) or similar, on the sidebar (leftcontent).

desyncr commented Aug 29, 2013

+1
I'll work on this on the next couple of days.

So far it needs an schema change (add column parent, to have a hierarchy structure) and, on the frontend, may be jsTree (http://www.jstree.com) or similar, on the sidebar (leftcontent).

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Aug 29, 2013

Thank you, this will be useful to get around the Bookmark 10 Tag display limit which currently exists. I already have over 20 tags. I hope migration effort for current bookmarks / Tags into the new format will be easy / painless / trivial.

I run MySQL backend (Ver 14.14 Distrib 5.5.28, for Linux (x86_64) using readline 6.2) with the latest release OwnCloud 5.0.x frontend on OpenSUSE 12.2 / 12.3 x64 accessing from both Linux (3.4.33-2.24-desktop / 3.7.10-1.16-desktop ) and Windows (7 and XP) based Thunderbird / Lightning, Firefox, and Chrome / Chromium.

If I can help, please send a message.

Thank you, this will be useful to get around the Bookmark 10 Tag display limit which currently exists. I already have over 20 tags. I hope migration effort for current bookmarks / Tags into the new format will be easy / painless / trivial.

I run MySQL backend (Ver 14.14 Distrib 5.5.28, for Linux (x86_64) using readline 6.2) with the latest release OwnCloud 5.0.x frontend on OpenSUSE 12.2 / 12.3 x64 accessing from both Linux (3.4.33-2.24-desktop / 3.7.10-1.16-desktop ) and Windows (7 and XP) based Thunderbird / Lightning, Firefox, and Chrome / Chromium.

If I can help, please send a message.

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 1, 2013

I just added a very basic support for folders. There are some limitations still, but should be fixed in a few days.

Currently it supports importing from FF and Chrome (haven't tested on others) preserving folders and order.

Limitations:

  • It won't export folders (easy)
  • It won't import favicons (easy)
  • You can't add bookmarks inside folders (medium)
  • There is no way to move things around (not so easy to fix).
  • Other small things here and there.

If somebody want to test it out and give some feedback that would be greatly welcome. Just clone my fork and checkout the branch hierarchy.

bookmarksapp

desyncr commented Sep 1, 2013

I just added a very basic support for folders. There are some limitations still, but should be fixed in a few days.

Currently it supports importing from FF and Chrome (haven't tested on others) preserving folders and order.

Limitations:

  • It won't export folders (easy)
  • It won't import favicons (easy)
  • You can't add bookmarks inside folders (medium)
  • There is no way to move things around (not so easy to fix).
  • Other small things here and there.

If somebody want to test it out and give some feedback that would be greatly welcome. Just clone my fork and checkout the branch hierarchy.

bookmarksapp

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 1, 2013

Ok, really feeling like a newb...

Rather than tamper with my working server, I set one up on my workstation (Neptune). I installed OC 5.0.10, imported my bookmarks from the server and verified everything worked... it did, bookmarks displayed, etc.

Then I executed

neptune:/srv/www/htdocs/owncloud # git clone https://github.com/asphxia/bookmarks.git
Cloning into 'bookmarks'...
remote: Counting objects: 11568, done.
remote: Compressing objects: 100% (1728/1728), done.
remote: Total 11568 (delta 5683), reused 11489 (delta 5605)
Receiving objects: 100% (11568/11568), 1.34 MiB | 637 KiB/s, done.
Resolving deltas: 100% (5683/5683), done.

And looked again...
oc-bookmark-file1

The original looked like this...
oc-bookmark-file2

So, what did I do wrong?
And what do I need to do to correct this?

Craig

Ok, really feeling like a newb...

Rather than tamper with my working server, I set one up on my workstation (Neptune). I installed OC 5.0.10, imported my bookmarks from the server and verified everything worked... it did, bookmarks displayed, etc.

Then I executed

neptune:/srv/www/htdocs/owncloud # git clone https://github.com/asphxia/bookmarks.git
Cloning into 'bookmarks'...
remote: Counting objects: 11568, done.
remote: Compressing objects: 100% (1728/1728), done.
remote: Total 11568 (delta 5683), reused 11489 (delta 5605)
Receiving objects: 100% (11568/11568), 1.34 MiB | 637 KiB/s, done.
Resolving deltas: 100% (5683/5683), done.

And looked again...
oc-bookmark-file1

The original looked like this...
oc-bookmark-file2

So, what did I do wrong?
And what do I need to do to correct this?

Craig

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 2, 2013

You probably didn't do anything wrong. I'll checkout what could have caused that.

Thanks for the feedback.

desyncr commented Sep 2, 2013

You probably didn't do anything wrong. I'll checkout what could have caused that.

Thanks for the feedback.

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 2, 2013

I can't repro the error :/ Did you checkout the branch hierarchy?

git clone https://github.com/asphxia/bookmarks.git && \
cd bookmarks && \
git checkout hierarchy

desyncr commented Sep 2, 2013

I can't repro the error :/ Did you checkout the branch hierarchy?

git clone https://github.com/asphxia/bookmarks.git && \
cd bookmarks && \
git checkout hierarchy
@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 2, 2013

Just tried your suggestion. Same result as before.

neptune:/srv/www/htdocs/owncloud # git clone https://github.com/asphxia/bookmarks.git && cd bookmarks && git checkout hierarchy
Cloning into 'bookmarks'...
remote: Counting objects: 11568, done.
remote: Compressing objects: 100% (1728/1728), done.
remote: Total 11568 (delta 5683), reused 11489 (delta 5605)
Receiving objects: 100% (11568/11568), 1.34 MiB | 191 KiB/s, done.
Resolving deltas: 100% (5683/5683), done.
Branch hierarchy set up to track remote branch hierarchy from origin.
Switched to a new branch 'hierarchy'
neptune:/srv/www/htdocs/owncloud/bookmarks #

I had to perform an rm -r bookmarks for your suggested command to succeed.

Just tried your suggestion. Same result as before.

neptune:/srv/www/htdocs/owncloud # git clone https://github.com/asphxia/bookmarks.git && cd bookmarks && git checkout hierarchy
Cloning into 'bookmarks'...
remote: Counting objects: 11568, done.
remote: Compressing objects: 100% (1728/1728), done.
remote: Total 11568 (delta 5683), reused 11489 (delta 5605)
Receiving objects: 100% (11568/11568), 1.34 MiB | 191 KiB/s, done.
Resolving deltas: 100% (5683/5683), done.
Branch hierarchy set up to track remote branch hierarchy from origin.
Switched to a new branch 'hierarchy'
neptune:/srv/www/htdocs/owncloud/bookmarks #

I had to perform an rm -r bookmarks for your suggested command to succeed.

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 2, 2013

If you'd like, you can go to http://arno.com:81 and login as test/test. Maybe looking at HTML output will provide a clue?

I temporarily forwarded my web server for this URL to tunnel to my development machine.

If you'd like, you can go to http://arno.com:81 and login as test/test. Maybe looking at HTML output will provide a clue?

I temporarily forwarded my web server for this URL to tunnel to my development machine.

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 2, 2013

Not sure why but the app keeps serving some old files. Some really old templates.

Tomorrow I'll install OC 5.0.10 to check against it (I'm running master).

Regards.

desyncr commented Sep 2, 2013

Not sure why but the app keeps serving some old files. Some really old templates.

Tomorrow I'll install OC 5.0.10 to check against it (I'm running master).

Regards.

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 2, 2013

Ok, let me know when you're able to sort it out. From my end, I can afford to be patient.

I really like the idea that I can "import from FF and Chrome". Can this be made into a bidirectional "sync"?

Wish #1 - How hard would it be to put the Folder / Sub-Folder Tree in the "Related Tags" pane and have URL's displayed in the right pane, similar to the current Tag's setup? Vertical scroll bars available in both panes when content exceeds pane size?

Wish #2 - I like to store related URL information, like a utility account number and password for e-pay for sites which disable "saved" account information in your browser, phone numbers for support. Phone numbers are especially useful for cable companies that like to bury and hide this information on their site so customers will have a hard time finding this information, especially if the site moves this information to a new hiding place regularly, or internet access is down. This is related information (Notes) which I'd like to see if I do something like hover the cursor over the URL in the right pane. This sounds trivial, until you have 20 or more URL's with this kind of related information. Being able to easily copy/paste things like 30-digit account numbers from notes to enter into "required fields" is also useful. When things are going wrong, having this information at your fingertips is invaluable. Notes might look something like this:

Account Number:
00849833001234567890

Comcast Quality Assurance
888-565-4329 [1-1-2]
abuse@comcast.net

http://www.comcast.com
User Name: me@domain.com
Password: Secre.....

Email Us: http://www.comcastsupport.com/com/email.asp
Phone: Call 1-800-COMCAST (1-800-266-2278). 24/7

Ok, let me know when you're able to sort it out. From my end, I can afford to be patient.

I really like the idea that I can "import from FF and Chrome". Can this be made into a bidirectional "sync"?

Wish #1 - How hard would it be to put the Folder / Sub-Folder Tree in the "Related Tags" pane and have URL's displayed in the right pane, similar to the current Tag's setup? Vertical scroll bars available in both panes when content exceeds pane size?

Wish #2 - I like to store related URL information, like a utility account number and password for e-pay for sites which disable "saved" account information in your browser, phone numbers for support. Phone numbers are especially useful for cable companies that like to bury and hide this information on their site so customers will have a hard time finding this information, especially if the site moves this information to a new hiding place regularly, or internet access is down. This is related information (Notes) which I'd like to see if I do something like hover the cursor over the URL in the right pane. This sounds trivial, until you have 20 or more URL's with this kind of related information. Being able to easily copy/paste things like 30-digit account numbers from notes to enter into "required fields" is also useful. When things are going wrong, having this information at your fingertips is invaluable. Notes might look something like this:

Account Number:
00849833001234567890

Comcast Quality Assurance
888-565-4329 [1-1-2]
abuse@comcast.net

http://www.comcast.com
User Name: me@domain.com
Password: Secre.....

Email Us: http://www.comcastsupport.com/com/email.asp
Phone: Call 1-800-COMCAST (1-800-266-2278). 24/7

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 2, 2013

I really like the idea that I can "import from FF and Chrome". Can this be made into a bidirectional "sync"?

There is no native way to do that. Unless creating an extension for each browser that communicates with ownClud.

Folder / Sub-Folder Tree in the "Related Tags" pane

That's the next step. The folder tree would be collapsible as well the "related tags" pane, otherwise it won't fit.

I like to store related URL information,

There is the description field. I took the liberty to remove it from the listing because it's not standard (you can't import or export this field, neither tags). I think that may be the bookmarks items can be "expanded" to show the description and such when clicked on a brief of the description.

desyncr commented Sep 2, 2013

I really like the idea that I can "import from FF and Chrome". Can this be made into a bidirectional "sync"?

There is no native way to do that. Unless creating an extension for each browser that communicates with ownClud.

Folder / Sub-Folder Tree in the "Related Tags" pane

That's the next step. The folder tree would be collapsible as well the "related tags" pane, otherwise it won't fit.

I like to store related URL information,

There is the description field. I took the liberty to remove it from the listing because it's not standard (you can't import or export this field, neither tags). I think that may be the bookmarks items can be "expanded" to show the description and such when clicked on a brief of the description.

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 7, 2013

If any one is still insteresting here's how it looks so far:

image

Only tested with SQLite. If anyone can grab it and test against postgres and mysql that would be nice.

desyncr commented Sep 7, 2013

If any one is still insteresting here's how it looks so far:

image

Only tested with SQLite. If anyone can grab it and test against postgres and mysql that would be nice.

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 8, 2013

Tried again with both git commands listed above. Getting the same results as last time. I'm updating "ownCloud 5.0.10 (up to date)"

Test account http://arno.com:81 setup last time should still be there if you want to look at output.

Image above looks great!

Tried again with both git commands listed above. Getting the same results as last time. I'm updating "ownCloud 5.0.10 (up to date)"

Test account http://arno.com:81 setup last time should still be there if you want to look at output.

Image above looks great!

@ghost

This comment has been minimized.

Show comment
Hide comment
@ghost

ghost Sep 8, 2013

Hi asphxia checked out your fork
bild 3
1.) Descriptions of the bookmarks are not displayed anymore
2.) I cannot figure out how to put them into a folder
3.) i cannot figure out how to create a folder
4.) it's still wasting lot of browser width

@craigarno i think you should move to apps/ folder before checking out

ghost commented Sep 8, 2013

Hi asphxia checked out your fork
bild 3
1.) Descriptions of the bookmarks are not displayed anymore
2.) I cannot figure out how to put them into a folder
3.) i cannot figure out how to create a folder
4.) it's still wasting lot of browser width

@craigarno i think you should move to apps/ folder before checking out

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 8, 2013

@roadfox Thanks for feedback.

1- It's not displayed anymore as I'll add a dropdown effect to display it. May be I can accommodate description and tags as it were before. But I think it leaves a small space for both.

2, 3 - Folder and bookmarks creation (inside a folder) are still in dev.

4- That's because when there are tags the full title isn't displayed. But I agree there is too much free space to use.

Regards.

desyncr commented Sep 8, 2013

@roadfox Thanks for feedback.

1- It's not displayed anymore as I'll add a dropdown effect to display it. May be I can accommodate description and tags as it were before. But I think it leaves a small space for both.

2, 3 - Folder and bookmarks creation (inside a folder) are still in dev.

4- That's because when there are tags the full title isn't displayed. But I agree there is too much free space to use.

Regards.

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 8, 2013

@roadfox You are right, don't know why I didn't see that. All I can say is Duh?! Senior moment.

@asphxia 5.0.10 with revised Bookmarks App is installed using a duplicated OwnCloud MySQL db on a remote server. It appears to be working http://arno.com:81. Bookmarks are showing up and behave as they do in the released 5.0.10 app, minus descriptions.

Apps says I have Bookmarks 0.4 installed. Since 5.0.10 says Bookmarks 0.3, I think this means I'm running your new code.

I also see a problem when I scroll to the bottom and back to the top. Tag bubble images are scattered through the (title) column starting at about line 11. I also see from the database that Descriptions (description) are still in the database, just not presented.
oc-bookmark-130908b

@roadfox You are right, don't know why I didn't see that. All I can say is Duh?! Senior moment.

@asphxia 5.0.10 with revised Bookmarks App is installed using a duplicated OwnCloud MySQL db on a remote server. It appears to be working http://arno.com:81. Bookmarks are showing up and behave as they do in the released 5.0.10 app, minus descriptions.

Apps says I have Bookmarks 0.4 installed. Since 5.0.10 says Bookmarks 0.3, I think this means I'm running your new code.

I also see a problem when I scroll to the bottom and back to the top. Tag bubble images are scattered through the (title) column starting at about line 11. I also see from the database that Descriptions (description) are still in the database, just not presented.
oc-bookmark-130908b

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 8, 2013

@craigarno Thanks for the feedback. I'll look upon the tag issue.

Regarding the description I'll put it back and it used to. I thought as it's not a standard thing it wouldn't as widely used, but it seems it's actually very useful :)

App says version 0.4 on my fork only. I don't know if the app version will be bumped once the changes get merged (hopefully :)

Regards!

desyncr commented Sep 8, 2013

@craigarno Thanks for the feedback. I'll look upon the tag issue.

Regarding the description I'll put it back and it used to. I thought as it's not a standard thing it wouldn't as widely used, but it seems it's actually very useful :)

App says version 0.4 on my fork only. I don't know if the app version will be bumped once the changes get merged (hopefully :)

Regards!

@craigarno craigarno closed this Sep 11, 2013

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 11, 2013

A thought or two on the description field.

  • Why not hide the Description field and have it show when the URL "Title" is clicked on (takes you to the URL now)
  • Put a "GO" or "Take me there" button

A thought or two on the description field.

  • Why not hide the Description field and have it show when the URL "Title" is clicked on (takes you to the URL now)
  • Put a "GO" or "Take me there" button

@craigarno craigarno reopened this Sep 11, 2013

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 11, 2013

Actually I was thinking on making the bookmark title the link and all the space left would be clickeable (except tags and edit buttons) and on click show the description (slide down).

This way there wouldn't be a need for an extra button.

desyncr commented Sep 11, 2013

Actually I was thinking on making the bookmark title the link and all the space left would be clickeable (except tags and edit buttons) and on click show the description (slide down).

This way there wouldn't be a need for an extra button.

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 11, 2013

Oops, didn't mean to post that yet (experiencing a few computer problems)... still working on the description idea.

But, yes, hiding the description field until it is requested might be a good thing. This will allow me to place login ID and password information in the description field and by default keep it hidden from view.

Another thought along these lines is to have a second "hidden" description field for sensitive information, like login, account #'s with CVV codes, etc.

Oops, didn't mean to post that yet (experiencing a few computer problems)... still working on the description idea.

But, yes, hiding the description field until it is requested might be a good thing. This will allow me to place login ID and password information in the description field and by default keep it hidden from view.

Another thought along these lines is to have a second "hidden" description field for sensitive information, like login, account #'s with CVV codes, etc.

@craigarno

This comment has been minimized.

Show comment
Hide comment
@craigarno

craigarno Sep 11, 2013

On the TAG image duplication problem, it might be tied to the right scroll bar operation. I notice the scroll bar displays one size until I get to the bottom of my list, then it resizes to a larger page and more bookmarks are shown. It is after this resizing that the problem seems to appear. I don't know for certain they are related, however from what I've observed, I'd certainly consider that they might be related.

On the TAG image duplication problem, it might be tied to the right scroll bar operation. I notice the scroll bar displays one size until I get to the bottom of my list, then it resizes to a larger page and more bookmarks are shown. It is after this resizing that the problem seems to appear. I don't know for certain they are related, however from what I've observed, I'd certainly consider that they might be related.

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 11, 2013

I think a second "hidden" would address a problem too punctual being out of the scope of a basic bookmark app.

I can think of a "show more" button bellow the displayed description layer that would expand the layer to show the full description, in case it's too long to fit. That idea can be implemented easily.

desyncr commented Sep 11, 2013

I think a second "hidden" would address a problem too punctual being out of the scope of a basic bookmark app.

I can think of a "show more" button bellow the displayed description layer that would expand the layer to show the full description, in case it's too long to fit. That idea can be implemented easily.

@desyncr

This comment has been minimized.

Show comment
Hide comment
@desyncr

desyncr Sep 11, 2013

Regarding the tags issue, yes, the problem resides on how the tags are floated and dynamically inserted (fetched). When I get some time I'll push the fix (together with folder and bookmark creation).

desyncr commented Sep 11, 2013

Regarding the tags issue, yes, the problem resides on how the tags are floated and dynamically inserted (fetched). When I get some time I'll push the fix (together with folder and bookmark creation).

@flause

This comment has been minimized.

Show comment
Hide comment
@flause

flause Nov 14, 2013

I was thinking about the tag and folder issue and in my opinion to combine these two different organization structures are not that useful. I would suggest to concentrate on one of them. If we use tags, and that is what we actually doing, it is not necessary to also have a folder structure.You can group your bookmarks in tags as well as in folders. And the advantage to the tag structure is that you have a flat hierarchy. At the same time you can give a bookmark more tags to organize them more precise. What do you think?

flause commented Nov 14, 2013

I was thinking about the tag and folder issue and in my opinion to combine these two different organization structures are not that useful. I would suggest to concentrate on one of them. If we use tags, and that is what we actually doing, it is not necessary to also have a folder structure.You can group your bookmarks in tags as well as in folders. And the advantage to the tag structure is that you have a flat hierarchy. At the same time you can give a bookmark more tags to organize them more precise. What do you think?

@abditus

This comment has been minimized.

Show comment
Hide comment
@abditus

abditus Jan 20, 2014

I think it might be difficult to organise a huge amount of bookmarks only with tags. But more important is, that most of the browsers like Firefox use a folder structure. So import / export issues may be easier. For the user the "look an feel" is more similar. And there is a new Firefox-sync: Maybe in future the bookmark-app can access to the stored firefox-sync-bookmarks. That would be great.

abditus commented Jan 20, 2014

I think it might be difficult to organise a huge amount of bookmarks only with tags. But more important is, that most of the browsers like Firefox use a folder structure. So import / export issues may be easier. For the user the "look an feel" is more similar. And there is a new Firefox-sync: Maybe in future the bookmark-app can access to the stored firefox-sync-bookmarks. That would be great.

@nick4fake

This comment has been minimized.

Show comment
Hide comment

any news?

@Morley93

This comment has been minimized.

Show comment
Hide comment
@Morley93

Morley93 Nov 10, 2014

Just wondering, is this feature still in development? I agree that folder support seems like a logical feature given that this is how most browsers manage bookmarks - the lack of this functionality makes it difficult for people used to organising bookmarks this way to adopt the app.

Just wondering, is this feature still in development? I agree that folder support seems like a logical feature given that this is how most browsers manage bookmarks - the lack of this functionality makes it difficult for people used to organising bookmarks this way to adopt the app.

@IzzySoft

This comment has been minimized.

Show comment
Hide comment
@IzzySoft

IzzySoft Mar 5, 2015

I second this. One reason keeping me from using the bookmarks app is it makes no sense to me without supporting folders.

IzzySoft commented Mar 5, 2015

I second this. One reason keeping me from using the bookmarks app is it makes no sense to me without supporting folders.

@sebka

This comment has been minimized.

Show comment
Hide comment
@sebka

sebka Mar 24, 2015

+1 for the folder feature.
Without the feature the bookmarkapp is not as half as usefull.

sebka commented Mar 24, 2015

+1 for the folder feature.
Without the feature the bookmarkapp is not as half as usefull.

@blizzz blizzz added the enhancement label Jul 8, 2015

@sebastianbrosch

This comment has been minimized.

Show comment
Hide comment
@franklinkim

This comment has been minimized.

Show comment
Hide comment

+1

@uwecl

This comment has been minimized.

Show comment
Hide comment

uwecl commented Dec 21, 2015

+1

@webmarka

This comment has been minimized.

Show comment
Hide comment
@webmarka

webmarka Jan 13, 2016

One more +1 :)

One more +1 :)

@poelzi

This comment has been minimized.

Show comment
Hide comment
@poelzi

poelzi Jun 15, 2016

+1 ! will make syncing much easier

poelzi commented Jun 15, 2016

+1 ! will make syncing much easier

@radekm87

This comment has been minimized.

Show comment
Hide comment

+1

@rnewman

This comment has been minimized.

Show comment
Hide comment
@rnewman

rnewman May 23, 2017

I don't believe it's possible to correctly implement a bookmarks synchronization extension using the current WebExtensions bookmarks interface.

That rules out building a Chrome extension, and also Firefox 57+. You could build an unreliable one, of course, or take a different tack (e.g., owning the data somewhere outside the browser bookmarks store, which ruins the Awesomebar but gives you total control over syncing).

I'd also say that multi-writer syncing of structured data (like a folder hierarchy) is really hard, and will likely not be a fun project to get right.

rnewman commented May 23, 2017

I don't believe it's possible to correctly implement a bookmarks synchronization extension using the current WebExtensions bookmarks interface.

That rules out building a Chrome extension, and also Firefox 57+. You could build an unreliable one, of course, or take a different tack (e.g., owning the data somewhere outside the browser bookmarks store, which ruins the Awesomebar but gives you total control over syncing).

I'd also say that multi-writer syncing of structured data (like a folder hierarchy) is really hard, and will likely not be a fun project to get right.

@marcelklehr

This comment has been minimized.

Show comment
Hide comment
@marcelklehr

marcelklehr May 23, 2017

Collaborator

@rnewman Thanks for you input!

I don't believe it's possible to correctly implement a bookmarks synchronization extension using the current WebExtensions bookmarks interface.

Can you elaborate, why you believe that?

I'd also say that multi-writer syncing of structured data (like a folder hierarchy) is really hard, and will likely not be a fun project to get right.

Multi-writer syncing of structured data is hard, I agree. However, there are solutions, like e.g. OT and CRDT.

Collaborator

marcelklehr commented May 23, 2017

@rnewman Thanks for you input!

I don't believe it's possible to correctly implement a bookmarks synchronization extension using the current WebExtensions bookmarks interface.

Can you elaborate, why you believe that?

I'd also say that multi-writer syncing of structured data (like a folder hierarchy) is really hard, and will likely not be a fun project to get right.

Multi-writer syncing of structured data is hard, I agree. However, there are solutions, like e.g. OT and CRDT.

@rnewman

This comment has been minimized.

Show comment
Hide comment
@rnewman

rnewman May 23, 2017

I summarized many of my concerns in

https://bugzilla.mozilla.org/show_bug.cgi?id=1351897

Consumer-level APIs don't really expose the state changes that you'd need to do OT without a huge amount of work, roughly equivalent to maintaining your own data structures and trying to deduce changes from coarse-grained notifications. It's also not necessarily the case that your syncing system supports sending operations, or even deltas. OT works best when you have vaguely commutative operations, don't ever need to merge & dedupe two trees from scratch, and have mostly online operation. Bookmarks in a browser don't really fit.

rnewman commented May 23, 2017

I summarized many of my concerns in

https://bugzilla.mozilla.org/show_bug.cgi?id=1351897

Consumer-level APIs don't really expose the state changes that you'd need to do OT without a huge amount of work, roughly equivalent to maintaining your own data structures and trying to deduce changes from coarse-grained notifications. It's also not necessarily the case that your syncing system supports sending operations, or even deltas. OT works best when you have vaguely commutative operations, don't ever need to merge & dedupe two trees from scratch, and have mostly online operation. Bookmarks in a browser don't really fit.

@marcelklehr

This comment has been minimized.

Show comment
Hide comment
@marcelklehr

marcelklehr May 23, 2017

Collaborator

@rnewman Your list in that bug is very enlightening -- a lot of good points. I'm very glad you jumped into the discussion :)
I agree that the current bookmarks API could do better in providing details on what exactly changed, but as you said you can still perform a diff, even if that's expensive. In a world where the choice is no sync vs. expensive, possibly less frequent sync I tend to take the latter.
The lack of transactions is a point that concerns me more, frankly. However, if you sync less frequently in a fixed interval instead of on every change, collisions are much less likely to happen -- you might not preserve every user intention if you move a folder from a to x when it's actually just been moved to b a few microseconds before, but at least the sync sites are consistent. Also, how likely is it for multiple extensions that move bookmarks around the place to be installed at the same time?

Collaborator

marcelklehr commented May 23, 2017

@rnewman Your list in that bug is very enlightening -- a lot of good points. I'm very glad you jumped into the discussion :)
I agree that the current bookmarks API could do better in providing details on what exactly changed, but as you said you can still perform a diff, even if that's expensive. In a world where the choice is no sync vs. expensive, possibly less frequent sync I tend to take the latter.
The lack of transactions is a point that concerns me more, frankly. However, if you sync less frequently in a fixed interval instead of on every change, collisions are much less likely to happen -- you might not preserve every user intention if you move a folder from a to x when it's actually just been moved to b a few microseconds before, but at least the sync sites are consistent. Also, how likely is it for multiple extensions that move bookmarks around the place to be installed at the same time?

@rnewman

This comment has been minimized.

Show comment
Hide comment
@rnewman

rnewman May 24, 2017

I agree that the current bookmarks API could do better in providing details on what exactly changed, but as you said you can still perform a diff, even if that's expensive.

This is one reason why transactions are important: without isolation at some level of the stack (explicit transactions, implicitly isolated batch APIs, serialized synchronous notifications…) you can't reliably compute diffs, either incoming or outgoing.

However, if you sync less frequently in a fixed interval instead of on every change, collisions are much less likely to happen

Yes, if you can guarantee that no local changes will occur while you're applying incoming changes, or while uploading outgoing changes, then you can avoid both collisions and inconsistency due to lack of isolation — this is isolation via wall-clock serialization. However, it's not actually a guarantee — without true isolation and atomic changes there's always a chance of seeing a partial state in-flight — and at scale everything that can happen will happen.

you might not preserve every user intention if you move a folder from a to x when it's actually just been moved to b a few microseconds before, but at least the sync sites are consistent.

Consider what happens if you're trying to build a tree or perform an upload by repeatedly querying the local store. You might see a moved item twice or not at all, or miss a deletion, or whatever. Your results will be inconsistent.

This is really easy to get wrong in ways that aren't apparent when testing.

The only reliable way to do this kind of thing is by having storage itself do the bookkeeping.

Also, how likely is it for multiple extensions that move bookmarks around the place to be installed at the same time?

That would be wild speculation.

We've seen users who use both Xmarks and Firefox Sync, certainly. We've also seen potential issues interacting with add-ons such as Snooze Tabs, which generate synthetic bookmarks during browsing activity. There are add-ons that generate bookmarks as you browse.

But you can hit problems simply by having user activity overlap with a sync; add-ons just increase the rate of activity.

rnewman commented May 24, 2017

I agree that the current bookmarks API could do better in providing details on what exactly changed, but as you said you can still perform a diff, even if that's expensive.

This is one reason why transactions are important: without isolation at some level of the stack (explicit transactions, implicitly isolated batch APIs, serialized synchronous notifications…) you can't reliably compute diffs, either incoming or outgoing.

However, if you sync less frequently in a fixed interval instead of on every change, collisions are much less likely to happen

Yes, if you can guarantee that no local changes will occur while you're applying incoming changes, or while uploading outgoing changes, then you can avoid both collisions and inconsistency due to lack of isolation — this is isolation via wall-clock serialization. However, it's not actually a guarantee — without true isolation and atomic changes there's always a chance of seeing a partial state in-flight — and at scale everything that can happen will happen.

you might not preserve every user intention if you move a folder from a to x when it's actually just been moved to b a few microseconds before, but at least the sync sites are consistent.

Consider what happens if you're trying to build a tree or perform an upload by repeatedly querying the local store. You might see a moved item twice or not at all, or miss a deletion, or whatever. Your results will be inconsistent.

This is really easy to get wrong in ways that aren't apparent when testing.

The only reliable way to do this kind of thing is by having storage itself do the bookkeeping.

Also, how likely is it for multiple extensions that move bookmarks around the place to be installed at the same time?

That would be wild speculation.

We've seen users who use both Xmarks and Firefox Sync, certainly. We've also seen potential issues interacting with add-ons such as Snooze Tabs, which generate synthetic bookmarks during browsing activity. There are add-ons that generate bookmarks as you browse.

But you can hit problems simply by having user activity overlap with a sync; add-ons just increase the rate of activity.

@marcelklehr

This comment has been minimized.

Show comment
Hide comment
@marcelklehr

marcelklehr May 24, 2017

Collaborator

Also, how likely is it for multiple extensions that move bookmarks around the place to be installed at the same time?

That would be wild speculation.

Yep, that's true :)

you can't reliably compute diffs, either incoming or outgoing

What about browser.bookmarks.get(Sub)Tree, though? Afaict it spits out the whole tree as an object immune to modifications by the user or other extensions. In one call. This should be sufficient to do a safe diff, imo. Unless the implementation of that method isn't atomic, of course.

If I'm manipulating the live tree based on a diff I took against incoming data and something gets changed (other than the bookmark's id, if that is changed all bets are off), I can still apply my patches. The problems I get are "merely":
Overriding user changes of urls, titles or positions of items (perhaps even reviving deleted ones). No duplicates (unless two devices created the same bookmark concurrently). No deletions of newly inserted items.
So, I get collisions, but I have consistency with the server state for those items that I already know about.

In essence, my argument is: If you reduce the probability of collisions occurring by reducing the sync frequency, you can reduce the probability of overriding user changes that occur during the sync process. And, as you said, at scale everything that can happen will happen, however, you will never get an inconsistent state that the program cannot recover from. The worst case is, that the user looses an edit they made during sync, which in my opinion is better than having no sync.

Collaborator

marcelklehr commented May 24, 2017

Also, how likely is it for multiple extensions that move bookmarks around the place to be installed at the same time?

That would be wild speculation.

Yep, that's true :)

you can't reliably compute diffs, either incoming or outgoing

What about browser.bookmarks.get(Sub)Tree, though? Afaict it spits out the whole tree as an object immune to modifications by the user or other extensions. In one call. This should be sufficient to do a safe diff, imo. Unless the implementation of that method isn't atomic, of course.

If I'm manipulating the live tree based on a diff I took against incoming data and something gets changed (other than the bookmark's id, if that is changed all bets are off), I can still apply my patches. The problems I get are "merely":
Overriding user changes of urls, titles or positions of items (perhaps even reviving deleted ones). No duplicates (unless two devices created the same bookmark concurrently). No deletions of newly inserted items.
So, I get collisions, but I have consistency with the server state for those items that I already know about.

In essence, my argument is: If you reduce the probability of collisions occurring by reducing the sync frequency, you can reduce the probability of overriding user changes that occur during the sync process. And, as you said, at scale everything that can happen will happen, however, you will never get an inconsistent state that the program cannot recover from. The worst case is, that the user looses an edit they made during sync, which in my opinion is better than having no sync.

@maverick74

This comment has been minimized.

Show comment
Hide comment
@maverick74

maverick74 May 24, 2017

The worst case is, that the user looses an edit they made during sync, which in my opinion is better than having no sync.

Not being much of a technical guy, but i agree that having some sync is better than none. Also, has a xmarks user, i can tell that when one forces a sync xmarks freezes the browser (only allowing you to move the sync window) to prevent changes during the sync process

The worst case is, that the user looses an edit they made during sync, which in my opinion is better than having no sync.

Not being much of a technical guy, but i agree that having some sync is better than none. Also, has a xmarks user, i can tell that when one forces a sync xmarks freezes the browser (only allowing you to move the sync window) to prevent changes during the sync process

@rnewman

This comment has been minimized.

Show comment
Hide comment
@rnewman

rnewman May 25, 2017

What about browser.bookmarks.get(Sub)Tree, though? Afaict it spits out the whole tree as an object immune to modifications by the user or other extensions. In one call. This should be sufficient to do a safe diff, imo. Unless the implementation of that method isn't atomic, of course.

If it is atomic, you still need to capture the entire combined subtree of all changes, so for a move that might mean fetching and diffing the entire bookmarks tree each time.

Non-atomic local application isn't just limited to potentially losing local user changes. Content-based smushing, for example, relies on the local data not having changed since you last looked at it. Inserting records, too — what happens when you download five new records, and the user deletes the destination folder before you've inserted them all? You can't just abort and try again — the local insert isn't atomic.

You also need to detect local changes during the sync (both inbound and outbound phases), and ignore your own, otherwise you'll miss changes and your clients will diverge. This is really tricky to do with just observer notifications.

Like I said: this is hard to get right for the simple case, really hard to guarantee eventual consistency in the presence of races, and even harder to get right and still have acceptable performance for non-trivial amounts of data. Between two clients and a server you have a distributed transaction each time the user makes a change — the change has to commit in three places — and so without really noticing we're deep into distributed systems theory!

when one forces a sync xmarks freezes the browser (only allowing you to move the sync window) to prevent changes during the sync process

That's not a bad option. Well, it's bad for responsiveness, and we probably couldn't ship that behavior, but it certainly avoids most local races.

rnewman commented May 25, 2017

What about browser.bookmarks.get(Sub)Tree, though? Afaict it spits out the whole tree as an object immune to modifications by the user or other extensions. In one call. This should be sufficient to do a safe diff, imo. Unless the implementation of that method isn't atomic, of course.

If it is atomic, you still need to capture the entire combined subtree of all changes, so for a move that might mean fetching and diffing the entire bookmarks tree each time.

Non-atomic local application isn't just limited to potentially losing local user changes. Content-based smushing, for example, relies on the local data not having changed since you last looked at it. Inserting records, too — what happens when you download five new records, and the user deletes the destination folder before you've inserted them all? You can't just abort and try again — the local insert isn't atomic.

You also need to detect local changes during the sync (both inbound and outbound phases), and ignore your own, otherwise you'll miss changes and your clients will diverge. This is really tricky to do with just observer notifications.

Like I said: this is hard to get right for the simple case, really hard to guarantee eventual consistency in the presence of races, and even harder to get right and still have acceptable performance for non-trivial amounts of data. Between two clients and a server you have a distributed transaction each time the user makes a change — the change has to commit in three places — and so without really noticing we're deep into distributed systems theory!

when one forces a sync xmarks freezes the browser (only allowing you to move the sync window) to prevent changes during the sync process

That's not a bad option. Well, it's bad for responsiveness, and we probably couldn't ship that behavior, but it certainly avoids most local races.

@jkaberg

This comment has been minimized.

Show comment
Hide comment
@jkaberg

jkaberg May 29, 2017

I just want to chime in on the "sync on change" vs. "sync on cron" topic:
My usecase involves adding bookmarks every now and then, which can be anything from 2 bookmarks a day up to 1 a month (often the latter). So for me "sync on change" is a lot more appealing as it doesn't cost that much (vs syncing every 20 min) in the long term and I get the change instantaneously.

Just my 2 cents 😄

jkaberg commented May 29, 2017

I just want to chime in on the "sync on change" vs. "sync on cron" topic:
My usecase involves adding bookmarks every now and then, which can be anything from 2 bookmarks a day up to 1 a month (often the latter). So for me "sync on change" is a lot more appealing as it doesn't cost that much (vs syncing every 20 min) in the long term and I get the change instantaneously.

Just my 2 cents 😄

@marcelklehr

This comment has been minimized.

Show comment
Hide comment
@marcelklehr

marcelklehr Jul 8, 2017

Collaborator

(Sorry for my absence in this discussion lately...)

what happens when you download five new records, and the user deletes the destination folder before you've inserted them all?

Since the user deleted the folder anyway, what's the point in trying to insert the bookmarks? Since we're dealing with one user only, I tend to assume, they are aware of the newly inserted bookmarks at the other site, when they delete the folder.

You also need to detect local changes during the sync (both inbound and outbound phases), and ignore your own, otherwise you'll miss changes and your clients will diverge. This is really tricky to do with just observer notifications.

If I have an immutable snapshot of the bookmark tree, I don't need observer notifications, which are, as you said, hard to attribute to an actor, and I don't really need to watch out for changes while I'm manipulating the live tree, as those will only cause the edge cases I've covered above and will get picked up in the next diff.

Collaborator

marcelklehr commented Jul 8, 2017

(Sorry for my absence in this discussion lately...)

what happens when you download five new records, and the user deletes the destination folder before you've inserted them all?

Since the user deleted the folder anyway, what's the point in trying to insert the bookmarks? Since we're dealing with one user only, I tend to assume, they are aware of the newly inserted bookmarks at the other site, when they delete the folder.

You also need to detect local changes during the sync (both inbound and outbound phases), and ignore your own, otherwise you'll miss changes and your clients will diverge. This is really tricky to do with just observer notifications.

If I have an immutable snapshot of the bookmark tree, I don't need observer notifications, which are, as you said, hard to attribute to an actor, and I don't really need to watch out for changes while I'm manipulating the live tree, as those will only cause the edge cases I've covered above and will get picked up in the next diff.

@marcelklehr

This comment has been minimized.

Show comment
Hide comment
@marcelklehr

marcelklehr Jul 8, 2017

Collaborator

@jkaberg Yes, onchange is always better than on interval. I can imagine finding a compromise between the two, where a change can trigger a sync, if it doesn't happen too often, but syncs also happen regularly, to poll the latest data from the server.

Collaborator

marcelklehr commented Jul 8, 2017

@jkaberg Yes, onchange is always better than on interval. I can imagine finding a compromise between the two, where a change can trigger a sync, if it doesn't happen too often, but syncs also happen regularly, to poll the latest data from the server.

@marcelklehr

This comment has been minimized.

Show comment
Hide comment
@marcelklehr

marcelklehr Jul 8, 2017

Collaborator

It's kind of funny that we're debating webextensions in here and how to add folder support to nc/bookmarks over here: marcelklehr/floccus#5 :'D

Collaborator

marcelklehr commented Jul 8, 2017

It's kind of funny that we're debating webextensions in here and how to add folder support to nc/bookmarks over here: marcelklehr/floccus#5 :'D

@jonas2515

This comment has been minimized.

Show comment
Hide comment
@jonas2515

jonas2515 Jul 10, 2017

Is anybody working on this at the moment? If someone is, can we expect folders in the near future?

Is anybody working on this at the moment? If someone is, can we expect folders in the near future?

@1ucay

This comment has been minimized.

Show comment
Hide comment
@1ucay

1ucay Sep 26, 2017

Sorry for OT: In Windows 11 will be introduced new function. Microsoft from native filesystem removes folders, BUT there will be tags, which can be soo userfull for searching our data. Bookmarks are as files. We need some human organization in url mess :)

1ucay commented Sep 26, 2017

Sorry for OT: In Windows 11 will be introduced new function. Microsoft from native filesystem removes folders, BUT there will be tags, which can be soo userfull for searching our data. Bookmarks are as files. We need some human organization in url mess :)

@maverick74

This comment has been minimized.

Show comment
Hide comment
@maverick74

maverick74 Sep 27, 2017

By "as files" you mean a file for each bookmark?

By "as files" you mean a file for each bookmark?

@mikeziri

This comment has been minimized.

Show comment
Hide comment
@mikeziri

mikeziri Nov 1, 2017

jumping late to the discussion. after reading all the replies since 2013 I can't seem to understand why wouldn't, a bookmarks api like this, have folder tree structure on the db. I mean, tags are fine. I don't know who uses them and how but on a web browser like chrome, firefox and safari, everything is folder based. even a filesystem is directory (folder) based or everything would be a mess.

I think this should be implemented along side tags.
a hack around would be to tag bookmarks like Amazon S3 does and some one suggested in another issue with tag: /path/for/bookmark

mikeziri commented Nov 1, 2017

jumping late to the discussion. after reading all the replies since 2013 I can't seem to understand why wouldn't, a bookmarks api like this, have folder tree structure on the db. I mean, tags are fine. I don't know who uses them and how but on a web browser like chrome, firefox and safari, everything is folder based. even a filesystem is directory (folder) based or everything would be a mess.

I think this should be implemented along side tags.
a hack around would be to tag bookmarks like Amazon S3 does and some one suggested in another issue with tag: /path/for/bookmark

@v3nd3tta1337

This comment has been minimized.

Show comment
Hide comment
@v3nd3tta1337

v3nd3tta1337 Dec 20, 2017

IMO Nextcloud Bookmarks is completely useless to users without having folders.
A Exported bookmarks.html in NETSCAPE! compatible Bookmarks format has more function than this.
If I want to search (for tags), i want to search (for tags), if i want to organize, i want to organize.

v3nd3tta1337 commented Dec 20, 2017

IMO Nextcloud Bookmarks is completely useless to users without having folders.
A Exported bookmarks.html in NETSCAPE! compatible Bookmarks format has more function than this.
If I want to search (for tags), i want to search (for tags), if i want to organize, i want to organize.

@beng7

This comment has been minimized.

Show comment
Hide comment
@beng7

beng7 Jan 9, 2018

+1
desperately awaiting the support of folders, otherwise indeed it is almost useless (only a record of my bookmarks)
I use Floccus for FF + NextCloud Bookmarks on my android (AOSP) phone

beng7 commented Jan 9, 2018

+1
desperately awaiting the support of folders, otherwise indeed it is almost useless (only a record of my bookmarks)
I use Floccus for FF + NextCloud Bookmarks on my android (AOSP) phone

@TraceyC77

This comment has been minimized.

Show comment
Hide comment
@TraceyC77

TraceyC77 Jan 11, 2018

+1
Overall I really like the bookmarks UI and the ability to access them with a browser addon. My own use requires folders and subfolders to organize information.

+1
Overall I really like the bookmarks UI and the ability to access them with a browser addon. My own use requires folders and subfolders to organize information.

@edrush

This comment has been minimized.

Show comment
Hide comment

edrush commented Jan 26, 2018

+1

@serioustk

This comment has been minimized.

Show comment
Hide comment
@serioustk

serioustk Feb 15, 2018

Same here. Struggled about this and cannot understand why folders aren't supported. I really need this to organize my bookmarks.

Same here. Struggled about this and cannot understand why folders aren't supported. I really need this to organize my bookmarks.

@joeplus

This comment has been minimized.

Show comment
Hide comment

joeplus commented Feb 19, 2018

+1

@marcelklehr marcelklehr added this to Backlog in Main via automation Mar 2, 2018

@marcelklehr marcelklehr moved this from Backlog to Ready to work on in Main Mar 2, 2018

@maverick74 maverick74 referenced this issue in marcelklehr/floccus Mar 19, 2018

Closed

Sync Firefox's Entire Bookmark Tree #11

@maverick74

This comment has been minimized.

Show comment
Hide comment
@maverick74

maverick74 Apr 2, 2018

Since Xmarks.com is saying goodbye in about one month (May 1st), there will be a lot of people searching for alternatives!

Would be a good time to move this feature forward and present it as a viable alternative!!!

maverick74 commented Apr 2, 2018

Since Xmarks.com is saying goodbye in about one month (May 1st), there will be a lot of people searching for alternatives!

Would be a good time to move this feature forward and present it as a viable alternative!!!

@Lantizia

This comment has been minimized.

Show comment
Hide comment
@Lantizia

Lantizia Apr 10, 2018

I completely agree that folders are needed in the Bookmarks App.

At the moment the closest thing are the 'tags' that floccus creates in order to store the information that'd be needed to recreate folders natively in browser bookmarks.

This is fine but it does mean that since there is no proper folder support, you can't store an empty folder. Empty folders can be very useful for planning, for arranging your bookmarks bar properly, etc...

See... marcelklehr/floccus#83

I completely agree that folders are needed in the Bookmarks App.

At the moment the closest thing are the 'tags' that floccus creates in order to store the information that'd be needed to recreate folders natively in browser bookmarks.

This is fine but it does mean that since there is no proper folder support, you can't store an empty folder. Empty folders can be very useful for planning, for arranging your bookmarks bar properly, etc...

See... marcelklehr/floccus#83

@prog-amateur

This comment has been minimized.

Show comment
Hide comment
@prog-amateur

prog-amateur Apr 24, 2018

Sorry but I insist on @Lantizia's request : folders are indispensable to organize bookmarks.
I have imported an html file containing all my bookmarks (which have been organized by folders) and what I see is a list of all my bookmarks, unsorted, unorganized, with empty tags. I have maybe 500 bookmarks... so folders are necessary, I would say "vital" for all people who doesn't start bookmarks from scratch.

Please could you integrate this feature ?
Thank you.

prog-amateur commented Apr 24, 2018

Sorry but I insist on @Lantizia's request : folders are indispensable to organize bookmarks.
I have imported an html file containing all my bookmarks (which have been organized by folders) and what I see is a list of all my bookmarks, unsorted, unorganized, with empty tags. I have maybe 500 bookmarks... so folders are necessary, I would say "vital" for all people who doesn't start bookmarks from scratch.

Please could you integrate this feature ?
Thank you.

@Lantizia

This comment has been minimized.

Show comment
Hide comment
@Lantizia

Lantizia Apr 24, 2018

@prog-amateur Take a look at the floccus project, there is an open issue which is picking up traction where I've suggested they use something other than Nextcloud Bookmarks App (e.g. XBEL or JSON file stored on a WebDAV/Nextcloud/ownCloud server). This eliminates all the inflexibility that is currently an issue with this app.

To be honest I think I've fallen out of favour of using this app. If it wasn't for the fact it uses Nextcloud authentication... it may as well be a separate PHP development entirely, as it doesn't need WebDAV/files (what I see as the main point of Nextcloud) to work, it's entirely database driven and has a very strict ideology on how bookmarks should be done which just isn't reflected in the space we actually use bookmarks... browsers!

@prog-amateur Take a look at the floccus project, there is an open issue which is picking up traction where I've suggested they use something other than Nextcloud Bookmarks App (e.g. XBEL or JSON file stored on a WebDAV/Nextcloud/ownCloud server). This eliminates all the inflexibility that is currently an issue with this app.

To be honest I think I've fallen out of favour of using this app. If it wasn't for the fact it uses Nextcloud authentication... it may as well be a separate PHP development entirely, as it doesn't need WebDAV/files (what I see as the main point of Nextcloud) to work, it's entirely database driven and has a very strict ideology on how bookmarks should be done which just isn't reflected in the space we actually use bookmarks... browsers!

@IzzySoft

This comment has been minimized.

Show comment
Hide comment
@IzzySoft

IzzySoft Apr 24, 2018

Almost to the day, it's now 5 years since this request was raised. The initial post was "upvoted" 20 times, and many more users added their "+1" in comments. Strange this issue still neither has an assignee nor a milestone – which suggests the team feels it unimportant. This is quite frustrating. It makes me feel that, though many users feel this feature important, we can discuss it as much as we want but won't ever see it.

Thanks to @marcelklehr for participating and insights, though! But after 5 years "staying around": is there some hope we will eventually see this feature?

Almost to the day, it's now 5 years since this request was raised. The initial post was "upvoted" 20 times, and many more users added their "+1" in comments. Strange this issue still neither has an assignee nor a milestone – which suggests the team feels it unimportant. This is quite frustrating. It makes me feel that, though many users feel this feature important, we can discuss it as much as we want but won't ever see it.

Thanks to @marcelklehr for participating and insights, though! But after 5 years "staying around": is there some hope we will eventually see this feature?

@HLFH

This comment has been minimized.

Show comment
Hide comment
@HLFH

HLFH Apr 24, 2018

@IzzySoft ownCloud & Nextcloud were mostly supporting Firefox Sync for a long time. But it has been deprecated in 2015. The new Firefox Accounts-based Sync solution has been quite a disappointment in terms of easiness to deploy in production. Maybe it has little changed now. Nextcloud Bookmarks is not a core feature, also bookmarking is an old concept that has been replaced by read-it-later solutions such as Wallabag, that are a step forward in the curation journey. Jan-Christoph Borchardt @jancborchardt from Nextcloud had the wonderful idea to start a collaboration between Nextcloud & Wallabag. Wallabag supports tags. I would advocate for going to this direction in the next two years, depending of the good will of the Nextcloud & Wallabag contributors. Considering the choice of Nextcloud by the German government, as a French supporter of ownCloud & Nextcloud since the beginning of the fight for data privacy, I can only applause and stay greatly positive for the future of Nextcloud.

HLFH commented Apr 24, 2018

@IzzySoft ownCloud & Nextcloud were mostly supporting Firefox Sync for a long time. But it has been deprecated in 2015. The new Firefox Accounts-based Sync solution has been quite a disappointment in terms of easiness to deploy in production. Maybe it has little changed now. Nextcloud Bookmarks is not a core feature, also bookmarking is an old concept that has been replaced by read-it-later solutions such as Wallabag, that are a step forward in the curation journey. Jan-Christoph Borchardt @jancborchardt from Nextcloud had the wonderful idea to start a collaboration between Nextcloud & Wallabag. Wallabag supports tags. I would advocate for going to this direction in the next two years, depending of the good will of the Nextcloud & Wallabag contributors. Considering the choice of Nextcloud by the German government, as a French supporter of ownCloud & Nextcloud since the beginning of the fight for data privacy, I can only applause and stay greatly positive for the future of Nextcloud.

@IzzySoft

This comment has been minimized.

Show comment
Hide comment
@IzzySoft

IzzySoft Apr 24, 2018

@HLFH

Nextcloud Bookmarks is not a core feature, also bookmarking is an old concept that has been replaced by read-it-later solutions such as Wallabag …

Sorry, but I strongly disagree. Bookmarking has not been replaced by solutions like Wallabag – the two rather supplement each other. I use bookmarks for "permanent" storage, and "solutions such as Wallabag" for temporary items – as Pocket's original name suggests: "Read it Later". So for me those are two different concepts which both have their specific use cases. I use both, and I'd warmly greet Wallabag integration to Nextcloud. But to repeat what I wrote in my previous comment: That issue you've linked concerning Wallabag was opened more than 4 years ago (about half a year later than this one here) – and as this issue here, I see it's still open.

Considering the choice of Nextcloud by the German government, hopefully these two tasks get some more weight (funding?) as well – as both are important. And while bookmarking might be an "old concept", it is far from being "replaced" or outaged. Remember: Eating is an "old concept" as well 😉

@HLFH

Nextcloud Bookmarks is not a core feature, also bookmarking is an old concept that has been replaced by read-it-later solutions such as Wallabag …

Sorry, but I strongly disagree. Bookmarking has not been replaced by solutions like Wallabag – the two rather supplement each other. I use bookmarks for "permanent" storage, and "solutions such as Wallabag" for temporary items – as Pocket's original name suggests: "Read it Later". So for me those are two different concepts which both have their specific use cases. I use both, and I'd warmly greet Wallabag integration to Nextcloud. But to repeat what I wrote in my previous comment: That issue you've linked concerning Wallabag was opened more than 4 years ago (about half a year later than this one here) – and as this issue here, I see it's still open.

Considering the choice of Nextcloud by the German government, hopefully these two tasks get some more weight (funding?) as well – as both are important. And while bookmarking might be an "old concept", it is far from being "replaced" or outaged. Remember: Eating is an "old concept" as well 😉

@jancborchardt

This comment has been minimized.

Show comment
Hide comment
@jancborchardt

jancborchardt Jun 21, 2018

Member

Sorry but this issue discussion is much too long and broad to be tackled. There are "Tags" in Bookmarks, which cater to the use-case of "group related Bookmarks together" which was mentioned in the original issue.

For any follow-up enhancements, please open new issues. And keep in mind it’s only few people (or one – @marcelklehr) working on it, so any help is welcome!

Member

jancborchardt commented Jun 21, 2018

Sorry but this issue discussion is much too long and broad to be tackled. There are "Tags" in Bookmarks, which cater to the use-case of "group related Bookmarks together" which was mentioned in the original issue.

For any follow-up enhancements, please open new issues. And keep in mind it’s only few people (or one – @marcelklehr) working on it, so any help is welcome!

Main automation moved this from Ready to work on to Done Jun 21, 2018

@IzzySoft

This comment has been minimized.

Show comment
Hide comment
@IzzySoft

IzzySoft Jun 21, 2018

@jancborchardt it got that long because the issue was opened more than 5 years ago and not solved since. I don't see how the request to have bookmark folders is too broad. What makes it broad are just the different approaches suggested. So do you want a separate issue for each of those? Because the requested feature is pretty clear, at least to me. And its being missing is why most of us asking for it here cannot really use ownCloud/Nextcloud bookmarks.

I understand that there's "just a little processing power" (as you wrote, just one person working on it). But I'm very disappointed that, after 5 years waiting, the issue simply gets closed with that argument.

@jancborchardt it got that long because the issue was opened more than 5 years ago and not solved since. I don't see how the request to have bookmark folders is too broad. What makes it broad are just the different approaches suggested. So do you want a separate issue for each of those? Because the requested feature is pretty clear, at least to me. And its being missing is why most of us asking for it here cannot really use ownCloud/Nextcloud bookmarks.

I understand that there's "just a little processing power" (as you wrote, just one person working on it). But I'm very disappointed that, after 5 years waiting, the issue simply gets closed with that argument.

@jancborchardt

This comment has been minimized.

Show comment
Hide comment
@jancborchardt

jancborchardt Jun 21, 2018

Member

Again:

Sorry but this issue discussion is much too long and broad to be tackled. There are "Tags" in Bookmarks, which cater to the use-case of "group related Bookmarks together" which was mentioned in the original issue.

So it’s actually resolved. If there’s follow-ups → open separate issues.

Member

jancborchardt commented Jun 21, 2018

Again:

Sorry but this issue discussion is much too long and broad to be tackled. There are "Tags" in Bookmarks, which cater to the use-case of "group related Bookmarks together" which was mentioned in the original issue.

So it’s actually resolved. If there’s follow-ups → open separate issues.

@nextcloud nextcloud locked and limited conversation to collaborators Jun 21, 2018

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.