A browser extension that syncs bookmarks from your self-hosted Linkding instance into your browser's bookmark tree, organized by tags.
Works with Chrome, Vivaldi, Edge, Brave, and other Chromium-based browsers.
- Syncs all bookmarks from Linkding into a dedicated browser bookmark folder
- Organizes bookmarks into subfolders by tag
- Bookmarks with multiple tags appear in each tag's folder
- Untagged bookmarks are placed in an "Untagged" folder
- Optional automatic background sync on a configurable interval
- Choose any bookmark folder as the sync destination
- Settings sync across devices via
chrome.storage.sync
- Keep a browser folder (e.g. Bookmark Bar) in sync with Linkding bookmarks that share a specific tag
- Bidirectional: add a bookmark in Chrome and it appears in Linkding, or add one in Linkding and it appears in Chrome
- Full subfolder support — folder structure is preserved using path-based tags (e.g.
bookmark-sync/Work/Projects) - Deleting a bookmark on either side removes it from the other on the next sync
- Title and folder changes are detected and synced in both directions
- Real-time sync: bookmark changes in Chrome trigger a sync automatically (2-second debounce)
- Three initial sync modes: Push (Chrome to Linkding), Pull (Linkding to Chrome), or Merge (combine both, no duplicates)
- Runs alongside the full download without interference
- Both sync modes share a single Auto-Sync timer — enable either or both independently
There is no build step required — the extension is plain JS/HTML/CSS.
-
Download the extension
Grab the latest
linkding-sync-*.zipfrom the Releases page and extract it.Alternatively, clone the repository:
git clone https://github.com/klppl/linkding-sync.git -
Load the extension in your browser
- Open your browser's extension page:
- Chrome:
chrome://extensions/ - Vivaldi:
vivaldi://extensions/ - Edge:
edge://extensions/ - Brave:
brave://extensions/
- Chrome:
- Enable Developer mode (toggle in the top-right corner)
- Click Load unpacked
- Select the extracted folder (or the cloned
linkding-syncfolder)
- Open your browser's extension page:
-
Configure the extension
- Click the Linkding Sync icon in your toolbar, then click Settings (or right-click the icon and choose Options)
- Enter your Linkding instance URL (e.g.
https://linkding.domain.tld) - Enter your API token (found in Linkding under Settings > Integrations)
- Click Test Connection to verify
- Optionally enable Auto-Sync and choose an interval
- Enable Full Linkding Download and/or Two-Way Bookmark Sync (see below)
- Click Save Settings
Enable this in Settings, choose a folder name and parent location, then click Download Now in the popup. The popup displays the number of bookmarks and tags synced, along with the time of the last sync.
If auto-sync is enabled, all active sync modes run in the background at your chosen interval.
- Open Settings and scroll to the Two-Way Bookmark Sync card
- Enable the toggle
- Set a Sync Tag (default:
bookmark-sync) — only Linkding bookmarks with this tag will be synced - Pick a Sync Folder in the browser (e.g. Bookmark Bar) — this folder and all its subfolders will be kept in sync
- Save settings, then choose an Initial Sync Mode:
- Merge — matches bookmarks by URL across both sides, uploads Chrome-only bookmarks, downloads Linkding-only bookmarks
- Push — uploads everything from the Chrome folder to Linkding
- Pull — clears the Chrome folder and downloads all tagged Linkding bookmarks
- Click Start Initial Sync
After the initial sync, two-way sync runs automatically whenever you add, remove, or move bookmarks in the synced folder. You can also trigger it manually from the popup.
Browser subfolder paths are encoded as Linkding tags:
| Browser location | Linkding tags |
|---|---|
Bookmark Bar/example.com |
bookmark-sync |
Bookmark Bar/Work/example.com |
bookmark-sync, bookmark-sync/Work |
Bookmark Bar/Work/Projects/example.com |
bookmark-sync, bookmark-sync/Work/Projects |
This means you can control where a bookmark lands in Chrome by adding the right path tag in Linkding. For example, adding tag bookmark-sync/Recipes to a Linkding bookmark will place it in a Recipes subfolder on the next sync.
In the extension Options, under the Manual Actions section (expandable), you can force a full sync operation:
- Force Push: Overwrites all Linkding bookmarks with the current state of your Chrome sync folder. Useful if Linkding is out of sync or you want to reset the server state.
- Force Pull: Overwrites your Chrome sync folder with data from Linkding. Useful if your local bookmarks are messed up.
- Force Merge: Attempts to merge both sides again, downloading missing bookmarks from Linkding and uploading new ones from Chrome.
Note: These operations are rate-limited (1 second per item) to prevent server errors, so a "Force Push" of hundreds of bookmarks might take a few minutes. A progress bar will show the status.
The extension supports syncing your custom bookmark order:
- Reorder bookmarks in your Chrome sync folder (drag and drop).
- The extension detects the change and saves the new order to a special bookmark in Linkding titled
Linkding Sync Config. - On other devices (or after a Force Pull), bookmarks will be sorted to match this order.
Note: Do not delete the Linkding Sync Config bookmark in Linkding, as it stores your sort preferences.
To get your API token:
- Open your Linkding instance in a browser
- Go to Settings > Integrations
- Copy the API token shown on that page
MIT

