rac-delta 🦝
rac-delta is an open delta-patching protocol made for sync builds of your apps, games, or anything you store in a folder!
This is the official SDK for Rust.
Benefits of rac-delta
- Backend agnostic: it does not depend on a concrete service (S3, Azure, SSH, signed URLs, etc.)
- Modular: almost any remote storage can be used via adapters
- Simple: an unique index archive (rdindex.json) centralices all information.
- Efficiency: supports streaming, concurrency, and uses Blake3 for fast hashing.
- Flexibility: highly customizable, chunk size, concurrency limits, reconstruction strategies...
Installation
cargo add rac-delta
Basic usage
In order to use the rac-delta SDK, you will need to create a RacDeltaClient, the main entry point of the SDK and where all the rac-delta operations are invoked.
use ;
let config = RacDeltaConfig ;
let client = new;
And a example to perform a upload to the selected storage (SSH in this case)
let remote_index_to_use: = None;
match client.pipelines.upload
Documentation
For all the details, check the full documentation.
Available in spanish too!
Contributing
Contributions are welcome!
- Fork the repository.
- Create a branch for your feature/fix (
git checkout -b feature/new-feature). - Commit your changes (
git commit -m 'Added new feature'). - Push to your branch (
git push origin feature/new-feature). - Open a Pull Request.
License
This project is licensed under the MIT License.