|
1 | | -# rBackup |
| 1 | +# rbackup |
| 2 | + |
| 3 | +**rbackup** is a fast, cross-platform, and multithreaded command-line utility written in Rust for performing incremental backups of directories. It is inspired by tools like `rsync` and `robocopy`, but designed with simplicity, portability, and localization in mind. |
| 4 | + |
| 5 | + |
| 6 | + |
| 7 | + |
| 8 | + |
| 9 | +--- |
| 10 | + |
| 11 | +## ✨ Features |
| 12 | + |
| 13 | +- 🚀 **Incremental backup** – copies only new or modified files |
| 14 | +- ⚡ **Multithreaded** – uses all CPU cores to speed up large backups |
| 15 | +- 🌍 **Multilingual support** – English and Italian (with auto-detection) |
| 16 | +- 📦 **Portable** – no installation required, single binary |
| 17 | +- 🧾 **Optional logging** – write backup reports to a file |
| 18 | +- 📊 **Progress bar** – optionally display graphical progress bar |
| 19 | +- 🤫 **Quiet mode** – suppress all output for silent operation |
| 20 | + |
| 21 | +--- |
| 22 | + |
| 23 | +## 📥 Download |
| 24 | + |
| 25 | +Precompiled binaries are available in the [Releases](https://github.com/your-username/rbackup/releases) section. |
| 26 | + |
| 27 | +| Platform | Architecture | File | |
| 28 | +|----------|--------------|------| |
| 29 | +| Windows | x86_64 | `rbackup-windows-x86_64-v0.2.0.zip` | |
| 30 | +| Linux | x86_64 | `rbackup-linux-x86_64-v0.2.0.tar.gz` | |
| 31 | +| macOS | x86_64 | `rbackup-macos-x86_64-v0.2.0.tar.gz` | |
| 32 | + |
| 33 | +> Replace `your-username` in the link above with your actual GitHub username. |
| 34 | +
|
| 35 | +--- |
| 36 | + |
| 37 | +## 🚀 Usage |
| 38 | + |
| 39 | +```sh |
| 40 | +rbackup <source> <destination> [OPTIONS] |
| 41 | +``` |
| 42 | + |
| 43 | +--- |
| 44 | + |
| 45 | +## ✅ Basic example |
| 46 | + |
| 47 | +```sh |
| 48 | +rbackup ~/Documents /mnt/backup_drive/Documents |
| 49 | +``` |
| 50 | + |
| 51 | +--- |
| 52 | + |
| 53 | +## 🧩 Options |
| 54 | + |
| 55 | +| Option | Description | |
| 56 | +| --------------------- | -------------------------------- | |
| 57 | +| `-g`, `--graph` | Show graphical progress bar | |
| 58 | +| `-q`, `--quiet` | Suppress console output | |
| 59 | +| `-t`, `--timestamp` | Prepend timestamp to messages | |
| 60 | +| `--log <FILE>` | Write output to a log file | |
| 61 | +| `-l`, `--lang <code>` | Force language (e.g. `en`, `it`) | |
| 62 | +| `-V`, `--version` | Show version | |
| 63 | +| `-h`, `--help` | Show help message | |
| 64 | + |
| 65 | +--- |
| 66 | + |
| 67 | +## 📝 Example |
| 68 | + |
| 69 | +```sh |
| 70 | +rbackup /home/alex/Projects /mnt/usb-backup -g --log backup.log --timestamp |
| 71 | +``` |
| 72 | + |
| 73 | +## 🧪 Build from source |
| 74 | + |
| 75 | +To compile rbackup yourself: |
| 76 | + |
| 77 | +```sh |
| 78 | +git clone https://github.com/your-username/rbackup.git |
| 79 | +cd rbackup |
| 80 | +cargo build --release |
| 81 | +``` |
| 82 | + |
| 83 | +For Windows, rbackup.rc will be embedded automatically in the executable. |
| 84 | + |
| 85 | +--- |
| 86 | + |
| 87 | +## 🔒 License |
| 88 | + |
| 89 | +This project is licensed under the MIT License. |
| 90 | + |
| 91 | +© 2025 Alessandro Maestri |
| 92 | + |
| 93 | +--- |
| 94 | + |
| 95 | +## 💡 Contributing |
| 96 | + |
| 97 | +Pull requests are welcome! If you’d like to add support for more languages, improve performance, or fix bugs, feel free to fork the repo and contribute. |
0 commit comments