Automatically generating a home page with entire vault content

I’m new to Obsidian and have searched the forums/plugins for solutions but can’t seem to find one.

The hierarchy in my vault so far looks like this:

  • 1-research
    • project-A
    • project-B
  • 2-conferences
    • conference-A
    • conference-B
  • 3-grants
    • grant-A
    • grant-B
  • 4-meta
    • learning
    • coding

So basically, all of my .md files are in a sub-sub-folder or so. I like that way of organizing things. However, navigating this gets a bit tiresome ; I prefer not having to remember the title of my notes (e.g. for recurrent meetings it just contains the date, which I won’t remember easily) so navigating through the quick switcher isn’t the most practical solution for me, but constantly expanding/collapsing folders and subfolders isn’t ideal either.

What I’m looking for is to create a home page that would display at a glance all the content of my vault in a manner that could look like this, with clickable links to either subfolders or individual markdown files:

project-A.    project-B.    project-C.    ...

conference-A.    conference-B.    conference-C.    ...


Is there a plugin that could help me achieve something like this automatically without manually updating each time my “home” markdown file?

Right now a temporary (manual) solution for what I’m trying to accomplish involves inserting in my “home” file:

  • H1 headers for folders, H2 headers for sub-folders, and so-on
  • markdown list of files for every folder that contains markdown files (i.e. the “last” hierarchical level)
  • using a CSS snippet to format the lists in 3-column format

…which leads to something like this:

This is pretty much the type of layout I’d like as my home page.

So besides maintaining it manually every time I create/move/delete files, is there some plugin that could help doing that automatically?

1 Like

Hi, I use MOCs to organize my notes. For each subject of interest, I have a MOC. The individual MOCs contain internal links to my notes - grouped by headings where necessary. The Notes itself reside in one folder (Repository). This way I need a max. of two to three mouse clicks to get to any note and I very, very seldom have to look in my Repository for a specific note. It’s not an automated workflow to establish this but if it is established it really helps to get organized.

1 Like

You can install dataview plugin (for automatically generate the list/table of files) and try this query (example for a list of “1-research”):

## 1-research

FROM "1-research"
FLATTEN regexreplace(file.folder, "1-research/", "") AS Folder

This table is automatically updated.
For other topics/main-folders, replace all “1-research” in query by the new one.

1 Like

For something like this, I’d suggest you use the Cross-Reference Navigation plugin. It will allow you to have a birds-eye view of your vault by using a simple embedded tag system (e.g. #Research/Project-A, #Research?Project-B, #Conferences/Project-A…) Below is an example of how it will look like. You can use a script or an editor like Atom or Sublime to add tags to multiple notes the Tag Wrangler plugin to speed the process of adding tags to your notes.


this is interesting ; it’s very close to what I want – thanks for the share !

i like the idea that the hierarchy of individual notes can be detached from their “physical” location (i.e. folder structure)

very interesting, thanks I’ll look that plugin up!

thanks for suggesting dataview, I had seen mentions of the plugin of the forum but wasn’t sure if it could accomplish what I was trying to do – tbh I was a bit submerged by the qty of plugins and dataview’s learning curve (which adds up to the learning curve of obsidian, I’m still pretty new to this)

and thank you also for suggesting an example code! I’ll start with that, I suppose it’ll be a lot more useful if I don’t have to update the MOC manually every time I’m changing something in my vault

If anyone is interested, I’ve rewritten as per @mnvwvnm’s suggestion my MOC using dataview. To get the exact layout I suggested in my original post, I’m using the following code:

cssclass: ul-six-columns %% see %%

## 1-research

### project-A

LIST WITHOUT ID FROM "1-research/project-A" SORT asc

(add one extra ` character where needed – don’t know how to insert three without Discourse processing it)

The only downside is that I have to list every folder/subfolder, but I prefer it this way as I can add useful info (e.g. web links, etc.) just below the project subtitle. But most importantly, I don’t have to modify it for each file.

1 Like

If you want a list with the “”, you don’t need to write “WITHOUT ID”.
By default the list (or table) gives you the “”.

FROM "1-research/project-A"
SORT asc

(tip: if you want write “```” inside a block, just open and close that block with more one “`”, i.e., “````”)

1 Like

Or just type a space after the third dash…

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.