decaf-dev / obsidian-view-count

Add view count tracking to your Obsidian vault
MIT License
12 stars 0 forks source link

Feature requests #11

Open RikardSwed opened 2 months ago

RikardSwed commented 2 months ago

Just found this plugin. It has some interesting potential. Here are some ideas for features:

  1. Adding a button to the graph view which takes the view count into consideration to create thicker lines between notes. This would imitate how our mind works with its synapses

  2. The ability to bookmark different sections from view count top list. For example. Perhaps I would like to see my top 50-100 so that I can see what notes that I dont open that often which I perhaps might want to have a look at to avoid stepping too much into my own footsteps.

decaf-dev commented 2 months ago

These are interesting feature requests. I think they're possible but for both there isn't something in the public Obsidian API that is exposed that would allow me to adjust these things.

decaf-dev commented 2 months ago

For the bookmarking sections, could you explain further? What exactly would be bookmarked? If your section was notes 50-100 most viewed, would it be 50 bookmarked notes? or 1 note with links to those 50?

MarcTaksi commented 1 month ago

To complement this feature request:

(Background: I use Obsidian as a Second Brain, with dense linking between atomic notes, which gives a rich network of associations - but also an overwhelming complexity of links. Today, I handle this complexity by creating central nodes - MOCs; Maps Of Content - to index/group notes, which more and more feels like a backwards and clumsy method.)

In GPS services for outdoor activities (hiking, biking, etc), there are "popularity heatmap" functions, showing popular routes among all user of a service. Navigating my Obsidian vault with Graph View / Local graphs, it would be great to have a similar feature, highlighting often used "routes". Use cases for this could be: 1) finding my often used notes easily, 2) "learning" what notes are useful together, 3) or, the other way around (as mentioned above), avoid being stuck i habits / look outside often used notes.

To make linking more useful with deliberate actions, I imagine "weighted links", classifying links as level 1-2-3... links. For example, let's say that any new link, by default is a basic, low-level link (like the existing links today), and any link can be manually attributed with a higher level (or tagged for a certain project?). I imagine being able to active "layers" of links, like the layers in Photoshop or such graphics software.

RikardSwed commented 1 month ago

To put the idea about the "link levels" into other words. What you are asking for if I understand correctly means that all the links in the vault will be put into 3 different categories depending on how often they are used. Then in graph mode it should be possible to turn on or off these different levels of links. so If I choose to only see the links that I often use then only those are displayed and then the same with level 2 and 3. Hope that makes it more clear. This idea might be easier to implement rather than having the lines be thicker or thinner. Another option here should be to have the different levels be displayed with different colors.

Regarding my initial point on the bookmarks. I guess what I really was talking about was the ability to generate a list from any interval in what I guess would be the master use list. The master use list would be a list of all the notes in the vault which are sorted by the criteria of which notes are most often viewed.

So once again, if the list is in a note, then the bookmark would be of that note. If the list is in the right panel with certain settings chosen, then those settings should be able to be bookmarked, just like I can bookmark certain settings in both the search function as well as the graph view.

settings for the list should be the interval of notes I want to see in the list. for example 1-50, or 100-200. where these numbers refer to the different notes that are ranked based on its view count.

Even yet another implementation of this would be the ability to automatically sort links in a list which is in a note based on the usage ( view count). So for example if I have a MOC which has links to 10 notes. Perhaps 6 of those notes I rarely click on and therefore it would be nice to have them on the bottom of the list. Of course I can manully move this around, but it would be even greater if I could get this automatically where it is actually my behaviour that sets this and puts the links that I most often use at the top of this list.

decaf-dev commented 3 weeks ago

Thanks for the clarification @RikardSwed. And thanks for the suggestion @MarcTaksi.

I like the idea of a popularity heat map view. That is something that could be implemented. The buttons on it could be clickable as well. Have you checked out the trending notes update in 2.1.0?

I appreciate the suggestions for the graph view, but I am not sure how to modify it. There aren't any functions exposed by the public Obsidian API. I could try to insert nodes into the DOM, but I'm not sure that would work. I could try to monkey patch the code, but I don't have experience doing that and it seems brittle.

decaf-dev commented 3 weeks ago

@RikardSwed I have read the word "bookmark" several times, but I am confused about what is meant. It seems like you may be meaning to say the word "saved"? A bookmark in Obsidian is a distinct thing. It is a view that can be accessed by clicking the button next to the Files button in the left sidebar. That's not what you're talking about, right? It sounds like you're talking about saving settings, so when you close a view and open it again, those settings are still there?

I think adding an input to the view count view would be easy enough. That way you could specify files number 50-100 like you are saying.

RikardSwed commented 3 weeks ago

Regarding the graph view. Might there be a workaround perhaps? If the app could add and update tags depending on the usage levels. then you might be able to use those tags as parts of searches or parameters to get the results in the graph view that we are talking about. This might also work to get that colouring I was talking about. Perhaps tags should only be updated when you want to by the click of a button and perhaps only the notes that has a certain property should even be part of this in the first place.

Regarding my use of the word bookmarks. Well I think I know how bookmarks are used in the program. The reason why I think I might sound a bit vague is because I dont know how you want to implement the feature I am trying to describe. I can see it being done in many ways. For example this list of notes might be imported into a note. or the list might be created in the right pane? Regardless it would be cool if various views is easily accessible so that I can quickly switch between seeing a list of notes that I often use, or a list of notes that I seldom use, or even a list of notes that randomly use, and so on. Hope it makes it clearer and not just more confusing.

Sorry I have not tried out the new versiona and feature yet. will do

decaf-dev commented 2 weeks ago

@RikardSwed The idea of adding tags to notes to represent different levels of view counts is interesting and definitely doable. Would that be something that you want? I don't see it as a feature that most people would use though.

As for the bookmarks that you're describing, I will add some filters to the view to accommodate seeing the frequency of notes accessed.

decaf-dev commented 2 weeks ago

On another note, you're able to query by view count or trending weight of files using DataviewJS. Read the README for examples on how to do it.

RikardSwed commented 3 days ago

Sorry for the lack of response. I have been a bit busy. I still need to look into all these features you have actually added. My general comment for now is that personally I view all kinds of ways that can display my network of notes in new, unique and inspiring ways as good. The goal is of course to make you create even more connections and to inspire you to write. I think all of these features that we are discussing holds potential regarding these aspects.