Skip to content

ahmadibrahim4geo/RoboTransfer

Repository files navigation

RoboTransfer Logo

RoboTransfer

Fast. Safe. Simple. Powered by Robocopy.

A modern Windows GUI for safe and fast file transfer powered by Microsoft Robocopy.

Platform: Windows .NET 8 MIT License Open Source


RoboTransfer Main Window

Features

  • Four Transfer Modes — Safe Copy, Update Only, Mirror, Move
  • Safe by Design — Strong warnings, mandatory dry-run preview for Mirror, required typed confirmation for Mirror mode
  • Root Drive Blocking — Mirror and Move modes block root drives (e.g., C:\, D:\) as destinations; Safe Copy and Update Only show a warning
  • Fully Transparent — Shows the exact Robocopy command before any execution
  • Live Progress — Real-time file-level progress with percentage tracking (every 5%) and processed progress feed
  • Failed Items Reporting — Automatic detection of failed files from Robocopy output; plain-text report with error codes and suggested actions; clickable failed counter in summary
  • Detailed Summary — Exit code interpretation (0–7 success, 8+ failure), file counts (Total, Copied, Skipped, Mismatched, Extras, Failed), bytes, speed, duration
  • Automatic Logging — Every transfer saves a Unicode log file automatically via /UNILOG
  • Bilingual UI — Full English and Arabic interface with live RTL switching
  • Modern Dark Theme — Charcoal dark gray UI inspired by Windows 11 / Fluent Design
  • Performance Tuning — Multi-threaded copying (1–128 threads), configurable retry (0–10) and wait (0–60 seconds)
  • Folder Auto-Append — Source folder name appended to destination with auto-numbering if folder exists

Transfer Modes

Mode Color Description Destructive?
Safe Copy Green Copy all files safely, no deletions No
Update Only Blue Copy new and changed files only No
Mirror Red Makes destination an exact replica of source — may delete files in destination Yes
Move Orange Copies files then deletes them from source Yes

Safety Notes

RoboTransfer is designed to be safe first. However, two transfer modes can cause permanent data loss if used carelessly.

Mirror Mode — Data Loss Risk

Mirror mode makes the destination folder an exact copy of the source. Any files in the destination that do not exist in the source will be deleted. To prevent accidents:

  • A dry-run preview is required before the real mirror — the button does not appear until the preview completes.
  • You must type the destination folder name into a confirmation text box to proceed.
  • Root drives are blocked as destinations for Mirror mode.

Move Mode — Source Deletion

Move mode deletes files from the source after they are successfully copied. This is similar to cutting-and-pasting on a large scale. To prevent accidents:

  • A checkbox confirmation is required before starting.
  • Root drives are blocked as destinations for Move mode.

General Safeguards

  • All operations are validated before execution:
    • Source and destination must be different.
    • Destination cannot be inside the source (recursion check).
    • Source inside destination with Mirror mode is rejected.
    • Root drives are blocked (Mirror/Move) or warned (Safe/Update).
  • The generated Robocopy command is always visible before you start.
  • Every operation saves a detailed Unicode log file automatically.
  • Exit codes are interpreted according to Microsoft's specification (0–7 = success, 8+ = failure).

Screenshots

Main Window — Transfer Setup

Main window with source/destination selection and transfer mode cards


Brand Board

RoboTransfer brand colors and identity

Brand Identity

Element Value
Logo Custom circular icon (230×230 PNG)
Primary Color #3B82F6 (Blue) — "Transfer"
Success Color #22C55E (Green) — Safe Copy
Warning Color #F59E0B (Orange) — Move
Danger Color #EF4444 (Red) — Mirror
Background #1C1C1E (Charcoal)
Surface #2C2C2E (Dark Gray)
Typography Segoe UI Variable, Cascadia Code (monospace)

See docs/Branding.md for full brand guidelines.

Installation

Prerequisites

Download (Recommended)

  1. Go to the Releases page.
  2. Download the latest RoboTransfer_Portable_FrameworkDependent.zip.
  3. Extract the ZIP and run RoboTransfer.exe.

A self-contained single-file version is also available (no .NET runtime required, larger file size).

Build from Source

# Clone the repository
git clone https://github.com/ahmadibrahim4geo/RoboTransfer.git
cd RoboTransfer

# Restore and build
dotnet restore
dotnet build -c Release

# Run
.\src\RoboTransfer.App\bin\Release\net8.0-windows\RoboTransfer.exe

# Publish (framework-dependent)
.\scripts\publish.ps1 -Mode FrameworkDependent

Project Structure

RoboTransfer/
├─ src/
│  └─ RoboTransfer.App/     — WPF application (.NET 8)
│     ├─ Views/             — XAML views (MainWindow, TransferView, etc.)
│     ├─ ViewModels/        — MVVM view models
│     ├─ Models/            — Domain models (TransferJob, RobocopyResult, etc.)
│     ├─ Services/          — Business logic (runner, parser, command builder)
│     └─ Resources/         — Themes, icons, logo
├─ tests/
│  └─ RoboTransfer.Tests/   — xUnit unit tests
├─ Assets_Branding/         — Logo, brand board, screenshots
├─ docs/                    — Documentation
├─ scripts/                 — Build, publish, and clean scripts
├─ .github/                 — Issue and PR templates
├─ .gitignore
├─ LICENSE
├─ CHANGELOG.md
├─ CONTRIBUTING.md
├─ SECURITY.md
└─ README.md

Documentation

Document Description
Transfer Modes Detailed explanation of each transfer mode
Safety Notes Safety rules and best practices
Branding Brand identity, colors, logo guidelines

Contributing

Contributions are welcome! Please read CONTRIBUTING.md for guidelines.

Security

If you discover a security vulnerability, please see SECURITY.md for reporting instructions.

License

This project is licensed under the MIT License. See LICENSE for details.

Credits

About

A modern Windows GUI for safe and fast file transfer powered by Microsoft Robocopy.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors