@shelby-protocol/s3-gateway 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,80 @@
1
+ # Shelby S3 Gateway
2
+
3
+ An S3-compatible API gateway for [Shelby Protocol](https://shelby.xyz) blob storage.
4
+
5
+ Use familiar S3 tools and libraries (AWS SDK, rclone, Cyberduck, DuckDB, etc.) to access blobs stored on Shelby.
6
+
7
+ ## Quick Start
8
+
9
+ 1. Create a `shelby.config.yaml` file:
10
+
11
+ ```yaml
12
+ network:
13
+ name: shelbynet
14
+ rpcEndpoint: https://api.shelbynet.shelby.xyz/shelby
15
+ aptosFullnode: https://api.shelbynet.shelby.xyz/v1
16
+ aptosIndexer: https://api.shelbynet.shelby.xyz/v1/graphql
17
+ apiKey: your-api-key
18
+
19
+ server:
20
+ port: 9000
21
+
22
+ credentials:
23
+ - accessKeyId: AKIAIOSFODNN7EXAMPLE
24
+ secretAccessKey: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
25
+
26
+ buckets:
27
+ - "0x0694a79e492d268acf0c6c0b01f42654ac050071a343ebc4226cb6717d63e4ea"
28
+ ```
29
+
30
+ 2. Start the gateway:
31
+
32
+ ```bash
33
+ npx @shelby-protocol/s3-gateway --config shelby.config.yaml
34
+ ```
35
+
36
+ 3. Connect with any S3 client:
37
+
38
+ ```bash
39
+ # Using rclone
40
+ rclone config create shelby s3 \
41
+ provider=Other \
42
+ access_key_id=AKIAIOSFODNN7EXAMPLE \
43
+ secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY \
44
+ endpoint=http://localhost:9000 \
45
+ force_path_style=true
46
+
47
+ rclone ls shelby:0x0694a79e492d268acf0c6c0b01f42654ac050071a343ebc4226cb6717d63e4ea
48
+ ```
49
+
50
+ ## CLI Options
51
+
52
+ ```
53
+ npx @shelby-protocol/s3-gateway --help
54
+
55
+ Options:
56
+ -c, --config <path> Path to config file
57
+ -p, --port <port> Port to listen on (overrides config)
58
+ -h, --help Show help message
59
+ ```
60
+
61
+ ## Supported Operations
62
+
63
+ The gateway currently supports **read operations**:
64
+
65
+ | Operation | Description |
66
+ |-----------|-------------|
67
+ | `ListBuckets` | List all configured buckets |
68
+ | `HeadBucket` | Check if a bucket exists |
69
+ | `ListObjectsV1/V2` | List objects with pagination |
70
+ | `GetObject` | Download file contents (supports Range headers) |
71
+ | `HeadObject` | Get object metadata |
72
+
73
+ ## Documentation
74
+
75
+ For full documentation, configuration options, and integration guides, visit:
76
+ https://docs.shelby.xyz/tools/s3-gateway
77
+
78
+ ## License
79
+
80
+ Apache-2.0