How selfemo/clipanchor works
ClipAnchor is a portable desktop clipboard workspace. Its main workflow captures copied text, images, and files in the background, applies privacy filtering, stores eligible items in local history, and presents them in the history UI or as independent popups that users can pin, favorite, edit, or copy back. The graph also includes documented settings, localization, tray/shortcut, and update capabilities. Some subsystem wiring is based on README documentation; unsampled implementation details and uncertain call relationships are omitted.
Main entry points: App.jsx Main interface · lib.rs Desktop runtime · clipboard_service.rs Clipboard capture · api.js Tauri API bridge
Components 21
User interface
- Main interface
src/App.jsx - History and favorites
src/pages/ClipboardPage.jsx - Settings
src/pages/SettingsPage.jsx - Clipboard popup
src/popup/PopupWindow.jsx - Tauri API bridge
src/api.js - Localization
src/i18n.js
Clipboard workspace
- Clipboard capture
src-tauri/src/clipboard_service.rs - Popup lifecycle
src-tauri/src/popup.rs
Local data and privacy
- SQLite history
src-tauri/src/database.rs - Privacy filtering
src-tauri/src/privacy.rs - Settings and paths
src-tauri/src/settings.rs
Desktop services
- Desktop runtime
src-tauri/src/lib.rs - Application commands
src-tauri/src/commands - Tray and menu
src-tauri/src/tray.rs - Global shortcuts
src-tauri/src/shortcut.rs - Startup behavior
src-tauri/src/autostart.rs - Update service
src-tauri/src/update_service.rs - Language packs
src-tauri/src/commands/i18n.rs
Other components
- User
- System clipboard
- Release service
Connections 25
- User → Main interface: uses
- Main interface → History and favorites: shows
- Main interface → Settings: opens
- Main interface → Clipboard popup: renders
- Main interface → Tauri API bridge: invokes
- History and favorites → Tauri API bridge: requests history
- Settings → Tauri API bridge: saves settings
- Clipboard popup → Tauri API bridge: requests item actions
- Main interface → Localization: translates
- Settings → Localization: manages languages
- Tauri API bridge → Application commands: invokes
- Desktop runtime → Clipboard capture: starts monitoring
- System clipboard → Clipboard capture: supplies copied content
- Clipboard capture → Privacy filtering: checks content
- Clipboard capture → SQLite history: saves eligible items
- Clipboard capture → Popup lifecycle: creates popups
- Clipboard popup → Popup lifecycle: requests pin and copy actions
- Application commands → SQLite history: manages records
- Application commands → Settings and paths: reads and writes
- Desktop runtime → Tray and menu: initializes
- Desktop runtime → Startup behavior: checks startup
- Desktop runtime → Global shortcuts: registers actions
- Application commands → Language packs: manages packs
- Desktop runtime → Update service: starts update checks
- Update service → Release service: checks and downloads