|
1 | | -# RoboCopy Pro |
| 1 | +<h1 align="center">🚀 RoboCopy Pro</h1> |
2 | 2 |
|
3 | | - |
4 | | - |
5 | | - |
6 | | - |
| 3 | +<p align="center"> |
| 4 | + A modern, glassmorphism GUI for Windows Robocopy |
| 5 | + <br/> |
| 6 | + <b>Fast. Safe. Beautiful.</b> |
| 7 | +</p> |
7 | 8 |
|
8 | | -A modern, glassmorphism GUI wrapper for Windows Robocopy. Built for speed, safety, and a frictionless user experience, it transforms complex command-line file operations into a seamless visual workflow. |
| 9 | +<p align="center"> |
| 10 | + <img src="https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB"/> |
| 11 | + <img src="https://img.shields.io/badge/Electron-191970?style=for-the-badge&logo=Electron&logoColor=white"/> |
| 12 | + <img src="https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=for-the-badge&logo=tailwind-css&logoColor=white"/> |
| 13 | + <img src="https://img.shields.io/badge/License-MIT-blue.svg?style=for-the-badge"/> |
| 14 | +</p> |
| 15 | + |
| 16 | +<p align="center"> |
| 17 | + <a href="#"><img src="https://img.shields.io/badge/Download-Coming Soon-blue?style=for-the-badge"/></a> |
| 18 | + <a href="#"><img src="https://img.shields.io/github/stars/your-username/your-repo?style=for-the-badge"/></a> |
| 19 | + <a href="#"><img src="https://img.shields.io/github/issues/your-username/your-repo?style=for-the-badge"/></a> |
| 20 | +</p> |
| 21 | + |
| 22 | +--- |
| 23 | + |
| 24 | +## 🎬 Demo |
| 25 | + |
| 26 | +<div align="center"> |
| 27 | + <img src="docs/demo.gif" alt="RoboCopy Pro Demo" width="800"/> |
| 28 | +</div> |
| 29 | + |
| 30 | +--- |
| 31 | + |
| 32 | +## 🖼 Screenshots |
9 | 33 |
|
10 | 34 | <div align="center"> |
11 | | - <img src="docs/screenshot-main.png" alt="RoboCopy Pro Main Interface" width="800"/> |
| 35 | + |
| 36 | +### 🧩 Setup Interface |
| 37 | +<img src="docs/screenshot-main.png" width="800"/> |
| 38 | + |
| 39 | +--- |
| 40 | + |
| 41 | +### ⚡ Running Transfer (Live) |
| 42 | +<img src="docs/screenshot-running.png" width="800"/> |
| 43 | + |
| 44 | +--- |
| 45 | + |
| 46 | +### ✅ Completed Transfer |
| 47 | +<img src="docs/screenshot-completed.png" width="800"/> |
| 48 | + |
12 | 49 | </div> |
13 | 50 |
|
14 | | -## ✨ Highlights |
15 | | -* **Frictionless UX:** Massive drag-and-drop zones for Source and Destination routing. |
16 | | -* **Non-Blocking Architecture:** The React UI thread is completely isolated from the heavy I/O Robocopy child processes, ensuring the app never freezes during massive multi-gigabyte transfers. |
17 | | -* **Live Telemetry:** Real-time Robocopy output parsing with syntax highlighting, visual progress bars, and ETA calculations. |
18 | | -* **Native Integration:** Windows Taskbar progress indicators and native Toast notifications upon completion. |
19 | | -* **Advanced Controls:** Granular control over thread counts (`/MT:n`), restartable modes (`/Z`), and directory exclusions (`/XD /XF`). |
20 | | -* **One-Click Presets:** Save and load complex configurations for recurring backup tasks. |
| 51 | +--- |
| 52 | + |
| 53 | +## ✨ Features |
| 54 | + |
| 55 | +### ⚡ Performance |
| 56 | +- Non-blocking architecture (no UI freezes during heavy transfers) |
| 57 | +- Multi-threaded copying (`/MT:n`) for maximum speed |
| 58 | +- Efficient handling of large-scale file operations |
| 59 | + |
| 60 | +### 🎯 User Experience |
| 61 | +- Massive drag-and-drop zones for Source & Destination |
| 62 | +- Clean glassmorphism UI with modern design principles |
| 63 | +- One-click presets for recurring workflows |
| 64 | + |
| 65 | +### 📊 Monitoring & Feedback |
| 66 | +- Real-time Robocopy output parsing |
| 67 | +- Live progress bars with ETA calculation |
| 68 | +- Syntax-highlighted logs for better readability |
| 69 | + |
| 70 | +### 🖥 Native Integration |
| 71 | +- Windows taskbar progress indicators |
| 72 | +- Native toast notifications on completion |
| 73 | +- Context menu integration (Explorer right-click) |
| 74 | + |
| 75 | +### 🧠 Advanced Controls |
| 76 | +- Restartable mode (`/Z`) for unstable transfers |
| 77 | +- Mirror mode (`/MIR`) for full directory sync |
| 78 | +- Custom retry logic (`/R:n /W:n`) |
| 79 | +- File & directory exclusions (`/XD /XF`) |
| 80 | + |
| 81 | +--- |
| 82 | + |
| 83 | +## 💡 Why RoboCopy Pro? |
| 84 | + |
| 85 | +Robocopy is incredibly powerful — but not user-friendly. |
| 86 | + |
| 87 | +RoboCopy Pro was built to: |
| 88 | +- Eliminate command-line complexity |
| 89 | +- Reduce risk of destructive mistakes |
| 90 | +- Provide a visual, intuitive workflow |
| 91 | +- Bring a modern UI to a legacy tool |
| 92 | + |
| 93 | +--- |
| 94 | + |
| 95 | +## 🏗 Architecture |
| 96 | + |
| 97 | +``` |
| 98 | +React UI (Renderer) |
| 99 | + ↓ |
| 100 | +Electron (Main Process) |
| 101 | + ↓ |
| 102 | +Node.js Child Process |
| 103 | + ↓ |
| 104 | +Windows Robocopy Engine |
| 105 | +``` |
| 106 | + |
| 107 | +- UI runs independently from heavy file operations |
| 108 | +- Ensures zero freezing even during multi-GB transfers |
| 109 | + |
| 110 | +--- |
21 | 111 |
|
22 | 112 | ## 🛠 Tech Stack |
23 | | -* **Frontend:** React + Vite |
24 | | -* **Styling:** Tailwind CSS (Custom Squircle & Glassmorphism UI) |
25 | | -* **Desktop Shell:** Electron |
26 | | -* **System APIs:** Native Node.js child-process execution |
| 113 | + |
| 114 | +| Layer | Technology | |
| 115 | +|------|-----------| |
| 116 | +| Frontend | React + Vite | |
| 117 | +| Styling | Tailwind CSS (Glassmorphism UI) | |
| 118 | +| Desktop Shell | Electron | |
| 119 | +| Backend | Node.js (child_process) | |
| 120 | + |
| 121 | +--- |
27 | 122 |
|
28 | 123 | ## 🚀 Getting Started |
29 | 124 |
|
30 | | -### Prerequisites |
31 | | -* Windows 10/11 |
32 | | -* Node.js 18+ (20+ recommended) |
| 125 | +### 📋 Prerequisites |
| 126 | +- Windows 10 / 11 |
| 127 | +- Node.js 18+ (20+ recommended) |
| 128 | + |
| 129 | +--- |
| 130 | + |
| 131 | +### 💻 Local Development |
33 | 132 |
|
34 | | -### Local Development |
35 | | -Clone the repository and run the development server: |
36 | 133 | ```bash |
37 | 134 | npm install |
38 | 135 | npm run dev |
39 | 136 | ``` |
40 | | -Build & Package |
41 | | -To compile the application into a standalone executable: |
42 | 137 |
|
43 | | -Bash |
| 138 | +--- |
| 139 | + |
| 140 | +## 📦 Build & Package |
| 141 | + |
| 142 | +To create a standalone executable: |
| 143 | + |
| 144 | +```bash |
44 | 145 | npm run build |
45 | 146 | npm run dist |
46 | | -Renderer assets are generated in dist/app/. |
| 147 | +``` |
| 148 | + |
| 149 | +### ⚙️ Build Outputs |
| 150 | + |
| 151 | +| Command | Output | |
| 152 | +|--------|--------| |
| 153 | +| `npm run dist:portable` | Portable `.exe` (no installation required) | |
| 154 | +| `npm run dist:installer` | Installer `.exe` (NSIS setup) | |
| 155 | + |
| 156 | +--- |
| 157 | + |
| 158 | +## 🖱 Windows Context Menu Integration |
| 159 | + |
| 160 | +The installer automatically adds a context menu option. |
| 161 | + |
| 162 | +👉 Right-click any folder → **"Transfer with RoboCopy Pro"** |
| 163 | + |
| 164 | +- Instantly opens the app |
| 165 | +- Auto-fills the selected folder as Source |
| 166 | + |
| 167 | +--- |
| 168 | + |
| 169 | +## 📖 Quick Usage Guide |
| 170 | + |
| 171 | +1. Drag & drop folders into **Source** and **Destination** |
| 172 | +2. Choose transfer mode (Copy / Move) |
| 173 | +3. Configure options: |
| 174 | + - **Mirror (`/MIR`)** – Sync directories *(⚠️ deletes extra files)* |
| 175 | + - **Resume (`/Z`)** – Restartable transfers |
| 176 | + - **Threads (`/MT:n`)** – Speed optimization |
| 177 | + - **Retries (`/R:n /W:n`)** – Error handling |
| 178 | +4. Click **Run Robocopy** |
| 179 | +5. Monitor progress in real-time |
| 180 | + |
| 181 | +--- |
| 182 | + |
| 183 | +## 🗺 Roadmap |
| 184 | + |
| 185 | +- [ ] Recent paths history dropdown |
| 186 | +- [ ] SHA-256 file verification after transfer |
| 187 | +- [ ] Advanced preset management system |
| 188 | +- [ ] Dark mode enhancements |
| 189 | +- [ ] Transfer analytics dashboard |
47 | 190 |
|
48 | | -Executables are generated in the release/ folder: |
| 191 | +--- |
49 | 192 |
|
50 | | -npm run dist:portable -> Portable .exe (No installation required) |
| 193 | +## ⚠️ Disclaimer |
51 | 194 |
|
52 | | -npm run dist:installer -> Installer .exe (NSIS) |
| 195 | +Robocopy is a powerful system utility. |
53 | 196 |
|
54 | | -🖱 Windows Context Menu Integration |
55 | | -The NSIS installer automatically adds a Windows Explorer context-menu action. Simply right-click any folder in Windows and select "Transfer with RoboCopy Pro". The app will launch with your selected folder instantly locked in as the Source. |
| 197 | +⚠️ Features like **Mirror Mode (`/MIR`) are destructive** |
| 198 | +They will delete files in the destination to match the source. |
56 | 199 |
|
57 | | -📖 Quick Usage Guide |
58 | | -Drag and drop a folder into Source and Destination. |
| 200 | +👉 Always double-check before running critical operations. |
59 | 201 |
|
60 | | -Select your Transfer Mode (Copy or Move). |
| 202 | +--- |
61 | 203 |
|
62 | | -Adjust essential options: |
| 204 | +## 🤝 Contributing |
63 | 205 |
|
64 | | -Mirror (/MIR): Mirrors source to destination (Warning: Deletes extra files in destination). |
| 206 | +Contributions are welcome! |
65 | 207 |
|
66 | | -Resume (/Z): Restartable mode for unstable network transfers. |
| 208 | +If you have ideas, improvements, or bug fixes: |
| 209 | +- Open an issue |
| 210 | +- Submit a pull request |
67 | 211 |
|
68 | | -Threads (/MT:n): Enables multi-threaded copying for high-speed I/O. |
| 212 | +--- |
69 | 213 |
|
70 | | -Retries (/R:n /W:n): Configures retry attempts and wait times for locked files. |
| 214 | +## ⭐ Support |
71 | 215 |
|
72 | | -Click Run Robocopy and monitor the live terminal. |
| 216 | +If you find this project useful, consider giving it a **star ⭐** |
| 217 | +It helps the project grow and reach more developers! |
73 | 218 |
|
74 | | -🗺 Roadmap |
75 | | -[ ] Implement Recent Paths history dropdown |
| 219 | +--- |
76 | 220 |
|
77 | | -[ ] Post-transfer cryptographic hash verification (SHA-256) |
| 221 | +## 👨💻 Author |
78 | 222 |
|
79 | | -[ ] Expanded rich-preset management |
| 223 | +**Aryan Patel** |
80 | 224 |
|
81 | | -⚠️ Disclaimer |
82 | | -Robocopy is a highly powerful system utility. Features like Mirror Mode (/MIR) are destructive and will delete files in the destination directory to match the source. Use with caution. |
| 225 | +--- |
83 | 226 |
|
84 | | -👨💻 Author |
85 | | -Aryan Patel * If you find this tool helpful or use it in your daily workflow, consider giving the repo a ⭐! |
| 227 | +## 📄 License |
86 | 228 |
|
87 | | -📄 License |
88 | | -This project is licensed under the MIT License. |
| 229 | +This project is licensed under the **MIT License** |
0 commit comments