A modern, privacy-focused bookmark manager that runs entirely in your browser. Organize, clean up, and analyze your bookmarks with ease using advanced tools and analytics.
This project was developed entirely using Artificial Intelligence within the AntiGravity IDE.
- 📂 Privacy First: 100% local processing. No data ever leaves your browser unless you choose so.
- 🪄 True Local AI & Cloud AI: Use Ollama for completely private, local AI processing, or connect your favorite cloud providers (OpenAI, Google Gemini, Anthropic).
- ✨ Magic Sort & Auto Sort: Automatically categorize bookmarks via AI (Magic Sort) or use our rapid, rule-based matching (Auto Sort).
- 🧹 Duplicate Cleaner: Find, merge, or delete duplicate bookmarks with a single click.
- 📊 Analytics Dashboard: Visualize your collection habits, top domains, and folder statistics.
- 🔗 Dead Link Checker: Automatically identifies broken links (404s) and timeouts to keep your library clean.
- 🏷️ Smart Rules: "If this, then that" automation to organize bookmarks by URL patterns or keywords.
- ⚡ Advanced Search: Fuzzy search (typo-tolerant), Regex support, and date range filters.
- 🌍 Internationalization: Fully localized interface in English, Turkish (Türkçe), German, French, and Spanish.
- 🌗 Theme System: Sleek light, dark, and system theme support.
- 🚀 Onboarding Wizard: A smooth step-by-step onboarding experience.
- ✨ Premium Animations: Smooth, fluid micro-interactions for a premium feel.
- 🤏 Drag & Drop: Easily move bookmarks between folders and collections.
- 🛡️ Data Safety: Automatic local backups for settings and full JSON export capability.
- ↩️ Version History: Robust Undo/Redo system ensures mistake-proof organization.
- 📱 PWA Support: Install as a native app on desktop and mobile devices.
- 🔋 Resilient Architecture: Uninterrupted offline usage with Offline Indicators and graceful Error Boundaries.
- AI Integration: Auto-categorization and tagging via local (Ollama) and cloud APIs.
- PWA Support: Install as a native app on desktop and mobile.
- Keyboard Shortcuts: Navigate and manage bookmarks with keyboard.
- Undo/Redo: Mistake-proof management.
- Internationalization: English, Turkish, Spanish, French, German support.
- Drag & Drop: Native drag and drop support.
- Browser Extension: Capture bookmarks directly from the toolbar.
- Sync Server: Optional self-hosted sync server.
- Archivebox Integration: Auto-archive content for offline access.
- Core: React 19, Vite
- State/Database: Dexie.js (IndexedDB), Zustand
- Styling & Animations: TailwindCSS v4, Tailwindcss-animate, clsx, tailwind-merge
- Drag & Drop & Uploads: @dnd-kit, react-dropzone
- Search: Fuse.js
- Performance: Web Workers, React Virtuoso (Virtualization)
- Time/Date: date-fns
- AI Integration: Internal API clients for OpenAI, Anthropic, Gemini, and Ollama
- Internationalization: i18next
- Icons & UI: Lucide React, Sonner (Toasts)
- Charts: Recharts
- Export your bookmarks from your browser (Chrome, Firefox, Edge, etc.) as an HTML file.
- Open BookSmart and follow the Onboarding Wizard to get started, or drag & drop your bookmarks file.
- Setup AI (Optional): Head to Settings and configure your preferred AI provider (Ollama, OpenAI, Gemini, or Anthropic) to enable Magic Sort.
- Analyze your collection using the Dashboard to understand your habits.
- Organize by using AI Magic Sort, fast code-based Auto Sort, creating Rules, or filtering manually.
- Clean up duplicates and broken links with the built-in tools.
- Export the organized list back to your browser when done.
Prerequisites: Node.js >= 20
To run the project locally:
-
Clone the repository:
git clone https://github.com/GhostKozak/booksmart.git cd booksmart -
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Build for production:
npm run build
src/
├── components/ # Reusable UI components
├── db/ # Dexie database configuration
├── hooks/ # Custom React hooks
├── locales/ # i18n translation files
├── store/ # Zustand state management stores
├── utils/ # Helper functions and utilities
└── workers/ # Web Workers for background processing
- Large Files: Importing massive bookmark files (>10k items) may cause a momentary freeze during initial indexing.
- CORS: The "Dead Link Checker" is limited by browser CORS policies. Some sites may appear as "Unknown" or "Dead" if they block cross-origin requests. Use the "Open" button to verify manually.
Q: Is my data safe? A: Yes! Everything runs locally in your browser's IndexedDB. We do not track you or send data to any server.
Q: Does the AI feature send my bookmarks to the cloud? A: By default, no. If you use Local AI via Ollama, everything remains on your machine. If you securely configure cloud providers like OpenAI or Gemini in your settings, only the specific bookmarks you select for "Magic Sort" will be sent to those APIs for processing. Your API keys are saved locally.
Q: Which browsers are supported? A: Chrome, Firefox, Edge, Safari (latest versions).
Q: How do I backup my rules and tags? A: Go to Settings > Backup & Data to download a full configuration snapshot.
Contributions are welcome! Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.
This project is licensed under the GNU General Public License v3.0 or later - see the LICENSE file for details.
