Sia Foundation Small Grant Proposal: CoreSync-rs
Introduction
Project Name:
CoreSync-rs
Applicant Information:
ILE Labs — ILE-Labs · GitHub
We are a Rust-focused blockchain infrastructure team specializing in low-level execution environments, cryptographic tooling, and high-performance systems. Recent open-source work includes foc-devkit (Filecoin FVM testing framework), mx-tx-simulator (MultiversX transaction simulator), and stylus-debug-suite (Arbitrum Rust toolkit).
Prior Sia experience: We set up and ran a full local Sia stack — renterd, indexd, and PostgreSQL — to validate the live SDK integration path for this project. The setup process, resolved technical blockers (including the GeoIP database requirement, a binary URL patch for indexd, and the localhost vs 127.0.0.1 signature mismatch in sia_storage 0.9.1), and the complete verified integration runbook are documented here:
Describe your project.
CoreSync-rs is an open-source Rust library that implements local differential sync for decentralized storage. When a file changes, standard tools re-upload the entire file. CoreSync-rs uses content-defined chunking (FastCDC) to hash each piece locally, diffs against what the remote already has via indexd, and uploads only the bytes that are actually new. The engine hands off to the official Sia SDK for actual transport — it does not replace Sia’s networking or storage layer.
60 KB file, 10 KB append → upload ~11 KB instead of 60 KB.
The local engine is complete, tested, and wired to live Sia services via the sia-sdk feature flag.
How does the projected outcome serve the Foundation’s mission of user-owned data? What problem does your project solve?
User-owned storage must match the responsiveness of centralized cloud providers to achieve adoption. The biggest friction point for dynamic data — syncing databases, documents, or application state — is that every change triggers a full re-upload. This makes continuous sync on decentralized networks impractical for real applications.
CoreSync-rs removes that friction by computing the minimum delta payload locally before any bytes hit the network. Developers building Dropbox-style applications, backup tools, or collaborative document editors on Sia get a reusable Rust primitive that makes their storage layer efficient without requiring them to implement chunking and diffing themselves. Every byte saved in transit is a direct improvement in the user experience of applications built on user-owned infrastructure.
Are you a resident of any jurisdiction on that list? No
Will your payment bank account be located in any jurisdiction on that list? No
Grant Specifics
Amount of money requested and justification with a reasonable breakdown of expenses:
Total Requested: $9,800 USD
| Item | Amount |
|---|---|
| SDK integration hardening and indexd persistence layer | $4,500 |
| Small-file repacking module and delta batching logic | $3,500 |
| Integration documentation, examples, and test suite | $1,800 |
The core chunking and diff engine is already complete and tested. This grant funds the remaining production work: hardening the live sia-sdk integration path, completing the indexd manifest persistence layer, building the small-file repacking module, and producing integration documentation and examples for developers building on Sia.
What is the high-level architecture overview for the grant, i.e. how does your project build on Sia? What security best practices are you following?
CoreSync-rs is a local-first Rust library. It does not run a daemon, expose network ports, or handle wallets or keys. The data flow is:
Local file → FastCDC chunking → SHA-256 manifest
→ diff against indexd-stored remote manifest
→ assemble delta payload (changed chunks only)
→ sia_storage SDK → upload to Sia
→ indexd → persist updated chunk manifest
The project builds on Sia through two official integration points:
-
sia_storageSDK (sia-sdkfeature flag) — used for chunk upload to Sia Storage. Authenticated via the officialPOST /auth/connectflow. Confirmed working against a local renterd node. -
indexd — used to store and retrieve chunk manifests per file, enabling diff computation on subsequent syncs. Confirmed working against a local indexd instance (PostgreSQL-backed).
Security practices: Written entirely in safe Rust. No unsafe blocks. Operates offline until the upload step — no network access during chunking or diff computation. SHA-256 chunk hashing with integrity verification before any delta is accepted. All credentials loaded from environment variables, never hardcoded.
Architecture detail: core-sync-rs/ARCHITECTURE.md at main · ILE-Labs/core-sync-rs · GitHub
Integration detail: core-sync-rs/docs/INTEGRATION.md at main · ILE-Labs/core-sync-rs · GitHub
What are the goals of this small grant? Please provide a general timeline for completion.
Goal: Deliver a production-ready Phase 1 of CoreSync-rs — a stable open-source Rust library with a verified live integration path against Sia Storage and indexd.
Month 1:
- Complete and harden the
sia-sdklive integration path (StorageBackend and ManifestStore backed by real Sia services) - Complete the small-file repacking and delta batching module
- Run and document the full end-to-end demo with real output against live Sia services
- Deliverable:
cargo run --example sia_live_demo --features sia-sdkproduces verified differential sync output against real Sia Storage and indexd
Month 2:
- Complete integration documentation and developer examples
- Finalize test suite including live integration tests
- Submit final milestone report with benchmark data showing bandwidth savings
- Deliverable: Public GitHub release tagged v0.1.0 with full documentation, integration guide, and example applications
Who is the target user for your project?
Application developers building continuous sync, backup, or dynamic state-management tools on Sia — specifically those who need efficient handling of frequently-changing files without re-uploading unchanged data on every sync cycle.
What are your plans for this project following the grant, including development, maintenance, and adoption?
This Small Grant funds Phase 1 — the local computation engine with verified Sia integration. Following successful delivery:
- Phase 2 (Standard Grant): WASM bindings for browser-based applications, directory sync and watch mode, streaming reads for large files, and native integration examples with popular Sia ecosystem tools.
- Maintenance: The repository will remain actively maintained under MIT license. Monthly progress updates will continue on the forum beyond the grant period.
- Adoption: Integration guides targeting developers building on Sia SDKs. Community engagement via the Sia Discord to gather feedback and expand example coverage.
- Sustainability: Phase 2 grant application and potential downstream integration by teams building on Sia who need differential sync as a dependency.
Potential risks that will affect the outcome of the project:
| Risk | Mitigation |
|---|---|
sia_storage SDK API changes during development |
Pin SDK version in Cargo.toml. Monitor SiaFoundation/sia-sdk-rs releases. The trait abstraction layer means SDK changes require updating one adapter file only. |
| indexd API changes or availability | The ManifestStore trait is abstracted — any API change requires updating only src/indexd_real.rs, not the core engine. |
| Cross-platform compilation issues | GitHub Actions CI matrix covering Windows, macOS, and Linux. The sia-live HTTP compatibility path allows testing without a live stack. |
Development Information
Will all of your project’s code be open-source?
Yes. 100% open-source under the MIT license. No closed-source components. Third-party dependencies (fastcdc, sha2, serde, reqwest, sia_storage) are all appropriately open-source licensed.
Leave a link where code will be accessible for review:
Do you agree to submit monthly progress reports?
Yes.
Contact Info
Email: [email protected]
Other contact methods: Telegram @charlesCode