Bookmark Manager Zero Logo

Bookmark Manager Zero

A modern, privacy-focused interface for managing your Chrome bookmarks.

Version License Chrome


Available in the Chrome Web Store

Overview

Bookmark Manager Zero is a Chrome extension that provides a beautiful, feature-rich side panel interface for managing your native Chrome bookmarks. It works directly with the bookmarks already built into your browser, with optional cloud sync via GitLab Snippets for backup and cross-device synchronization.

Changes sync bi-directionally and instantly: any edits made in Bookmark Manager Zero immediately appear in Chrome's native bookmark system, and vice versa. Don't worry about accidental changesβ€”the built-in undo feature and a changelog in the settings let you quickly restore recently deleted renamed, or moved bookmarks and folders.

It enhances your bookmark management experience with modern UI, advanced search, safety checking, and intelligent organization tools while keeping your data exactly where it belongs: in Chrome.

Why Bookmark Manager Zero?

The only bookmark manager with integrated security scanning.

Other bookmark tools make you choose between organization OR security. Bookmark Manager Zero combines both:

Feature Bookmark Manager Zero Bookmark Sidebar Sidebarr Meomni
Modern bookmark UI βœ… βœ… βœ… βœ…
Dead link detection βœ… βœ… ❌ ❌
Parked domain detection βœ… ❌ ❌ ❌
Multi-source malware scanning βœ… ❌ ❌ ❌
Safety indicators on bookmarks βœ… ❌ ❌ ❌
Suspicious pattern detection βœ… ❌ ❌ ❌
No tracking/analytics βœ… ❌ ❌ ❌
Website previews βœ… ❌ ❌ ❌
Free (no premium upsell) βœ… ❌ βœ… ❌

Stop blindly clicking old bookmarks. Know which links are dead, parked, or potentially dangerous before you visit them.

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3
Screenshot 4 Screenshot 5 Screenshot 6
Screenshot 7 Screenshot 8 Screenshot 9

Click any image to view full resolution. All screenshots show the extension running in Chrome.

Features

Core Functionality

Privacy & Security

User Experience

Advanced Features

-️ Website Previews - Screenshot thumbnails of bookmarks with hover preview popup

Installation

Install directly from the Chrome Web Store

Manual Installation (Developer Mode)

  1. Clone this repository:
    git clone https://gitlab.com/AbsoluteXYZero/BMZ-Chrome.git
    
  2. Open Chrome and navigate to chrome://extensions
  3. Enable "Developer mode" (toggle in top right)
  4. Click "Load unpacked"
  5. Select the cloned directory

Getting Started

Bookmark Manager Zero offers two ways to use the extension:

Option 1: Native Bookmarks Mode (Default)

Just install and start using! All features work immediately with your existing Chrome bookmarks.

Option 2: GitLab Sync Mode (Optional)

Add cloud backup and cross-device synchronization to your bookmarks:

  1. Create a free GitLab account and generate a Personal Access Token (PAT):

    • Navigate to GitLab β†’ Settings β†’ Access Tokens
    • Token name: "Bookmark Manager Zero" (or any name you prefer)
    • Scope required: api βœ…
    • Expiration: Choose your preferred date
    • Click "Create personal access token"
    • ⚠️ CRITICAL: PATs display only ONCE - copy immediately and save to a password manager
    • Track expiration date to avoid sync interruptions
  2. Configure Gitlab integration in the extension:

    • Click the Gitlab icon in the GUI or open extension settings (gear icon)
    • Paste your token (must start with glpat- prefix)
    • Token will be encrypted with AES-256-GCM before storage
    • Choose to create new Snippet or connect to existing one
  3. Your bookmarks sync automatically:

    • Changes sync across all your devices via private GitLab Snippets
    • Still works with native Chrome bookmarks (bidirectional sync maintained)
    • Auto-sync every 5 minutes when side panel is open
    • Event-driven sync also triggers on bookmark/folder changes
    • Important: Side panel must stay open for background sync to work

