#storage #cloud-storage #communication #provider #storage-service #amazon-s3 #google-cloud

remi

๐Ÿปโ€โ„๏ธ๐Ÿงถ Robust, and simple asynchronous Rust crate to handle storage-related communications with different storage providers

19 releases (6 breaking)

new 0.7.1 Apr 28, 2024
0.6.3 Feb 19, 2024
0.4.3 Nov 25, 2023
0.3.0 Jul 26, 2023
0.1.4 Feb 11, 2023

#13 in #cloud-storage

Download history 43/week @ 2024-01-12 23/week @ 2024-01-19 185/week @ 2024-01-26 56/week @ 2024-02-02 23/week @ 2024-02-09 1068/week @ 2024-02-16 238/week @ 2024-02-23 243/week @ 2024-03-01 189/week @ 2024-03-08 144/week @ 2024-03-15 273/week @ 2024-03-22 130/week @ 2024-03-29 93/week @ 2024-04-05 684/week @ 2024-04-12 61/week @ 2024-04-19

1,002 downloads per month
Used in 4 crates

MIT license

23KB
139 lines

๐Ÿปโ€โ„๏ธ๐Ÿงถ Remi (Rust Edition)

Robust, and simple asynchronous Rust crate to handle storage-related communications with different storage providers.

v0.7.1 | ๐Ÿ“œ Documentation

remi-rs is a Rust port of Noelware's Java-based Remi for the Rust programming language. It provides a easy way to implement storage-related communications with different storage providers like Amazon S3, Google Cloud Storage, Azure Blob Storage, and more.

Noelware has ported the Java-based Remi libraries since we use Kotlin and Rust heavily in our products and services, so it made sense to have both support for Remi in Java and Rust.

[!NOTE] As of the v0.5 release, remi-rs will be our main priority. Java version is no longer maintained by the Noelware team.

[!WARNING] These crates are highly experimental and shouldn't be used in production environments yet as they are still v0. While these crates are in our products, it is for testing them and see how they do in our environments.

remi-rs is somewhat experimental, the only Remi crate that is finalized is the local filesystem and Amazon S3, as that is more tested within Noelware's Rust applications.

Supported

Unsupported

  • Oracle Cloud Infrastructure Object Storage: Use the remi-s3 crate instead as it supported a S3-compatible API.
  • Digital Ocean Spaces: You can use the S3 storage service since it has a S3-compatible API
  • Google Cloud Storage: Plan to do it soon when there is an officially maintained Google Cloud SDK that is reliable or a community-maintained version can be present if wished.
  • Alibaba Cloud OSS Storage
  • Tencent Cloud COS Storage
  • OpenStack Object Storage
  • Baidu Cloud BOS Storage
  • Netease Cloud NOS Storage

You can create your own community crate with the remi crate.

Usage

As this library is asynchronously only, you will need to configure an async runtime! Us at Noelware use Tokio, but using async-std is experimental and things might break.

The main crate (remi) since v0.5.0 and above cleans up the code from remi-core and is migrated to that library instead to make more sense out of it, essentially, remi-core has been decommissioned since the v0.5 release.

Examples for each crate can be ran with cargo run --package [crate-name] --example [example-name] and will live in crates/{crate-name}/examples.

License

remi-rs is released under the MIT License with love by Noelware. :3

Dependencies

~0.4โ€“1MB
~21K SLoC