Backlink Cache

by mnaoumov
5
4
3
2
1
Score: 74/100

Description

Category: File Management

The Backlink Cache plugin is a game-changer for Obsidian users with large vaults, as it significantly speeds up the performance of the Backlinks Pane and plugins that rely on backlinks. By maintaining a cache of backlinks, this plugin reduces the time it takes to retrieve link information, making navigation and discovery much faster. Whether you're a power user or a developer creating plugins, Backlink Cache is an excellent addition to your Obsidian setup, allowing you to work more efficiently and effectively with your notes.

Reviews

No reviews yet.

Stats

54
stars
33,000
downloads
1
forks
1,068
days
10
days
10
days
2
total PRs
0
open PRs
1
closed PRs
1
merged PRs
14
total issues
0
open issues
14
closed issues
266
commits

Latest Version

10 days ago

Changelog

  • chore(cspell): merge accepting 'lintable'
  • docs(demo-vault): merge documenting the successor suggestion
  • feat: merge suggesting Advanced Metadata Cache as the successor
  • test(screenshots): merge setting the desktop capture theme with applyObsidianTheme
  • refactor: merge watching core-plugin toggles through CorePluginToggleComponent
  • chore(test): merge dropping the perf eval-cap overrides obsidian-dev-utils now provides
  • test(screenshots): merge the reconciled desktop capture staging
  • test(screenshots): make the two Measurements store frames reproducible
  • chore(deps): merge floating obsidian-integration-testing to ^17.0.1
  • chore(deps): merge floating obsidian-test-mocks to ^7.0.0
  • fix(backlinks): merge reading the held metadata cache so a refresh never saves the editor
  • fix(canvas): merge loading the canvas index Obsidian leaves unloaded
  • fix(backlinks): merge patching the pane when it opens after load
  • fix(backlinks): merge installing the pane patch once per session
  • fix(test): merge the headless demo-vault toolkit install
  • fix(deps): restore the lockfile's missing resolved and integrity fields
  • refactor(canvas): replace the core-plugin prototype patches with a change subscription
  • refactor(backlinks): drop the shared-prototype onUserEnable patch
  • build(markdownlint): forbid hard-wrapped markdown paragraphs
  • test: move the three desktop index waits to Node, so a stall names itself
  • fix(test): restore the performance project's vault wiring and transport budget
  • fix(deps): float devalue to 5.9.4, clearing GHSA-9rgm-9g3h-6x36
  • test: record the capture suites' big-vault budgets as deliberately under the cap
  • chore(deps): drop the dead markdown-it override
  • chore(deps): drop the dead js-yaml override
  • style(comments): stop capitalizing the middle of a wrapped comment
  • docs: replace the private rule-id citations with what they assert
  • docs: name the library and the sibling plugins so a reader can resolve them
  • docs: replace the private tracker references with what they pointed at
  • chore(deps): move to obsidian-dev-utils 103
  • chore: adopt the npm run gate branch gate
  • docs: say where the debug command is run
  • docs: name the unversioned demo-vault asset and the folder it unzips into
  • chore: make the LICENSE copyright line lintable and guard it against the year roll-over
  • test(test-mocks): drop the hand-rolled app.plugins stub, and sweep the dependencies
  • fix(build): wire build:compile to buildCompile and drop the duplicate leaf script

Full Changelog: https://github.com/mnaoumov/obsidian-backlink-cache/compare/2.16.5...2.17.0

README file from

Github

Buy Me a Coffee GitHub release GitHub downloads Coverage: 100%

[!WARNING] Backlink Cache is deprecated and will get no further updates. Install Advanced Metadata Cache instead: it carries the same backlink cache and more. Once it is enabled, disable and uninstall Backlink Cache. The plugin still shows this suggestion when it loads, and in its settings.

Asking Obsidian which notes link to this one means scanning every note in the vault. On a large vault that is slow enough to be felt — the Backlinks pane lags, and every plugin that needs backlinks pays the same cost, repeatedly.

This plugin keeps a backlink index and answers from it instead. The Backlinks pane gets faster, and so does anything else that asks. On a small vault you will not notice; that is the point at which you do not need it.

Demo vault

