S5 v1: Rewrite it in Rust (Large Grant Proposal)

Progress Report (August)

What progress was made on your grant this month?

Delayed Milestones

  • The RHP4 proxy is not “production-ready” yet, but all server-side parts are now fully finished and the only thing missing is adding the s5_blobs protocol client to it and making it easier to add the proxy to a custom web app

  • s5-rs is missing complete implementations of the registry, streams, accounts and identity specs. This delay is due to them depending on the Iroh protocol API and networking which I just recently added for the s5_blobs protocol

  • The s3 store is not finished, but due to there being a completely custom one purpose-built for Sia, this is less relevant than initially planned

Adding tests to all crates is planned for the 2025-10-02 milestone, as written in the original grant proposal

What will you be working on next?

  • RHP4 web proxy: add s5 networking using Iroh for dynamic blob location requests, add http streaming support in addition to rhp4 as a fallback for older browsers (and Safari). Make it easy for devs to configure and add to their app. write documentation

  • Implement the missing specs in s5-rs

  • Implement end-to-end-encryption for the S5 file system

  • Add tests to all S5 rust crates

  • Make sure that all parts of the s5.js TypeScript are properly migrated to be compatible with s5-rs and S5 v1

1 Like