A lightweight, cross-platform clipboard manager built with Tauri and React. Clipray provides a seamless clipboard history experience similar to Windows' "Windows + V" functionality, but available on Windows, macOS, and Linux.
- π Clipboard History: Automatically saves text and image clipboard content
- β‘ Quick Access: Invoke with customizable global hotkeys (default:
Ctrl+Shift+V) - π Smart Search: Filter clipboard history with real-time search
- π Pin Items: Mark important items as favorites to prevent auto-deletion
- πΌοΈ Image Support: Store and preview clipboard images
- π¨ Theme Support: Multiple built-in themes for personalization
- βοΈ Configurable: Customize history limit, hotkeys, and appearance
- π Privacy-First: All data stored locally, no external data transmission
- π Cross-Platform: Native support for Windows, macOS, and Linux
Visit the Releases page to download the latest version for your platform:
- Windows:
clipray-setup.exe - macOS:
clipray.dmg - Linux:
clipray.AppImageorclipray.deb
- Clone the repository:
git clone https://github.com/yourusername/clipray.git
cd clipray- Install dependencies:
npm install- Build the application:
npm run tauri --releaseThe built application will be available in src-tauri/target/release/bundle/.
- Start Clipray: Launch the application (it will run in the background)
- Copy Content: Copy text or images as usual (
Ctrl+C/Cmd+C) - Access History: Press
Ctrl+Shift+V(or your configured hotkey) - Select Item: Use arrow keys or click to select from history
- Paste: Press
Enteror click to paste the selected item
| Shortcut | Action |
|---|---|
Ctrl+Shift+V |
Open clipboard history |
β/β |
Navigate through items |
Enter |
Paste selected item |
Delete |
Delete selected item |
Ctrl+P |
Pin/unpin selected item |
Escape |
Close window |
Ctrl+I |
Open settings |
Access settings by pressing Ctrl+S or clicking the gear icon:
- History Limit: Set maximum number of items to store (default: 50)
- Global Hotkey: Customize the activation shortcut
- Theme: Choose from available themes
- Auto-start: Enable/disable startup with system
- Clone and install dependencies:
git clone https://github.com/yourusername/clipray.git
cd clipray
npm install- Start development server:
npm run tauri devclipray/
βββ src/ # React frontend
β βββ components/ # UI components
β βββ hooks/ # Custom React hooks
β βββ types/ # TypeScript type definitions
β βββ utils/ # Utility functions
βββ src-tauri/ # Rust backend
β βββ src/libs/ # Core functionality
β β βββ clipboard.rs # Clipboard monitoring
β β βββ database.rs # SQLite database
β β βββ commands.rs # Tauri commands
β βββ tauri.conf.json # Tauri configuration
βββ package.json # Node.js dependencies
npm run dev- Start Vite development servernpm run build- Build frontend for productionnpm run tauri dev- Start Tauri development modenpm run build:release- Build release version
npm run test- Run all tests
We welcome contributions! Please follow these guidelines:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes
- Test thoroughly
- Commit with clear messages:
git commit -m 'Add amazing feature' - Push to your fork:
git push origin feature/amazing-feature - Open a Pull Request
- Follow the existing code style
- Write clear commit messages
- Add tests for new features
- Update documentation as needed
- Ensure cross-platform compatibility
When reporting bugs, please include:
- Operating system and version
- Clipray version
- Steps to reproduce
- Expected vs actual behavior
- Screenshots (if applicable)
We love new ideas! Please:
- Check existing issues first
- Describe the feature clearly
- Explain the use case
- Consider implementation complexity
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Tauri for cross-platform desktop apps
- UI powered by React and TypeScript
- Icons from Lucide
- Database powered by SQLite
Made with β€οΈ by the Clipray team