aws-sdk-s3

AWS's official, code-generated Rust client for Amazon S3

SDK
Cargo
v1.142.0
3,336stars
Apache License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
93/100Excellent
Development Activity100
Maintenance100
Community72
Maturity60
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
78/100Good
Architecture88
Code Quality84
Innovation72
Learning Curve68

aws-sdk-s3 is the official Rust client for Amazon S3, one of several hundred per-service crates published from the awslabs/aws-sdk-rust monorepo. Like every crate in that repository, it is generated from Smithy service models (via the smithy-rs code generator) rather than hand-written, giving it complete, always-current coverage of the S3 REST API’s operations, request/response types, and error variants.

The crate is built on Tokio for async execution and integrates with aws-config for credential resolution (environment variables, shared config/credentials files, IAM roles, ECS/EKS container credentials, and EC2 instance metadata), following the same client-construction pattern (aws_config::load_from_env() + Client::new(&config)) shared across every AWS Rust SDK crate. It was selected as the canonical primary package for this repository over the initially-suggested aws-sdk-bedrock because it has vastly higher adoption (over 71M monthly downloads vs. roughly 354K for aws-sdk-bedrock), reflecting S3’s status as the most widely used AWS service from Rust.

What You Get

  • A typed async Client covering every S3 REST API operation (bucket/object CRUD, multipart uploads, presigned URLs, and more)
  • Integration with aws-config for automatic credential resolution across environment variables, shared config files, IAM roles, and container/instance metadata
  • Strongly typed request builders and response structs generated from AWS’s official Smithy service model, so the API surface tracks S3’s real capabilities exactly
  • Consistent client-construction and error-handling patterns shared across all other aws-sdk-* crates in the same monorepo
  • Tokio-based async execution with full support for streaming request/response bodies

Common Use Cases

  • Uploading, downloading, and managing objects in S3 buckets from a Rust backend service
  • Building data pipelines or CLIs that read/write large objects via S3 multipart upload/download
  • Generating presigned URLs for temporary, credential-free client access to S3 objects
  • Migrating an existing AWS-integrated Rust service from a community S3 client to the officially maintained, Smithy-generated SDK

Under The Hood

Architecture: Every crate in the monorepo, including sdk/s3, is machine-generated by the smithy-rs code generator (hosted in the separate smithy-lang/smithy-rs repository) from Smithy models under aws-models/; the generated sdk/s3/src contains the Client struct, per-operation fluent builders, typed input/output structs, and error enums, all reflecting the exact shape of the S3 API version 2006-03-01. Tech Stack: Rust 2021 edition (MSRV pinned per-release, e.g. 1.94.1), async via Tokio, credential/config handling delegated to the separately-versioned aws-config crate, and dependencies like arc-swap used internally for the generated client’s shared configuration state. Code Quality: Every generated file carries a DO NOT EDIT header pointing back to the code generator, meaning correctness and quality are governed upstream in smithy-rs and the Smithy models rather than through hand-review of this repository’s generated output; the monorepo itself runs an extensive tests/ suite and a public roadmap/CODEOWNERS process reflecting direct AWS ownership. API Design: The aws_config::load_from_env().await + Client::new(&config) construction pattern, and the fluent per-operation builder style (client.list_tables().limit(10).send().await), is identical across all ~300+ generated AWS Rust SDK crates, so developer experience learned on one AWS service (e.g. S3) transfers directly to any other (DynamoDB, Bedrock, Kinesis) with no additional learning curve beyond each service’s own operation set.

Used by 9 apps in this directory

TypeScript
51%
MIT

Anarlog

Note Taking · AI Assistants · Productivity

9,087

Anarlog is an open-source, local-first AI meeting notetaker that records, transcribes, and summarizes meetings entirely on your device — no cloud lock-in, no mandatory account, and every note saved as a plain markdown file you own forever.

View details
86
Repo Health
77
Technical
69
Dependency
Built with
TypeScript51%
Rust38%
Updated today
Rust
52%
Apache 2.0

cocoindex

Data Engineering · AI Development

11,350

An incremental data indexing engine that keeps AI agent context perpetually fresh by reprocessing only what changed.

View details
87
Repo Health
85
Technical
64
Dependency
Built with
Rust52%
Python48%
Updated yesterday
Rust
41%
Other

Hook0

Devops

1,477

Open-source Webhooks-as-a-Service: deliver events to your users with auto-retry, signed payloads, and a real-time subscriber dashboard — all without building the infrastructure yourself.

View details
83
Repo Health
82
Technical
70
Dependency
Built with
Rust41%
TypeScript17%
JavaScript15%
Updated today
TypeScript
61%
EPL-2.0

Huly Platform

Project Management · Team Chat · Collaboration

27,384

Open-source all-in-one workspace that replaces Linear, Jira, Slack, and Notion for product and engineering teams.

View details
90
Repo Health
86
Technical
64
Dependency
Built with
TypeScript61%
Svelte34%
Updated 1 weeks ago
TypeScript
69%
Apache 2.0

Laminar

AI Development · Monitoring

3,180

Open-source observability platform purpose-built for AI agents — trace, evaluate, debug, and monitor at scale with SQL access and real-time replay.

View details
85
Repo Health
76
Technical
70
Dependency
Built with
TypeScript69%
Rust29%
Updated yesterday
Rust
36%
Apache 2.0

LanceDB

Databases · AI Development

11,190

Open-source, embedded vector database built on the Lance columnar format for fast multimodal search across billions of vectors, backed by Y Combinator (W23).

View details
90
Repo Health
86
Technical
72
Dependency
Built with
Rust36%
HTML30%
Python26%
Updated today
Python
74%
AGPL 3.0

OpenViking

Databases · AI Development

29,711

An open-source context database that gives AI agents a unified filesystem for memory, resources, and skills with hierarchical tiered retrieval.

View details
84
Repo Health
75
Technical
65
Dependency
Built with
Python74%
Rust14%
Updated today
Rust
50%
Apache 2.0

Vibe Kanban

AI Agents · AI Code Assistants · Project Management

27,849

A kanban board for planning work and dispatching Claude Code, Codex, Gemini CLI, and eight other coding agents into isolated git worktrees, then reviewing and merging their diffs from one UI.

View details
53
Repo Health
75
Technical
65
Dependency
Built with
Rust50%
TypeScript46%
Updated 3 months ago
Rust
97%
Other

Zed

Developer Tools · Collaboration · Code Editors

88,861

High-performance, multiplayer code editor built in Rust by the creators of Atom and Tree-sitter, with native AI integration and real-time collaboration.

View details
94
Repo Health
88
Technical
73
Dependency
Built with
Rust97%
Updated today

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search