Skip to content

dubo78/Safari_bookmarks_Sync

Repository files navigation

Safari Bookmark Sync

A smart and elegant tool to synchronize your Safari bookmarks with Google Chrome, Naver Whale, Microsoft Edge, and other Chromium-based browsers via GitHub Gist.

Download

App Screenshot


🚀 Features

  • macOS Native App: A sleek, SwiftUI-powered desktop app to upload your Safari bookmarks to Gist with a single click.
  • Multi-Browser Support: Instantly updates the 'Bookmarks Bar' on Chrome, Naver Whale, Microsoft Edge, Brave, and more.
  • Security First: Your GitHub Personal Access Token and Gist ID are securely encrypted and stored in the macOS Keychain.
  • Interactive UI: Track your sync progress with intuitive animations and real-time status messages.

🛠 Detailed Setup Guide

1. Create a GitHub Gist and Get the ID

  1. Visit GitHub Gist and sign in.
  2. Create a new Gist with the filename chrome_bookmarks.json and some dummy content (e.g., {}).
  3. The unique alphanumeric string at the end of the Gist's URL is your Gist ID.
    • Example: https://gist.github.com/username/abcdef123456... -> abcdef123456... is your ID.

2. Generate a GitHub Personal Access Token

  1. Go to GitHub Settings > Developer settings > Personal access tokens (classic).
  2. Click Generate new token (classic).
  3. Enter a Note (e.g., Safari_Bookmark_Sync).
  4. Under Select scopes, make sure to check the gist box.
  5. Click Generate token and copy the Token string to a safe place. (It will only be shown once!)

3. Install the Browser Extension

  1. Open your browser and navigate to the extensions management page:
    • Chrome: chrome://extensions/
    • Naver Whale: whale://extensions/
    • Microsoft Edge: edge://extensions/
  2. Enable Developer mode (usually found in the top-right corner or sidebar).
  3. Click Load unpacked.
  4. Select the chrome.extension folder from this project.

📋 How to Use

[Step 1] Sync via macOS App

  1. Launch the Safari_Bookmark_Sync app.
  2. Grant Full Disk Access (Required):
    • To read Safari bookmarks, you must grant the app permission.
    • Go to System Settings > Privacy & Security > Full Disk Access.
    • Click the + button, add Safari_Bookmark_Sync, and ensure the toggle is ON.
  3. Click the central SYNC button in the app.
  4. On the first run (or if settings are incorrect), the Settings window will appear automatically. Enter your Gist ID and GitHub Token, then save.
  5. Click the SYNC button again to start the upload.
  6. Once the button changes to DONE, your Safari bookmarks are successfully uploaded to Gist.

[Step 2] Sync via Browser Extension

  1. Click the extension icon in your browser's toolbar and open the Options page.
  2. Enter your Gist ID and save.
  3. Click the extension icon again to perform the sync.
  4. Your browser's 'Bookmarks Bar' will now be updated with your Safari bookmarks.

⚠️ Important Notes

  • This tool overwrites the contents of the 'Bookmarks Bar' folder in your browser. Please back up any existing bookmarks in that folder before proceeding.

🛠 Troubleshooting: "App is damaged" Error

If you see a message saying "Safari Bookmark Sync is damaged and can't be opened" on macOS, it is because the app is unsigned. You can easily fix this by following these steps:

  1. Open Terminal.
  2. Type the following command (make sure to include a space at the end):
    xattr -d com.apple.quarantine 
  3. Drag and drop the Safari_Bookmark_Sync.app file from your Finder directly into the Terminal window. This will automatically paste the correct file path.
  4. Press Enter.
  5. Now you can open the app normally!

💡 Note on the command:

  • What it does: This command removes the "quarantine" flag that macOS automatically attaches to files downloaded from the internet for security reasons.
  • Moving the app: Once you've run this command, you can move the app to any folder (like the /Applications folder) without having to run it again. The fix is permanent for that specific file.

Created by dubo.

About

A smart utility to synchronize Safari bookmarks with Chrome, Edge, and Whale browsers via GitHub Gist. Includes a native macOS app and a cross-browser extension

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors