Updated README

This commit is contained in:
2025-05-11 18:52:52 -05:00
parent a92ef1e07c
commit 2e71cd8b9e
+86 -16
View File
@@ -6,8 +6,11 @@ A cross-platform application for customizing your cursor with gameified logic.
- Replace the system cursor with custom PNG images - Replace the system cursor with custom PNG images
- Minimize to system tray for background operation - Minimize to system tray for background operation
- Cross-platform support (Windows, macOS, Linux) - Windows support (macOS and Linux support in development)
- Steam integration - Optimized rendering with low CPU usage
- System tray integration with context menu
- Global hotkey support
- Steam integration for item drops
## Project Structure ## Project Structure
@@ -28,12 +31,19 @@ src/
│ │ ├── mod.rs # Windows module exports │ │ ├── mod.rs # Windows module exports
│ │ ├── types.rs # Windows type definitions │ │ ├── types.rs # Windows type definitions
│ │ ├── state.rs # Windows state management │ │ ├── state.rs # Windows state management
│ │ ├── cursor.rs # Windows cursor handling │ │ └── cursor.rs # Windows cursor handling
│ │ ├── window.rs # Windows window management │ ├── macos/ # macOS-specific code (in development)
│ │ └── hook.rs # Windows mouse hook handling │ │ ├── mod.rs # macOS module exports
│ ├── macos.rs # macOS-specific code │ │ ├── state.rs # macOS state management
│ ├── linux.rs # Linux-specific code │ │ └── cursor.rs # macOS cursor handling
│ └── unsupported.rs # Fallback for unsupported platforms │ ├── linux/ # Linux-specific code (in development)
│ │ ├── mod.rs # Linux module exports
│ │ ├── state.rs # Linux state management
│ │ └── cursor.rs # Linux cursor handling
│ └── unsupported/ # Fallback for unsupported platforms
│ ├── mod.rs # Unsupported module exports
│ ├── state.rs # Unsupported state management
│ └── cursor.rs # Unsupported cursor handling
├── integrations/ # External integrations ├── integrations/ # External integrations
│ ├── mod.rs # Integrations module exports │ ├── mod.rs # Integrations module exports
│ └── steam.rs # Steam integration │ └── steam.rs # Steam integration
@@ -50,6 +60,19 @@ src/
- Rust 1.70.0 or later - Rust 1.70.0 or later
- Cargo - Cargo
- Platform-specific dependencies:
- Windows: None (fully supported)
- macOS: Development in progress
- Linux: Development in progress
### Dependencies
The application uses the following major dependencies:
- iced 0.13.1 - GUI framework
- tray-icon 0.20.1 - System tray functionality
- image 0.24.7 - Image processing
- global-hotkey 0.4.2 - Global hotkey registration
- steamworks 0.11.0 - Steam integration
### Build Commands ### Build Commands
@@ -63,21 +86,68 @@ cargo build --release
## Usage ## Usage
1. Place your cursor PNG files in the `assets` directory 1. Place your cursor PNG files in the `assets` directory (PNG format only)
2. Run the application 2. Run the application using `cargo run` or the compiled executable
3. Select a cursor from the list 3. The application will load all PNG files from the assets directory
4. Press Ctrl+Shift+F12 to exit the application 4. Select a cursor from the list in the UI
5. The application will replace your system cursor with the selected image
6. When closing the window, the application minimizes to the system tray
7. To fully exit, use the system tray menu or press the exit hotkey
### Custom Cursors
The application comes with two sample cursors in the `assets` directory:
- `default.png` - A simple default cursor
- `red.png` - A red-colored cursor
To add your own cursors:
1. Create PNG images with transparent backgrounds
2. Place them in the `assets` directory
3. Restart the application to load the new cursors
4. The cursor name in the UI will be derived from the filename
## Hotkeys ## Hotkeys
- Ctrl+Shift+F12: Exit the application - Ctrl+Shift+F12: Exit the application (restores original system cursor)
- If this hotkey fails, the application will try to use Ctrl+Alt+F12 or F12 as fallbacks
## System Tray ## System Tray
- Left-click: Show the application window - Left-click: Show the application window
- Right-click: Open the context menu - Right-click: Open the context menu with the following options:
- Next cursor: Switch to the next cursor - Next cursor: Switch to the next cursor in the list
- Show window: Show the application window - Show window: Show the application window
- Quit: Exit the application - Quit: Exit the application and restore the original cursor
## Performance
- The application uses optimized rendering techniques to minimize CPU usage
- On Windows, it uses the Windows API to efficiently replace system cursors
- The application uses event-driven cursor updates instead of polling when possible
- Cursor images are cached to improve performance when switching between cursors
## Previously Fixed Issues
The following issues have been addressed in recent updates:
- Task Manager compatibility: The application now properly handles elevated applications
- System tray menu stability: Fixed issues with the tray menu disappearing when mousing over it
## Steam Integration
The application includes integration with the Steam API for future gameified features:
- Item drop functionality is implemented but not yet active
- Steam must be running for this functionality to work
## Contributing
Contributions to Cursor Rush are welcome! Here are some ways you can contribute:
- Report bugs and issues
- Suggest new features or improvements
- Submit pull requests with bug fixes or new features
- Help with documentation
- Contribute to macOS and Linux platform support
## License
This project is currently in development and does not yet have a specified license. A license will be added in a future update.