Browser Integration

GatherHub can automatically scan and import bookmarks and browsing history from popular web browsers, allowing you to create archives of web content you've visited or saved.

Note: Browser integration requires read access to browser profile directories, which are typically located in your user profile folder.

Supported Browsers

GatherHub currently supports the following browsers for bookmark and history import:

Firefox

Imports bookmarks and history from Firefox's places.sqlite database.

Features:
  • Import browser bookmarks
  • Import browsing history
  • Filter by folders
  • Multiple profile support
Chrome

Imports bookmarks and history from Chrome's Bookmarks file and History database.

Features:
  • Import browser bookmarks
  • Import browsing history
  • Filter by folders
  • Multiple profile support
Chromium

Supports Chromium-based browsers like Brave, Edge, Opera, and Vivaldi.

Features:
  • Import browser bookmarks
  • Import browsing history
  • Filter by folders
  • Cross-platform profiles

Configuration

Browser sources are configured in your config.toml file under the sources section. Here's an example configuration for a Firefox browser source:

[[sources]]
name = 'Firefox'
type = 'browser'
path = 'browser://firefox'
table = 'moz_bookmarks'
id_column = 'id'
url_column = 'url'
title_column = 'title'
browser = 'firefox'
profile_path = ''
folders = []
exclude_folders = []

Browser Source Configuration Options

On mobile, table data is shown as individual cards for better readability.
Option Description Example Values
name Friendly name for this source, used in the interface and logs Firefox, Chrome, Work Browser
type Source type - must be 'browser' for browser sources browser
path Special URL format for browser sources browser://firefox, browser://chrome
table Database table name containing bookmarks or history moz_bookmarks, moz_places
browser Browser type identifier firefox, chrome, chromium
profile_path Custom browser profile path, if not using default /path/to/custom/profile
folders List of folders to include (empty = all folders) ["Research", "Archive"]
exclude_folders List of folders to exclude ["Private", "Temporary"]
name
Option: name
Description: Friendly name for this source, used in the interface and logs
Example Values: Firefox, Chrome, Work Browser
type
Option: type
Description: Source type - must be 'browser' for browser sources
Example Values: browser
path
Option: path
Description: Special URL format for browser sources
Example Values: browser://firefox, browser://chrome
table
Option: table
Description: Database table name containing bookmarks or history
Example Values: moz_bookmarks, moz_places
browser
Option: browser
Description: Browser type identifier
Example Values: firefox, chrome, chromium
profile_path
Option: profile_path
Description: Custom browser profile path, if not using default
Example Values: /path/to/custom/profile
folders
Option: folders
Description: List of folders to include (empty = all folders)
Example Values: ["Research", "Archive"]
exclude_folders
Option: exclude_folders
Description: List of folders to exclude
Example Values: ["Private", "Temporary"]

How Browser Integration Works

GatherHub's browser integration works by scanning the browser's profile data directly:

Firefox stores bookmarks and history in SQLite databases within the profile directory:

  • Locates the Firefox profile directory automatically (usually in ~/.mozilla/firefox/ on Linux or %APPDATA%\Mozilla\Firefox\Profiles\ on Windows)
  • Reads the places.sqlite database file, which contains both bookmarks and browsing history
  • Uses SQL queries to extract bookmarks from the moz_bookmarks table, joined with moz_places for URLs
  • Can filter by bookmark folders using parent IDs in the bookmark structure

Chrome uses different file formats for bookmarks and history:

  • Locates the Chrome profile directory automatically (usually in ~/.config/google-chrome/ on Linux or %LOCALAPPDATA%\Google\Chrome\User Data\ on Windows)
  • Reads the Bookmarks JSON file for bookmark data
  • Reads the History SQLite database for browsing history
  • Parses the nested JSON structure to extract bookmarks and their folder hierarchy
  • Can filter by bookmark folders by name in the JSON tree

Chromium-based browsers like Brave, Edge, Opera, and Vivaldi use the same file format as Chrome:

  • Each browser has its own profile directory, but the internal format is the same
  • The browser field in configuration determines which browser's profile directory to look for
  • Supports the same features as Chrome integration
  • Can specify custom profile paths for non-standard installations

Security & Privacy Considerations

Security Note:

GatherHub requires read access to browser profile directories, which may contain sensitive information. Consider these security implications:

Data Access
  • GatherHub only reads bookmark and history data, not passwords or cookies
  • Browser profile files are opened in read-only mode
  • No data is sent to external servers
  • All data remains on your local system
Best Practices
  • Run GatherHub under the same user account that owns the browser profiles
  • Use the folder filtering options to limit which bookmarks are imported
  • Create a dedicated bookmark folder for sites you want to archive
  • Consider using a separate browser profile for GatherHub integration

Scanning Frequency

You can control how often GatherHub scans your browser sources using the scheduling settings:

[scheduling]
enabled = true
interval_minutes = 60

With the above settings, GatherHub will scan browser sources every 60 minutes when running in daemon mode. You can also trigger scans manually from the web interface or using the command line:

gatherhub --scan

Troubleshooting

On mobile, table data is shown as individual cards for better readability.
Problem Possible Solution
Browser profile not found
  • Check that the browser is installed
  • Provide an explicit profile_path in the configuration
  • Ensure GatherHub has permission to read the profile directory
No bookmarks being imported
  • Check that you have bookmarks in the browser
  • Verify the folders and exclude_folders settings
  • Ensure the browser isn't currently running (which may lock the database)
Database locked errors
  • Close the browser before scanning
  • Some browsers keep the profile locked even when not running - try restarting your system
  • Consider creating a copy of the profile for GatherHub to use
Browser profile not found
Problem: Browser profile not found
Solutions:
  • Check that the browser is installed
  • Provide an explicit profile_path in the configuration
  • Ensure GatherHub has permission to read the profile directory
No bookmarks being imported
Problem: No bookmarks being imported
Solutions:
  • Check that you have bookmarks in the browser
  • Verify the folders and exclude_folders settings
  • Ensure the browser isn't currently running (which may lock the database)
Database locked errors
Problem: Database locked errors
Solutions:
  • Close the browser before scanning
  • Some browsers keep the profile locked even when not running - try restarting your system
  • Consider creating a copy of the profile for GatherHub to use
Search Results

Type to search documentation...