Reorganize codebase into modular structure
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
# Cursor Rush
|
||||
|
||||
A cross-platform application for customizing your cursor with gameified logic.
|
||||
|
||||
## Features
|
||||
|
||||
- Replace the system cursor with custom PNG images
|
||||
- Minimize to system tray for background operation
|
||||
- Cross-platform support (Windows, macOS, Linux)
|
||||
- Steam integration
|
||||
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
src/
|
||||
├── app/ # Application core logic
|
||||
│ ├── mod.rs # Main app module exports
|
||||
│ ├── state.rs # Application state management
|
||||
│ ├── messages.rs # Message definitions
|
||||
│ └── cursor.rs # Cursor-related functionality
|
||||
├── ui/ # User interface components
|
||||
│ ├── mod.rs # UI module exports
|
||||
│ ├── view.rs # View rendering logic
|
||||
│ └── tray.rs # System tray functionality
|
||||
├── platform/ # Platform-specific implementations
|
||||
│ ├── mod.rs # Platform module exports
|
||||
│ ├── windows/ # Windows-specific code
|
||||
│ │ ├── mod.rs # Windows module exports
|
||||
│ │ ├── types.rs # Windows type definitions
|
||||
│ │ ├── state.rs # Windows state management
|
||||
│ │ ├── cursor.rs # Windows cursor handling
|
||||
│ │ ├── window.rs # Windows window management
|
||||
│ │ └── hook.rs # Windows mouse hook handling
|
||||
│ ├── macos.rs # macOS-specific code
|
||||
│ ├── linux.rs # Linux-specific code
|
||||
│ └── unsupported.rs # Fallback for unsupported platforms
|
||||
├── integrations/ # External integrations
|
||||
│ ├── mod.rs # Integrations module exports
|
||||
│ └── steam.rs # Steam integration
|
||||
├── utils/ # Utility functions and helpers
|
||||
│ ├── mod.rs # Utils module exports
|
||||
│ ├── config.rs # Configuration management
|
||||
│ └── logging.rs # Logging utilities
|
||||
└── main.rs # Application entry point
|
||||
```
|
||||
|
||||
## Building
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Rust 1.70.0 or later
|
||||
- Cargo
|
||||
|
||||
### Build Commands
|
||||
|
||||
```bash
|
||||
# Debug build
|
||||
cargo build
|
||||
|
||||
# Release build
|
||||
cargo build --release
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
1. Place your cursor PNG files in the `assets` directory
|
||||
2. Run the application
|
||||
3. Select a cursor from the list
|
||||
4. Press Ctrl+Shift+F12 to exit the application
|
||||
|
||||
## Hotkeys
|
||||
|
||||
- Ctrl+Shift+F12: Exit the application
|
||||
|
||||
## System Tray
|
||||
|
||||
- Left-click: Show the application window
|
||||
- Right-click: Open the context menu
|
||||
- Next cursor: Switch to the next cursor
|
||||
- Show window: Show the application window
|
||||
- Quit: Exit the application
|
||||
|
||||
|
||||
Reference in New Issue
Block a user