Skip to content

s6eskand/s3s

 
 

Repository files navigation

s3s

Apache 2.0 licensed Unsafe Forbidden

S3 Service Adapter

crate version docs
s3s Crates.io Docs
s3s-aws Crates.io Docs
s3s-fs Crates.io Docs

This experimental project intends to offer an ergonomic adapter for building S3-compatible services.

s3s implements Amazon S3 REST API in the form of a generic hyper service. S3-compatible services can focus on the S3 API itself and don't have to care about the HTTP layer.

s3s-aws provides useful types and integration with aws-sdk-s3.

s3s-fs implements the S3 API based on file system, as a sample implementation. It is designed for integration testing. DO NOT USE IT IN PRODUCTION.

How it works

architecture diagram

The diagram above shows how s3s works.

s3s converts HTTP requests to operation inputs before calling the user-defined service.

s3s converts operation outputs or errors to HTTP responses after calling the user-defined service.

The data types, serialization and deserialization are generated from the smithy model in aws-sdk-rust repository, with some manual hacks.

Contributing

About

S3 Service Adapter

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 99.8%
  • Other 0.2%