The documentation is an interactive demo vault. Every feature has a note that explains what it does and why you would want it, with buttons that measure the difference for real.

Start reading here — it is plain markdown, so it works on GitHub with nothing installed.

A copy of the vault ships with every release. You can access it via any of the following:

  1. Running the Backlink Cache: Open demo vault command.
  2. Downloading backlink-cache-demo-vault.zip from the Releases. It unzips into a single backlink-cache-demo-vault-<version> folder.
  3. Browsing its source in demo-vault/ in this repository.

What it does

For plugin developers

This plugin replaces app.metadataCache.getBacklinksForFile() with a faster implementation, adds an overload accepting a vault path as well as a TFile, and keeps the original reachable:

const fast = app.metadataCache.getBacklinksForFile(pathOrFile);
const safe = await app.metadataCache.getBacklinksForFile.safe(pathOrFile);
const original = app.metadataCache.getBacklinksForFile.originalFn(file);

To use the updated signatures from your own plugin, copy types.d.ts into your code. 02 Fast, safe, and original backlinks runs all three side by side.

Installation

Do not install this plugin: install Advanced Metadata Cache from the official Community Plugins repository instead.

Backlink Cache is leaving that repository, and its last release is the one already installed in your vault. It keeps working, but it will not be updated.

Debugging

By default, debug messages for this plugin are hidden.

To show them, run the following command in the DevTools Console:

window.DEBUG.enable('backlink-cache');

For more details, refer to the documentation.

Changelog

All notable changes to this project will be documented in the CHANGELOG.

Contributing

Contributions are welcome — see CONTRIBUTING to get set up.

Support

My other Obsidian resources

See my other Obsidian resources.

License

© Michael Naumov

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.
Advanced Metadata Cache
10 days ago by Michael Naumov
Maintains the vault indexes that are otherwise rebuilt on every call, and answers the built-in lookups from them, so backlinks come from an index instead of a fresh scan of every note.
Anki Helper
8 months ago by Dusk
Attachment Organizer
2 months ago by kiteruunner
Automatically organize attachments into zone-based folders with conflict detection and batch operations
Auto Keyword Linker
9 months ago by Daniel Rhodes
Stop manually typing [[brackets]] around recurring terms. Configure keywords with variations once, and automatically link them as you write or across your entire vault.
AutoMOC
4 years ago by Diego Alcantara
Backlink Full Path
2 years ago by mnaoumov
Obsidian plugin that shows the backlink's full path in the backlinks panel.
Coalesce
a year ago by Floyd
Coalesce is an Obsidian plugin that merges all your linked notes into a single, organized view for a cohesive research and writing experience.
Daily Note Outline
4 years ago by iiz
Add a custom view which shows outline of multiple daily notes with headings, links, tags and list items
Default query in backlinks
3 years ago by Benature
Digital Garden
2 months ago by oleeskild
Frontmatter Markdown Links
2 years ago by mnaoumov
Obsidian Plugin that adds support for markdown links in frontmatter
Hierarchical Backlinks
2 years ago by Jason Motylinski
Plugin which displays backlinks as a tree structure based on file paths
Influx
4 years ago by Jens M Gleditsch
An alternative backlinks plugin, which displays relevant and formatted excerpts from notes with linked mentions, based on the position of mentions in the notes' hierarchical structure (bullet level indentation).
Link Tree
3 years ago by Joshua Tazman Reinier
A sidebar foldable list of Obsidian link hierarchies.
Nav Link Header
2 years ago by ahts4962
Display navigation links at the top of the notes in Obsidian
PDF++
4 months ago by ryotaushio
PDF++: the most Obsidian-native PDF annotation & viewing tool ever. Comes with optional Vim keybindings.
Project Browser
3 years ago by Dale de Silva
Rich Foot
2 years ago by Justin Parker
🦶 Obsidian plugin that adds backlink/outlink tags and created/modified dates to the footer of your notes
Understory
4 months ago by Rosetta Zidian Guo
A connection-sustain plugin: find connections and conflicts, update them over time
Universal UI Translator
a month ago by feifei
UnLime
a year ago by shandyba
Obsidian Unmentioned Links toggle