Compare commits
1
Commits
20592954f7
...
green
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0133b61944 |
@@ -11,6 +11,7 @@ A cross-platform application for customizing your cursor with gameified logic.
|
|||||||
- System tray integration with context menu
|
- System tray integration with context menu
|
||||||
- Global hotkey support
|
- Global hotkey support
|
||||||
- Steam integration for item drops
|
- Steam integration for item drops
|
||||||
|
- Tauri-based frontend with React
|
||||||
|
|
||||||
## Project Structure
|
## Project Structure
|
||||||
|
|
||||||
@@ -60,6 +61,8 @@ src/
|
|||||||
|
|
||||||
- Rust 1.70.0 or later
|
- Rust 1.70.0 or later
|
||||||
- Cargo
|
- Cargo
|
||||||
|
- Node.js 16.0.0 or later
|
||||||
|
- npm 7.0.0 or later
|
||||||
- Platform-specific dependencies:
|
- Platform-specific dependencies:
|
||||||
- Windows: None (fully supported)
|
- Windows: None (fully supported)
|
||||||
- macOS: Development in progress
|
- macOS: Development in progress
|
||||||
@@ -68,41 +71,49 @@ src/
|
|||||||
### Dependencies
|
### Dependencies
|
||||||
|
|
||||||
The application uses the following major dependencies:
|
The application uses the following major dependencies:
|
||||||
- iced 0.13.1 - GUI framework
|
- Tauri 1.6.0 - Cross-platform framework
|
||||||
- tray-icon 0.20.1 - System tray functionality
|
- React - Frontend framework
|
||||||
- image 0.24.7 - Image processing
|
- image 0.24.7 - Image processing
|
||||||
- global-hotkey 0.4.2 - Global hotkey registration
|
- winapi 0.3.9 - Windows API bindings
|
||||||
- steamworks 0.11.0 - Steam integration
|
- once_cell 1.19.0 - Lazy initialization
|
||||||
|
|
||||||
### Build Commands
|
### Build Commands
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Debug build
|
# Navigate to the frontend directory
|
||||||
cargo build
|
cd frontend
|
||||||
|
|
||||||
# Release build
|
# Install npm dependencies
|
||||||
cargo build --release
|
npm install
|
||||||
|
|
||||||
|
# Run in development mode
|
||||||
|
npm run tauri dev
|
||||||
|
|
||||||
|
# Build for production
|
||||||
|
npm run tauri build
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
1. Place your cursor PNG files in the `assets` directory (PNG format only)
|
1. Make sure you have Node.js and npm installed
|
||||||
2. Run the application using `cargo run` or the compiled executable
|
2. Navigate to the frontend directory: `cd frontend`
|
||||||
3. The application will load all PNG files from the assets directory
|
3. Install dependencies if you haven't already: `npm install`
|
||||||
4. Select a cursor from the list in the UI
|
4. Run the application in development mode: `npm run tauri dev`
|
||||||
5. The application will replace your system cursor with the selected image
|
5. The application will start with a React frontend and Rust backend
|
||||||
6. When closing the window, the application minimizes to the system tray
|
6. Use the UI to browse and select cursors
|
||||||
7. To fully exit, use the system tray menu or press the exit hotkey
|
7. The application will replace your system cursor with the selected image
|
||||||
|
8. To exit, use the "Quit" button in the application or from the system tray
|
||||||
|
|
||||||
### Custom Cursors
|
### Custom Cursors
|
||||||
|
|
||||||
The application comes with two sample cursors in the `assets` directory:
|
The application comes with sample cursors:
|
||||||
- `default.png` - A simple default cursor
|
- `default.png` - A simple default cursor
|
||||||
|
- `icon.png` - An icon cursor
|
||||||
- `red.png` - A red-colored cursor
|
- `red.png` - A red-colored cursor
|
||||||
|
|
||||||
To add your own cursors:
|
To add your own cursors:
|
||||||
1. Create PNG images with transparent backgrounds
|
1. Create PNG images with transparent backgrounds
|
||||||
2. Place them in the `assets` directory
|
2. Place them in the `frontend/src/cursors` directory
|
||||||
3. Restart the application to load the new cursors
|
3. Restart the application to load the new cursors
|
||||||
4. The cursor name in the UI will be derived from the filename
|
4. The cursor name in the UI will be derived from the filename
|
||||||
|
|
||||||
@@ -138,6 +149,27 @@ The application includes integration with the Steam API for future gameified fea
|
|||||||
- Item drop functionality is implemented but not yet active
|
- Item drop functionality is implemented but not yet active
|
||||||
- Steam must be running for this functionality to work
|
- Steam must be running for this functionality to work
|
||||||
|
|
||||||
|
## Project Structure (Tauri Version)
|
||||||
|
|
||||||
|
```
|
||||||
|
frontend/
|
||||||
|
├── src/ # React frontend code
|
||||||
|
│ ├── App.jsx # Main React component
|
||||||
|
│ ├── components/ # UI components
|
||||||
|
│ └── cursors/ # Cursor image files
|
||||||
|
├── src-tauri/ # Rust backend code
|
||||||
|
│ ├── src/ # Rust source code
|
||||||
|
│ │ ├── lib.rs # Main library code
|
||||||
|
│ │ ├── main.rs # Application entry point
|
||||||
|
│ │ └── platform/ # Platform-specific code
|
||||||
|
│ │ ├── mod.rs # Platform module exports
|
||||||
|
│ │ ├── windows/ # Windows-specific code
|
||||||
|
│ │ ├── macos/ # macOS-specific code
|
||||||
|
│ │ └── linux/ # Linux-specific code
|
||||||
|
│ └── Cargo.toml # Rust dependencies
|
||||||
|
└── package.json # npm dependencies
|
||||||
|
```
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
Contributions to Cursor Rush are welcome! Here are some ways you can contribute:
|
Contributions to Cursor Rush are welcome! Here are some ways you can contribute:
|
||||||
@@ -147,6 +179,7 @@ Contributions to Cursor Rush are welcome! Here are some ways you can contribute:
|
|||||||
- Submit pull requests with bug fixes or new features
|
- Submit pull requests with bug fixes or new features
|
||||||
- Help with documentation
|
- Help with documentation
|
||||||
- Contribute to macOS and Linux platform support
|
- Contribute to macOS and Linux platform support
|
||||||
|
- Improve the Tauri integration
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user