How kanhavj/clippydev works
DevClipper is a local-first macOS clipboard history and snippet manager. Its core workflow monitors copied content, captures and classifies it, stores it locally, then lets the user search and copy it back through the quick panel or library. Snippets, paste queue, local tools, and optional AI and semantic search extend that workflow. The README documents these product capabilities and layer boundaries; sampled source confirms selected search, snippet, IPC, startup, and UI paths, while unsampled subsystem links are limited to documented relationships.
Main entry points: ipc.ts Frontend IPC · repository.rs History database · engine.rs Search engine · manager.rs Snippet manager
Components 26
Clipboard capture
- Clipboard monitor
src-tauri/src/clipboard/monitor.rs - Capture and dedupe
src-tauri/src/clipboard/capture.rs - Type detection
src-tauri/src/content/detector.rs - History database
src-tauri/src/database/repository.rs
Search and library
- Quick panel
src/windows/QuickPanel.tsx - History library
src/windows/MainWindow.tsx - Panel entries
src/components/panel/usePanelEntries.ts - Search engine
src-tauri/src/search/engine.rs - Query filters
src-tauri/src/search/query.rs
Reuse and snippets
- Copy and paste
src-tauri/src/clipboard/copy.rs - Paste queue
src-tauri/src/clipboard/queue.rs - Snippet screens
src/pages/SnippetsPage.tsx - Snippet manager
src-tauri/src/snippets/manager.rs - Template rendering
src-tauri/src/snippets/service.rs
AI and semantic
- Ask AI interface
src/windows/AskWindow.tsx - AI request hook
src/hooks/useAiRunner.ts - AI commands
src-tauri/src/commands/ai.rs - AI runner
src-tauri/src/ai/runner.rs - AI providers
src-tauri/src/ai/provider.rs - Semantic search
src-tauri/src/search/semantic.rs
App services
- Frontend IPC
src/lib/ipc.ts - Tauri commands
src-tauri/src/commands/items.rs - Privacy and security
src-tauri/src/security/mod.rs - Menu and shortcuts
src-tauri/src/shell/mod.rs - Settings
src-tauri/src/settings.rs
Other components
- Copying app
Connections 29
- Copying app → Clipboard monitor: changes clipboard
- Clipboard monitor → Capture and dedupe: triggers capture
- Capture and dedupe → Type detection: classifies content
- Capture and dedupe → History database: stores item
- Type detection → History database: stores metadata
- Quick panel → Panel entries: loads entries
- Panel entries → Frontend IPC: requests items
- History library → Frontend IPC: requests history
- Frontend IPC → Tauri commands: invokes commands
- Tauri commands → Search engine: searches history
- Search engine → Query filters: parses query
- Search engine → History database: reads matches
- Tauri commands → Copy and paste: copies item
- Copy and paste → History database: reads item
- Quick panel → Paste queue: queues items
- Snippet screens → Frontend IPC: requests snippets
- Frontend IPC → Snippet manager: invokes snippet commands
- Snippet manager → History database: stores snippets
- Snippet manager → Type detection: detects snippet type
- Snippet manager → Template rendering: renders templates
- Ask AI interface → AI request hook: starts question
- AI request hook → Frontend IPC: sends AI request
- Frontend IPC → AI commands: invokes AI command
- AI commands → AI runner: runs request
- AI runner → AI providers: dispatches prompt
- AI runner → Privacy and security: checks sensitivity
- Search engine → Semantic search: expands meaning
- Menu and shortcuts → Clipboard monitor: starts monitoring
- Menu and shortcuts → Settings: loads settings