What I’m trying to do
Currently I have a bookshelf on obsidian to keep track of my reading and gather some views like books read by year and so on. I am using dataviewjs at the moment for that.
With the release of bases I was thinking in migrating these views there because it seems that performance-wise, will be much better than to render everything with dataviewjs that I feel it is heavy the way I am doing now → a snippet that gathers all books read in 2024 onward, separates them by year and generated cards in the ascending order of the finished date. Given that over time the list will grow and that is 1 snippet for everything I feel that the performance will suffer.
Enough with context. The issue: one of my use cases for the list mentioned above are books that I re-read. Which now is handled on the snippet mentioned above.
The current metadata that I use for this is FinishedDate: [date 1, date 2, etc], which then will see the year of the finished date, filter it into the correct Year header of the grouping note and order it ascendingly (maybe not a word).
I would like to replicate this behavior in bases.
Things I have tried
I have actually accomplished this with the following yaml:
filters:
and:
- file.folder != "_templates"
- '!file.tags.contains("manga")'
views:
- type: cards
name: "2025"
filters:
or:
- Year == 2025
- list(note["FinishedDate"]).length > 1
order:
- file.name
- FinishedDate
- Pages
sort:
- property: FinishedDate
direction: ASC
image: note.Cover
cardSize: 180
imageFit: contain
imageAspectRatio: 1.5
The thing is that the end result is the dates appear overlapped. It is not really a huge issue, if I want it to appear more visually pleasing I can just remove that property, I would loose that info on sight when opening the bases view.
Just wondering if someone could have a work around for this, or if it is a limitation of bases for now given that it was more or less recently released
Thanks in advance