Adding Sync to Existing Bookmarks

Already using the extension? Add GitLab sync anytime:

  1. Click the GitLab icon or settings (gear icon) β†’ GitLab Snippet Sync

  2. Enter your GitLab Personal Access Token

  3. Choose your setup option:

    • Create New Snippet - Start fresh with a new snippet in GitLab
    • Connect to Existing Snippet - Link to a snippet you already created
  4. If you have local bookmarks, you'll see a dialog with 3 options:

    • Keep Local Bookmarks - Cancel setup and keep your local bookmarks unchanged
    • Merge Bookmarks - Combine your local bookmarks with the snippet (recommended)
    • Replace with Snippet - Use only the snippet's bookmarks
      • Safety feature: Option to download backup before replacing
      • Choose "Download Backup & Replace" (recommended) or "Skip Backup & Replace"
  5. After connecting, manual sync button options:

    • Pull - Download and merge remote bookmarks with local
    • Push (auto) - Upload local changes to remote
    • Force Push - Overwrite remote completely (Shift+Click sync button)

Token Tips

Keyboard Shortcuts

Privacy

Bookmark Manager Zero respects your privacy:

See PRIVACY.md for complete privacy policy.

External Services (Optional)

The extension can optionally use external services for enhanced features. All can be disabled in settings:

Default Services (can be disabled)

User-Configured Services (require API keys)

All external service usage is disclosed in PRIVACY.md.

Important Notice: GitLab API Usage

How GitLab Snippets Are Used:

API Usage Considerations:

Best Practices:

This section provides technical details on how the extension determines link status and safety for anyone interested in the methodology.

The extension checks if bookmark URLs are still accessible and categorizes them as Live, Dead, or Parked.

Detection Method

  1. Initial Domain Check: The URL's domain is first checked against a list of 22+ known domain parking services:

    • Registrars: HugeDomains, GoDaddy, Namecheap, NameSilo, Porkbun, Dynadot, Epik
    • Marketplaces: Sedo, Dan.com, Afternic, DomainMarket, Squadhelp, BrandBucket, Undeveloped, Atom
    • Parking Services: Bodis, ParkingCrew, Above.com, SedoParking
  2. HTTP HEAD Request: A lightweight HEAD request is sent with CORS mode to track redirects (10-second timeout)

    • No page content is downloaded
    • Credentials are omitted for privacy
    • Falls back to no-cors mode if CORS is blocked
  3. Redirect Detection: If the URL redirects to a different domain, the final destination is checked against parking domain lists

    • Example: example.com β†’ hugedomains.com/domain/example.com = Parked
    • Same-site redirects (www, HTTPS) are not flagged
  4. Response Interpretation:

    • Successful response β†’ Live
    • Redirects to parking domain β†’ Parked
    • Timeout/Network Error β†’ Dead
  5. Fallback Strategy: If HEAD fails, a GET request is attempted with the same redirect detection logic

Performance & Rate Limiting

Optimized Batch Processing:

Smart Timeout Strategy:

Network Protection:

Expected Performance:

Caching

Results are cached locally for 7 days to minimize network requests.

Privileged URLs (Browser Internal Pages)

Certain URL schemes are recognized as browser internal pages and are automatically marked as trusted without scanning:

Visual Indicators:

These URLs are inherently safe and don't require HTTP status checks or security scanning. Note that about:* URLs work normally in Chrome and are scanned like regular URLs.


Safety Checking

The extension checks URLs against multiple threat databases to identify malicious, phishing, or scam websites.

Phase 1: Blocklist Lookup (Free, No API Key Required)

URLs are checked against ten community-maintained blocklists with dual URLhaus coverage:

