All notable changes to this project will be documented in this file.
- ESC key no longer triggers position flyover unexpectedly
- Blur internal control when deactivating entry for better focus management
- Focus style sometimes not visible in UI
- Persistent clip entry language - syntax highlighting language selection is now saved per clip and persists across sessions.
- Less aggressive prefetching to improve performance and reduce resource usage.
- Home/End keys now move to start/end of the clip list.
- Show position indicator when navigating clip list with keyboard.
- Fixed SQL injection vulnerabilities in database queries
- All external string inputs now use bind parameters instead of string concatenation
- Affected functions: update_entry, search_entries, list_entries, delete_entry, short URL operations, tag operations
- Protect favorite and tagged clips from deletion
- Cmd/Ctrl + C to copy selected clip
- Settings to limit bundled server memory usage
- Streaming file download/upload to reduce memory consumption
- Polish auth error page
- Login button invisible under light theme in server web UI
- Images not displaying correctly when server uses self-signed certificate
- Adding host tag to search box now replaces existing host tag instead of appending
- Server upload size limit cannot exceed 10MB due to default Axum limit
- Various UI fixes and improvements
- Improve performance of clip list scrolling and rendering
- Added background prefetching to load all clips automatically
- Skeleton placeholders now shown for unloaded items instead of blank space
- Host tag for clips created via Web UI
- Host tag for dropped files
- Auto theme may show incorrect color scheme on start
- Polish Linux appearance
- Fix arrow key navigating
- Keyboard navigation support
- Server web UI improvements
- Fix various focus issues in server web UI
- Keep scroll position after editing or deleting clips in Web UI
clipper-cli createandclipper-cli uploadcommands now add the host tag to created clips- Added
--hostoption to clipper-cli for specifying custom hostname in output
- Keep scroll position after editing or deleting clips in UI
- Cleaned up unnecessary log output
- Allow clearing notes from clips
- Fixed image authentication failure when bundled server token contains special characters
- Token query parameters are now properly URL-encoded on client side
- Server now properly URL-decodes token query parameters
- Use consistent placeholder in search box
- Always use token for bundled server to secure localhost access
- Tag color adjustment in UI
- Note tooltip and popup positioning
- Scroll in language list should not scroll entry list when reaching end
- Generate token when enabling bundled server network access
- Popup note editing - click notes indicator to edit notes in a popup (ESC to cancel)
- Inline tag management in clip list
- Add tags directly with "+" button (Enter to save, ESC to cancel)
- Remove tags with "X" button on hover (confirmation popup with Enter/ESC support)
- Tag autocomplete when adding new tags
- Removed edit button and edit dialog from clip entry (replaced by inline editing)
- Various UI/UX improvements for tag and note editing
- Removed unused EditClipDialog component and related CSS/translations
- Copy image from clip list
- Send image from the clipboard to the server via web UI
- Pass server configuration via environment variables instead of command-line arguments
- Prevents sensitive data (bearer token) from being visible in process listings (
ps)
- Prevents sensitive data (bearer token) from being visible in process listings (
- Tags management with dedicated tags table in database
- Tag search functionality with autocomplete support
- Tag editing with autocomplete suggestions in UI
- Press ESC key to clear search box when focused
- Debug logging option (
debug_loggingin settings.json) for troubleshooting - File logging with rotation for desktop app (log files in system log directory)
- Bug reporting documentation in README
- Fixed "Clear All Data" not respecting bundled server token setting, causing connection failures after clearing data
- Search result highlighting with
<mark>tags for matched terms- New
highlight_beginandhighlight_endquery parameters in search API highlighted_contentfield in search results (optional, backward compatible)- Visual highlighting in Web UI and Desktop app with smart truncation
- Line-based content truncation (6 lines) ensuring highlighted terms are visible
- New
- Windows build: Added missing
Win32_System_Threadingfeature to windows-sys dependency - Rust 2024 compatibility: Added explicit unsafe block in
get_length_sidfunction
- PII (Personally Identifiable Information) detection before sharing clips
- Configurable short URL expiration time
- Token generation utility for creating secure bearer tokens
- Chinese language search improvements with better tokenization
- File and directory permissions security
- Added comprehensive security considerations documentation
- Proper file and directory permissions for data storage
- Dockerfile build configuration
- Export/Import functionality for clips via tar.gz archives
GET /export- Export all clips and attachments as a tar.gz archivePOST /import- Import clips from a tar.gz archive with automatic deduplication- CLI commands:
clipper-cli exportandclipper-cli import - Client library methods:
export_to_file(),export_to_writer(),import_from_file(),import_from_reader()
- Deduplication on import (skips clips with same ID)
- Streaming support for efficient handling of large archives
- Updated all README files with export/import documentation
- Added export/import to REST API endpoint tables
- Added CLI command documentation for export and import
- Added client library API documentation for export/import functions
- Upgraded React to 19.2.1 to address CVE-2025-55182 (note: this project does not use React Server Components and is not affected by this vulnerability)
- Upgraded React to 19.2.1
- Upgraded TypeScript to 5.9.3
- Upgraded @vitejs/plugin-react to 5.1.1
- Upgraded Vite to 7.2.6
- Upgraded @types/react to 19.2.7
- Upgraded @types/react-dom to 19.2.3
- Fixed duplicate React instances issue when using linked packages
- Optimized build chunks for better caching (split react and highlight.js into separate chunks)
- Confirmation dialog before sharing clips
- Favicon for shared clip pages
- Nerd Font for better glyph/icon displaying
- Tooltip for additional notes field
- Download progress bar with speed indicator in update settings dialog
- Restart functionality after update download (spawns new instance after exit)
- "Download and Install" button remaining visible after update download on macOS
- "Quit Now" button not working after update download
- Graceful server shutdown before app restart to avoid port conflicts
- Self-signed certificate support with SSH-like fingerprint verification in clipper-cli
- Self-signed certificate trust in desktop app with UI dialog for certificate verification
- Shared trusted certificates storage between CLI and desktop app
- File too big toast notification for oversized uploads
- Various compiler warnings
- Copy/paste file handling improvements
- Auto cleanup for expired short URLs
Initial tracked release with:
- Core clipboard indexer with full-text search
- REST API server with WebSocket support
- Desktop application (Tauri 2 + React)
- CLI application
- Web UI
- TLS/HTTPS support with ACME
- Authentication (Bearer token)
- Clip sharing via short URLs
- Auto-cleanup with configurable retention