GitSyncMarks — Effortless Bookmark Sync via GitHub

GitSyncMarks

Effortless Bookmark Sync via GitHub

Your bookmarks live in your Git repo. Per-file storage, three-way merge, no middleman — syncs directly via the GitHub API.

A browser extension that bidirectionally syncs your bookmarks with a GitHub repository. Works with Chrome, Chromium, Brave, Edge, and Firefox. No third-party server — your data stays between your browser and your repo.

Get the Extension

Or download the ZIP from Releases and load unpacked (Chrome: chrome://extensions/; Firefox: about:debugging).

Features

No middleman

Communicates directly with the GitHub API. No third-party server, no backend. Your data stays between your browser and your GitHub repo.

Per-file storage

Each bookmark is stored as an individual JSON file in your Git repo — human-readable, diff-friendly, and easy to edit or version on GitHub.

Three-way merge

Automatic conflict-free sync when changes happen on both sides simultaneously. No manual merge needed in most cases.

Cross-browser

Works with Chrome, Chromium, Brave, Edge, and Firefox. Same extension logic, same bookmark format across all.

Auto-sync

Syncs automatically on every bookmark change. Configurable debounce so rapid edits are bundled into one sync.

Multiple profiles

Up to 10 profiles (work, personal, projects). Each has its own GitHub repo config and bookmark set. Switch replaces local bookmarks with the target profile.

Context menu

Right-click on any page or link: Add to Toolbar, Add to Other Bookmarks, Sync Now, Switch Profile, Copy Favicon URL, Download Favicon.

Automation

Add bookmarks via Git, CLI, or GitHub Actions. The extension picks them up automatically on the next sync.

Generated files

README.md, bookmarks.html, feed.xml, dashy-conf.yml — each configurable as Off, Manual, or Auto.

Screenshots

GitHub profile settings
1. GitHub
Connection setup
2. Connection
Sync status
3. Sync
Generated files
4. Files
Export / Import
5. Export / Import
Extension popup
6. Popup
Setup wizard welcome
7. Wizard (Welcome)
Setup wizard token
8. Wizard (Token)
Setup wizard repository
9. Wizard (Repository)

Configure the Extension

  1. Create a GitHub repository for your bookmarks
  2. Generate a Personal Access Token with the repo scope
  3. Install the extension and configure token, repo owner, repo name, branch, and file path
  4. Click Sync Now — your bookmarks are pushed as individual JSON files
Get it on F-Droid GitHub Releases Obtainium

GitSyncMarks-App — view your bookmarks from your GitHub repo on your phone or tablet.

Get the App

Or download APK, Flatpak, or ZIP from Releases.

Features

Sync from GitHub

Bookmarks from your GitSyncMarks-compatible repository via Contents API

Settings Sync to Git

Encrypted sync (extension-compatible), Global/Individual mode, Import from other device

Move bookmarks

Long-press to move bookmarks to any folder (including subfolders)

Reorder bookmarks

Drag-and-drop to reorder; changes persisted to repo

Delete bookmarks

Long-press to delete (available even when edit mode is locked)

Share link as bookmark

(Android/iOS): Add shared URLs from browser or other apps as bookmarks; on desktop use "Add bookmark" dialog

Password-protected export/import

Export settings with AES-256-GCM encryption; import detects encrypted files and prompts for password

Configurable root folder

Select any folder as "root" for tab navigation

Auto-lock edit mode

Edit mode auto-locks after 60 seconds of inactivity

Reset all data

Clear all profiles, settings, and cached data from the About tab

Local cache

Bookmarks saved after sync, loaded from cache on app start (offline-capable)

GitHub Personal Access Token

Secure authentication with `repo` scope

Screenshots

Bookmarks view
Bookmarks
Empty state
Empty state
Settings
Settings

Configure the App

  1. Open the app and go to Settings
  2. Enter your Personal Access Token with repo scope
  3. Enter Repository Owner and Repository Name (your bookmark repo)
  4. Set Branch (usually main) and Base Path (default bookmarks)
  5. Click Test Connection, then Save
  6. Use Sync Bookmarks to fetch your bookmarks