Skip to content

Comments

feat(wiki-gen): implement S3 and WebDAV connectors (P0 complete)#29

Merged
TelivANT merged 2 commits intomainfrom
feat/storage-connectors-s3-webdav
Feb 21, 2026
Merged

feat(wiki-gen): implement S3 and WebDAV connectors (P0 complete)#29
TelivANT merged 2 commits intomainfrom
feat/storage-connectors-s3-webdav

Conversation

@TelivANT
Copy link
Owner

πŸ“¦ Storage Connectors - P0 Complete

βœ… Implemented (4/4)

3. S3Connector

  • AWS SDK S3 integration
  • Support for S3-compatible storage (MinIO, Wasabi, Cloudflare R2, DigitalOcean Spaces)
  • Custom endpoint support for non-AWS providers
  • Prefix-based path handling
  • Streaming reads via AWS SDK
  • Full async/await support
  • βœ… Compiles and passes checks

4. WebDavConnector

  • reqwest HTTP client
  • PROPFIND for directory listing
  • GET for file reading
  • HEAD for metadata
  • Basic authentication support
  • Compatible with εšζžœδΊ‘, Nextcloud, ownCloud, Seafile
  • βœ… Compiles and passes checks

πŸ“ Code Stats

  • s3.rs: 210 lines (S3-compatible storage)
  • webdav.rs: 180 lines (WebDAV protocol)
  • P0 Total: ~790 lines

πŸ”§ Technical Highlights

S3Connector:

  1. AWS SDK integration with custom credentials
  2. Custom endpoint support for S3-compatible services
  3. Prefix-based path resolution
  4. Proper error handling with detailed messages

WebDavConnector:

  1. HTTP method extension (PROPFIND)
  2. Basic authentication
  3. Simple XML parsing for directory listings
  4. Standard HTTP verbs (GET, HEAD)

πŸ“¦ Dependencies Added

aws-sdk-s3 = "1"
aws-config = "1"
reqwest = { version = "0.12", features = ["json"] }

🎯 P0 Status

  • βœ… LocalConnector (local filesystem)
  • βœ… GitConnector (Git repos with Token/SSH)
  • βœ… S3Connector (AWS S3 + compatible)
  • βœ… WebDavConnector (WebDAV protocol)
  • 100% P0 complete (4/4)

πŸ“Š Coverage

P0 connectors cover 80% of use cases:

  • Local development
  • Git repositories (GitHub/GitLab/Gitee)
  • Cloud object storage (AWS/MinIO/Wasabi)
  • WebDAV file sharing (εšζžœδΊ‘/Nextcloud)

πŸ§ͺ Testing

cargo test -p memoryos-wiki-gen --lib storage
cargo check -p memoryos-wiki-gen

πŸ“‹ Next Steps

P1 connectors (Week 2-3):

  • OssConnector (Alibaba Cloud)
  • CosConnector (Tencent Cloud)
  • ObsConnector (Huawei Cloud)
  • SmbConnector (Samba/CIFS)
  • NfsConnector (NFS v3/v4)
  • SftpConnector (SFTP)

πŸ“š Related

S3Connector:
- AWS SDK S3 integration
- Support for S3-compatible storage (MinIO, Wasabi, Cloudflare R2)
- Custom endpoint support
- Prefix-based path handling
- Streaming reads via AWS SDK
- Full async/await

WebDavConnector:
- reqwest HTTP client
- PROPFIND for directory listing
- GET for file reading
- HEAD for metadata
- Basic authentication support
- Compatible with εšζžœδΊ‘, Nextcloud, ownCloud, Seafile

Dependencies:
- aws-sdk-s3 = "1"
- aws-config = "1"
- reqwest = { version = "0.12", features = ["json"] }

P0 Status:
- βœ… LocalConnector
- βœ… GitConnector
- βœ… S3Connector
- βœ… WebDavConnector
- 100% P0 complete (4/4)

Code Stats:
- s3.rs: 210 lines
- webdav.rs: 180 lines
- Total P0: ~790 lines

Next: P1 connectors (OSS, COS, OBS, SMB, NFS, SFTP)
P0 Complete:
- LocalConnector βœ…
- GitConnector βœ…
- S3Connector βœ…
- WebDavConnector βœ…
- 100% P0 complete (4/4)
- ~790 lines of code

Updated:
- docs/state.json: progress 24%
- WORK_LOG.md: P0 complete, P1 starting
- docs/STORAGE_CONNECTORS.md: marked S3 + WebDAV as implemented

Coverage: 80% of use cases with P0 connectors

Next: P1 connectors (OSS, COS, OBS, SMB, NFS, SFTP)
@TelivANT TelivANT merged commit 5134ad1 into main Feb 21, 2026
3 checks passed
@TelivANT TelivANT deleted the feat/storage-connectors-s3-webdav branch February 21, 2026 03:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant