Giter Club home page Giter Club logo

Comments (65)

oleedd avatar oleedd commented on September 26, 2024

As a variant: to check if the first folder is single - if yes - to hide <span> with folder name and remove padding.
Code (works in the extension console):

if (document.querySelectorAll('.sub').length == 1) {
   document.querySelector('.sub').style['padding-left'] = 0;
   document.querySelector('span').style.display = "none";
}

Just need an option like "Hide single folders" in the settings.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I think this task is very easy. Is it?

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

You can add this code as a solution. It really works.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

I'm sure it does. The thing is it is a hack, it lets the code work and then last minute changes everything around and pretty much undoes work that was done earlier, wasting CPU cycles.

I don't like that. I'll write a solution myself later. Thanks for the suggestion though.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Yes. I know. It is really so. It is a very quick solution without changing extension code but it is really not rational.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Found a rational solution. If it is the top folder then its parentId = "0". So:

if (child.parentId != 0) {
      var folder = document.createElement('span');
      folder.innerText = child.title;
      d.appendChild(folder);
}

I checked and it works. It is just checking before your code. But also need to remove padding.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I think that there should be an option like "not display Bookmark panel folder" or even to not display it without any options because it is useless to display it because all created folders and bookmarks are inside that big system folder and even not possible to rename it. The above code doesn't display that folder.
The meaning of my idea from chrome web store was in this.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

If it is the top folder then its parentId = "0"

Is it? Always? Is that documented somewhere?

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I found this in practice. It is always so for every click on MBT icon on my side. I see that if there is another folder (in "Bookmark panel" system folder) - its id = "1". The second folder will have id "2". If it is so for you too then it is 100 % so for all users because chrome api is the same (and even all old methods still work for compatibility).

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Meh, IDs are implementation details, not part of the API. At least that's how I would do it. I'll see if I can dig up more on this later.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

In this case id is a part of bookmark api.
image
So you can use this:

if (child.parentId != 0) {
      var folder = document.createElement('span');
      folder.innerText = child.title;
      d.appendChild(folder);
}

It really works for sure.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Also I see that the index of the top system folder is "0" too (child.index == "0") because that system folder is always the first.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

parentId is always "0" for the top level folder.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Every bookmark and folder have its unique id which is used in the chrome api to get it.
image
The top level folder always has id = "1" because it was created not by users but by developers and it is the first folder. It can't be changed.
So you can also use this id to hide the top level folder.
All child elements have parentId = id of its parent folder. But the top level folder doesn't have parents and that's why its parenId = "0".
You can even use them both - parenId == "0" && id == "1".

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

If the top level folder will have a parentId not "0" then it should have a parent. But it is impossible and the api system will be broken.
So I suggest you to use "parentId = 0" to find the top level folder.
I think it is better to remove that folder than to check the id of each element.
What do you think? You can make the same action as for empty folders.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

@rpkamp
I spent time to find a solution. I wait a reply.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

You're getting a bit too pushy for my taste. I will look at what you write if and when I have time to work on it. There are other things in my life than just this chrome extension.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Don't get me wrong, I do appreciate the help. But pushing me to do stuff is not going to work.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I have found this solution in Februuary, almost 4 months ago.
Still no time? You work 24 hours a day? I don't believe.
You very rarely work on it. It is easy and generally not hard as deep learning, recognition etc.
There is no need to even work. Seems that just need to add child.parentId == "0" here:

if (hideEmptyFolders && child.children && !child.children.length || child.parentId == "0") {
	addClass(d, 'hidden');
}

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Actually I don't think your proposed solution will work. The original issue was:

Add an option to hide the superfluous "Bookmark bar" root item, so that only user bookmark items contained within it are shown. (Having "Bookmark bar" there all the time is ugly; plus it's not a "bar" but a menu).

So basically there are two root folders in Chrome (not one) by default, "Bookmarks bar" and "Other bookmarks". This issue about hiding the "Bookmarks bar" folder, but showing it's contents when there are no bookmarks in the "Other bookmarks" folder.

So then instead of

- Bookmarks bar
  - Bookmark 1
  - Bookmark 2
- Other bookmarks # empty, so not rendered

It would become:

- Bookmarks 1
- Bookmarks 2

Correct me if I'm wrong, but as far as I can see your solution won't solve that. I'm not really sure what your solution solves to be honest.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

The best way to go about this is decouple the fetching of the bookmarks structure from the rendering (which should be done anyway, the way it's mixed now is rather nasty) and the pre-process the tree before passing it to a function that renders it all. That would also make solving hiding the empty folders much easier.

However, that would involve quite a lot of work, and is more than adding some small check somewhere.

So that's why I've been holding it off.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

The best way to go about this is decouple the fetching of the bookmarks structure from the rendering (which should be done anyway, the way it's mixed now is rather nasty) and the pre-process the tree before passing it to a function that renders it all. That would also make solving hiding the empty folders much easier.

If you want to improve the actual algorithm - it is very good.

So basically there are two root folders in Chrome (not one) by default,

Also need to support Opera. Because its users also install Chrome extensions. Opera has 4 system folders. But it doesn't change anything.

It would become:

- Bookmarks 1
- Bookmarks 2

But without "-" (indents).
It is interesting that (in my case) the extension doesn't show the "Other bookmarks" system folder and shows its bookmarks without indents (as requested in this issue). But it shows the "Bookmark bar" system folder which is the first and the most important and its bookmarks with indents. So you can see why it works only for one system folder.

but as far as I can see your solution won't solve that. I'm not really sure what your solution solves to be honest.

It can't be not working. All items in the bookmark array are either folders or bookmarks. And all of them have parentId. And only the system folders have parentId = "0". Another question is how to use it in the code to make it working. That's why I have said "Seems that just need to add it here". But I will check that in practice.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

You call the buildTree function separately for two system folders. It is bad (better to use one call) and no access to the "Other bookmarks" folder when the "Bookmark bar" folder is building. So to check it - need to use one more argument with the bookmark array and the code will be generally not optimal.
It is better just to make the option - "not display system folders". In this case all items from all system folders will be united into one list. People, which use several system folders, will not enable this option. It is a rightful variant. What do you think?

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

I was actually thinking of displaying the entire bookmarks tree in settings and let people pick which one they want to use for the root in MBT.

Experience shows that any attempt of thinking for the user will lead to the user coming back with additional requirements. By having them select their root folder they get full control, and it's easier to explain than any of the options discussed so far.

Then again, this is quite low on my priority list, as I personally wouldn't use it.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I don't think that it is correct. Because the extension should display all bookmarks, anyway. And ignoring bookmarks from a system folder which is not selected - it is incorrect.
But the option - "not display system folders" (1 in Chrome / 3 in Opera) will solve this issue. People which use only one system folder (most of users) will enable this option. Do you agree with this?

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

@rpkamp
What do you think about just the "not display system folders" option? It is very easy to implement.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

I'll think about it. Right now my focus is more on some PHP projects I'm working on as well.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Also, if it's so easy to implement as you say, why not send a Pull Request? 😃

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I haven't sent any Pull Requests. And I care only about the algorithm part but making options in the settings and saving them - it is easy for you.
There are two variants to implement the "not display system folders" option (just added a check with if/else):

if (!hideSystemFolders || hideSystemFolders && child.parentId != 0) {
      var folder = document.createElement('span');
      folder.innerText = child.title;
      d.appendChild(folder);
}

or

if (hideSystemFolders && child.parentId == 0) {}
else {
      var folder = document.createElement('span');
      folder.innerText = child.title;
      d.appendChild(folder);
}

I have checked this and it works without any problems.
And need to make the option in the settings and save it. Also need to remove padding - I don't see where and how you add it (probably by css).

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

What can you say about this?

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

That will hide the entire folder, which is not what this issue is about. It's about showing the contents of the folder, without showing the folder itself. As stated a few posts above.

It was requested by 1 person in the Chrome Web Store, so I'm not in a hurry to implement it. When I feel like it, I might implement it one day.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

It was requested by 1 person in the Chrome Web Store

Not one. See №69.
How many the same requests do you need?

so I'm not in a hurry to implement it

Requested by me more than a year ago.
To hurry - in several days. Not to hurry - in a month. A year is total oblivion.

That will hide the entire folder, which is not what this issue is about.

No. This code works correctly. I have checked it practically. It displays only the content as requested. But also need to remove padding.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

I just implemented what you said and that just entirely hides the "Bookmarks menu" folder, plus its contents. Surely that is not what you want?

In any case, I think solving #69 would also solve this problem since you could then select "Other bookmarks" as the root folder and have the "Bookmarks menu" hidden. Is that correct?

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Is that correct?

Need to support Opera which has 4 system folders (it uses the same Chrome API-s).
But anyway, it shouldn't ignore bookmarks from other system folders if they still exist.

Why does it not work for you? Both variants work for me. I made hideSystemFolders as true but it is a setting which should be created and got from the settings.
image

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

The code works, but it hides system folders, which is not what is ticket is for.

Will #69 solve your issue?

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

The code works, but it hides system folders, which is not what is ticket is for.

Hm. Maybe you mean that when the system folder is compressed then the content is hidden too? Just make warning like "make sure that your system folder is not compressed when you enable this option".

Will #69 solve your issue?

I don't see the difference in #69. As said in "e.g." (the reason of the issue) - it is the same.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Since #69 will solve your issue as well and is much better defined I will solve #69 instead and close this issue.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

But what is the difference?

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

#69 shows the user an explicit choice of which folder must be the root folder, which is easy to understand.

This ticket relies on black voodoo an magic to implicitly hide some folders based on your personal preference. So it's less clear and less generic as well.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

How will a user hide a folder?
Also need to remove padding after a folder.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I have solved the problem. If to change these two strings with "if" + the above code - it will always display the content of the system folder.

if (visible || hideSystemFolders) {
     wrapper.style.height = 'auto';
}
if (isOpen || hideSystemFolders && child.parentId == 0) {
     children = buildTree(child, hideEmptyFolders, false, isOpen);
     d.appendChild(children);
}

I have checked this and it works without any problems.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

This ticket is closed. Let it go.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

But I spent time to completely solve this. Now it really works. I can post this in #69 if need.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

#69 solves a different problem.

This ticket was about something else, and you are pushing your personal preference on it.
If it's something only you need it's not very useful.

Again, if you disagree, feel free to fork and make the changes in your own fork. This package has an MIT licence, so nothing is stopping you.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

No idea how to make "fork" and I don't need that.

#69 solves a different problem.

Really? Read e.g. - "i have one folder containing all my "bookmark-bar-bookmarks" which i don't wanna see in the menu".
The man have opened that issue just to hide the "Bookmark bar" folder and only display its content. He doesn't have any other folders and doesn't need something more. He just first said about that in general terms.

This ticket was about something else, and you are pushing your personal preference on it.

What exactly do you mean? If there is something inappropriate in the result of my code - tell me.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

So how do we explain to an average user (mind you, this extension has 10,000+ users, not all of whom will have extensive technical knowledge):

  1. What a system folder even is. You know, I know, but the average user won't know what we mean.

  2. When they drag and drop a folder/bookmark, where it ends up. If we hide the top level system folders and only show their contents, then at one point the contents of one system folder ends and the contents of the next system folder begins. When I drag a bookmark/folder exactly on this spot between two system folders, does it end up at the last place of the first system folder, or in the first spot of the second system folder?

  3. In what order the system folders will be sorted. Some might prefer the contents of "Other bookmarks" first, others might prefer the contents of "Bookmarks bar" first.

Sure, we could add options for 2 and 3 as well, but the settings page really isn't that big and there isn't a lot of room to explain things in words that are easy to understand for everyone.

I think this will actually lead to more confusion than it solves problems. A problem that out of 10,000 users so far 2 users seem to have, so about 0.02% of all users.

So the questions then becomes: is it worth the confusion of about 50% of users to fix something only 0
.02% of the users actually want/need. In which case my answer is no.

#69 on the other hand is a very clear option, it allows you to point this extension at one folder (can be a system folder, or somewhere deeper in the tree), and when you do, it will only show you the contents of that folder. Plain and simple. It doesn't suffer from problems 1, 2 and 3 above and is generally just easy to explain.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

it allows you to point this extension at one folder (can be a system folder, or somewhere deeper in the tree), and when you do, it will only show you the contents of that folder.

Oh no. Today I have seen such an extension. It just ignores other non-root folders. And users will not even know if another bookmarks exist. Especially if some users incorrectly chose some folder as root to check what will happen and didn't know what this option is - after that - the extension deletes bookmarks and 1 star. Others will not install it after such horrible comments. I don't think it is good because such extensions should display all bookmarks without ignoring. Also you will need to completely rebuild the algorithm.

About the problem №2. Why do you ask if it works very well now? See the end of "Bookmark bar" and the beginning of "Other bookmarks". We don't hide the system folders on the programming level - we hide only the <span> element. So it will work as it works now.

In what order the system folders will be sorted. Some might prefer the contents of "Other bookmarks" first, others might prefer the contents of "Bookmarks bar" first.

I don't think it is important because "Other bookmarks" are not displayed under the address bar, that is why they are much less popular and no reason to use them first now. If at least someone wants that - you would have an issue or web store feedback.
Also think about sociology: if somebody made an issue/feedback - many others (not 2 as you think) want too (some of them will see an issue and will not repeat the same, others will simply accept that it is not available), if nobody - users don't need that.
Besides, in the context of this issue, only users, which use only one system folder, will use this option. No reason otherwise.

the settings page really isn't that big

Make it bigger. There is much scrolling but it still takes only some part of the window height. But I used to such look.

So how do we explain to an average user ... What a system folder even is.

Don't make problems where no problems. No difficulty to explain something.
"Not display root folders" (in #69, you would use "set as root" so the same here) or "only display the content of root folders".
(Root folders are the main folders in the bookmark manager of your browser. Recommended to enable this option if you use only one root folder.)
Who can't understand this?

Note: only now I have understood your idea of #69. My idea doesn't "delete" (ignore) bookmarks for not advanced users.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I have solved the problem of explanation. You can name this option like:
"hide the (first) folder at the beginning of the bookmark tree"
or
"hide the "Bookmark bar" folder".
Everyone will understand this.
Suitable?

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Sure, that might work for Chrome. But what about other browsers based on Chromium, like Vivaldi?

I mostly don't like that it needs a magic number - sure "bookmarks folder" has ID 0 now, but what if the chrome team decides they want to do it differently? The 0 does not seem to be documented anywhere, so they are free to change it if they want to, and then this extension appears broken.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

We need to make sure that whatever we implement is stable and works for everyone. If it doesn't work it's hard to remove the feature because some people may use it and not want it removed.

It's better not to build a feature at all, than to build it poorly.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

No, you are not right. As I wrote above - if the top level folders will have parentId as not "0" then they should have a parent with such id (it is documented). But it is impossible and the api system will be broken. So it is always "0".
image
Teams of other browsers don't change anything in the extensions APIs to make Chrome web store extensions supported. They win from that.
Also, the Google team doesn't change or remove old APIs to make all extensions working.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

But what is the ID of the "Bookmarks menu" folder?
Vivaldi doesn't even have one. Instead it has "Bookmarks" (which seems to have ID "1") and "Deleted bookmarks", and you can mark on of your existing folders in "Bookmarks" as the "Bookmarks bar" (which is something Chome should have done too, that model is a lot easier).

So in Chrome, at least on my machine, "Bookmarks bar" has ID 1, but in Vivalidi the "Bookmarks" folder has ID 1. So if I add this option ("Hide bookmarks bar"), and someone enabled it in Vivaldi, it hides their bookmarks, so they only see "Deleted bookmarks". Not very useful.

I think it might be better to show a list of all system folders and ask the user what they want to do with them:

On Chrome it could look like this:

Bookmarks menu  [ Show ]
Other bookmarks [ Show only contents ]

(Where [ Show ] and [ Show only contents ] are dropdowns with options Show, Show only contents and Hide.

(This is what Minimal Bookmarks Tree currently does).

On Vivaldi people might configure it like this:

Bookmarks         [ Show only contents ]
Deleted bookmarks [ Hide ]

Which system folders are available can be obtained from the browser, these can then be shown in the extension. We can then be sure of which folder has which ID, because we actually asked the browser.

Just wondering, why do you want to hide the "Bookmarks bar" folder?

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Don't confuse with id. id is unique for each item. But I talk about parentId.
id is need to easily get an item because it is unique. Also, tabs, windows and many other things have id. As I see, if to delete a bookmark - its id will not be used again. But we can't use id - need to use parentId.

So if I add this option ("Hide bookmarks bar"), and someone enabled it in Vivaldi, it hides their bookmarks, so they only see "Deleted bookmarks".

The last edition of my solution can't hide bookmarks anymore but hides only the <span> element with the folder icon.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Do you still see flaws?

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Yes, and I have suggested an alternative to which you have not replied.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Do you want to use dropdowns near folder names?
What flaws? It doesn't hide bookmarks anymore.
About "deleted bookmarks" - it may be very useful to automatically remove such bookmarks for Opera and Vivaldy because it is very unpleasant to delete twice. In Opera, not possible to disable the "deleted bookmarks" folder.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Yes! Dropdowns in settings where you can set for each system folder if you want to see it or not. I cannot detect them as the name changes for each language, so I would need to know the folder name for each language. Better to let the user decide.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

Quite good. Without ignoring the content of not selected folders?

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Well you could pick:

  • Show folder AND it's content
  • Show only folder contents, but not the folder itself
  • Completely hide the folder

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

And so for backward compatibility the default for folder 1 (the Bookmarks bar in chrome) is to show the folder and contents and only the folder contents for folder 2 (the Other bookmarks in chrome).
Which is exactly what Minimal Bookmarks Tree does now, so people won't notice a change until they change the settings.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

I think "Completely hide the folder" is useless at least for Chrome. But it may be useful for "Deleted bookmarks" in Opera/Vivaldi.
It is nice but, if overlook "Deleted bookmarks", it is not need for users because if they use only one system folder - they don't need displaying system folders, if they use several system folders - they don't need to hide anything.
So in reality, the necessary thing is to hide all system folders or nothing. And my solution already does this shortly and simply without any problems, using parentId - not id.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Yes, but your solution forces users to use what you think is best, my solution let's them configure it how they like. If they want to completely hide a folder, sure. I don't mind.

from chrome-minimal-bookmarks-tree.

oleedd avatar oleedd commented on September 26, 2024

From one side - more settings is better, but from another side - useless settings are not worth of it. Because now you have two requests when all bookmarks are in one system folder and need to hide it. No requests with another cases.

your solution forces users to use what you think is best

There is no sense to hide anything if to use several system folders. Think logically.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

This is no longer a discussion. My option is more clear and gives users more options. That's how it will be.

from chrome-minimal-bookmarks-tree.

rpkamp avatar rpkamp commented on September 26, 2024

Issue superseded by #125

from chrome-minimal-bookmarks-tree.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.