Source Type Description Entries
URLhaus (Active) Malware URLs Official abuse.ch list - actively distributing malware (updated every 5 min) ~107K
URLhaus (Historical) Malware Domains Historical threats via CDN mirror (updated every 12 hours) ~37K
BlockList Project - Malware Malware Domains Community-maintained malware domain list ~300K
BlockList Project - Phishing Phishing Domains Known phishing sites ~214K
BlockList Project - Scam Scam Domains Known scam websites ~112K
HaGeZi TIF Threat Intel Feeds Comprehensive malware, phishing, and scam domains 608K
Phishing-Filter Phishing URLs Aggregated phishing database from OpenPhish & PhishTank ~21K
OISD Big Multi-source Comprehensive blocklist aggregator covering malware, ads, trackers ~215K
FMHY Filterlist Unsafe Sites Fake activators, malware distributors, unsafe download sites ~282
Dandelion Sprout Anti-Malware Anti-Malware Curated malware, scam, and phishing domains ~5K

Total Coverage: ~1.36M unique malicious domains after deduplication

Implementation Details:

Trusted Domain Exceptions: To prevent false positives, certain well-known trusted platforms are exempted from local blocklist checks (but still scanned by API-based services):

These domains bypass URLhaus and other local blocklists but are still checked by Google Safe Browsing, Yandex, and VirusTotal if API keys are configured.

Phase 2: Google Safe Browsing (Optional, Requires API Key)

If configured, URLs are checked against Google's threat database:

Phase 3: Yandex Safe Browsing (Optional, Requires API Key)

If configured, provides geographic threat diversity:

Phase 4: VirusTotal (Optional, Requires API Key)

If configured, URLs are submitted to VirusTotal's multi-engine scanner:

  1. URL is submitted for analysis
  2. Results are retrieved after 2 seconds
  3. 70+ antivirus engines analyze the URL

Threat Determination:

Rate Limit: 500 requests/day, 4 requests/minute (free tier)

Phase 5: Suspicious Pattern Detection

The URL is analyzed for suspicious patterns (scanning continues regardless of previous results):

Pattern Detection Result
HTTP Only (Unencrypted) URL uses http:// and doesn't redirect to HTTPS Warning
HTTP Only (redirects to HTTPS) URL uses http:// but site redirects to HTTPS Warning (informational)
URL Shortener Domain is bit.ly, tinyurl.com, t.co, etc. (18+ services) Warning
Suspicious TLD Domain ends in .xyz, .top, .tk, .ml, .ga, .cf, .gq, .cc, etc. (30+ TLDs) Warning
IP Address URL uses IP address instead of domain name (IPv4 or IPv6) Warning

Note: Multiple patterns can be detected simultaneously (e.g., HTTP + Suspicious TLD).

Final Status Determination

Scanning Methodology: All layers are checked sequentially, and results are aggregated. The extension does NOT stop at the first flagβ€”it continues through all enabled layers to provide comprehensive threat intelligence.

Check Result Final Status Priority
Blocklist match (any source) Unsafe (red shield) Highest
Google Safe Browsing match Unsafe (red shield) Highest
Yandex Safe Browsing match Unsafe (red shield) Highest
VirusTotal 2+ malicious Unsafe (red shield) Highest
VirusTotal 1 malicious or 2+ suspicious Warning (yellow shield) Medium
Suspicious patterns found Warning (yellow shield) Medium
All checks pass Safe (green shield) Normal

Multi-Source Attribution: Tooltips display all sources that flagged a URL (e.g., "Detected by: URLhaus, Google Safe Browsing, Suspicious TLD"). This provides transparency and helps identify false positives.

Caching & Privacy


Whitelisting

Users can whitelist specific URLs to:

Permissions

Required Permissions

Development

Key Technologies

Security

Security Features

Reporting Security Issues

Please report security vulnerabilities via GitLab Issues (mark as security issue).

License

MIT License - see LICENSE file for details.

Support

Acknowledgments

Design & Platform

Security & Malware Detection

Services

Special thanks to the security research community for maintaining free, public malware databases that help keep users safe.


Made with ❀️ for Chrome users who love organized bookmarks