Skip to content

Add Vercel Blob, Google Cloud Storage, and Azure Blob storage providers#144

Open
kisernl wants to merge 8 commits into
masterfrom
add-storage-providers
Open

Add Vercel Blob, Google Cloud Storage, and Azure Blob storage providers#144
kisernl wants to merge 8 commits into
masterfrom
add-storage-providers

Conversation

@kisernl

@kisernl kisernl commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator

Add Vercel Blob, Google Cloud Storage, and Azure Blob storage providers

Adds three new storage providers to the benchmark suite, bringing the lineup to six (AWS S3, Cloudflare R2, Tigris, Vercel Blob, GCS, Azure Blob).

What's included

  • Vercel Blob (vercel-blob) — via @vercel/blob + @storagesdk/adapters
  • Google Cloud Storage (gcs) — via @google-cloud/storage
  • Azure Blob Storage (azure-blob) — via @azure/storage-blob

Changes

  • src/storage/providers.ts — register the three providers with their adapters, buckets, and requiredEnvVars
  • src/storage/generate-svg.ts — friendly display names for the new providers
  • .github/workflows/storage-benchmarks.yml — add the three providers to the benchmark matrix and wire their secrets into the run step
  • package.json / package-lock.json — add @vercel/blob, @google-cloud/storage, @azure/storage-blob
  • env.example — document the new env vars

kisernl added 3 commits June 23, 2026 11:40
Add Vercel Blob as a fourth storage benchmark provider alongside
AWS S3, Cloudflare R2, and Tigris.

- Register vercel-blob in storage providers list (BLOB_READ_WRITE_TOKEN,
  optional VERCEL_BLOB_BUCKET) using the StorageSDK vercel adapter
- Add @vercel/blob dependency
- Include vercel-blob in the storage-benchmarks CI matrix and wire up
  BLOB_READ_WRITE_TOKEN / VERCEL_BLOB_BUCKET secrets
- Map vercel-blob to the "Vercel Blob" display name in SVG generation
  and the CI results table
- Document the new env vars in env.example
Register azure-blob in the storage providers list using the StorageSDK
azure adapter (AZURE_ACCOUNT_NAME, AZURE_ACCOUNT_KEY, AZURE_CONTAINER),
add the @azure/storage-blob dependency, include azure-blob in the CI
matrix with its secrets, map it to "Azure Blob Storage" in SVG/table
display names, and document the env vars in env.example.
@open-cla

open-cla Bot commented Jun 23, 2026

Copy link
Copy Markdown

Contributor License Agreement

All contributors are covered by a CLA.

@github-actions

github-actions Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Browser Benchmark Results

# Provider Score Create Connect Navigate Release Total Status
1 Kernel 97.4 0.02s 0.09s 0.13s 0.04s 0.33s 10/10
2 Browserbase 92.6 0.23s 0.12s 0.12s 0.13s 0.62s 10/10
3 Hyperbrowser 87.3 0.38s 0.18s 0.20s 0.10s 0.89s 10/10
4 Steel 0.0 0.00s 0.00s 0.00s 0.00s 0.00s 0/10

View full run · SVG available as build artifact

@github-actions

github-actions Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Sandbox Benchmark Results

Sequential

# Provider Score Median TTI P95 P99 Status
1 isorun 99.6 0.03s 0.07s 0.07s 10/10
2 northflank 98.2 0.16s 0.22s 0.22s 10/10
3 declaw 98.0 0.16s 0.24s 0.24s 10/10
4 tensorlake 97.2 0.24s 0.35s 0.35s 10/10
5 upstash 97.0 0.26s 0.35s 0.35s 10/10
6 daytona 95.7 0.29s 0.62s 0.62s 10/10
7 blaxel 94.7 0.49s 0.59s 0.59s 10/10
8 modal 93.5 0.56s 0.78s 0.78s 10/10
9 vercel 92.1 0.61s 1.06s 1.06s 10/10
10 e2b 91.5 0.51s 1.36s 1.36s 10/10
11 archil 84.4 1.48s 1.68s 1.68s 10/10
12 runloop 83.4 0.64s 3.19s 3.19s 10/10
13 hopx 82.1 1.75s 1.84s 1.84s 10/10
14 codesandbox 72.3 2.61s 3.01s 3.01s 10/10
15 cloudflare 63.0 3.00s 4.73s 4.73s 10/10

Staggered

# Provider Score Median TTI P95 P99 Status
1 isorun 99.7 0.03s 0.04s 0.04s 10/10
2 northflank 98.4 0.16s 0.17s 0.17s 10/10
3 declaw 98.0 0.17s 0.24s 0.24s 10/10
4 tensorlake 97.7 0.23s 0.24s 0.24s 10/10
5 upstash 96.5 0.29s 0.43s 0.43s 10/10
6 daytona 95.2 0.23s 0.85s 0.85s 10/10
7 blaxel 94.3 0.53s 0.62s 0.62s 10/10
8 e2b 94.0 0.56s 0.67s 0.67s 10/10
9 modal 93.8 0.55s 0.74s 0.74s 10/10
10 vercel 93.0 0.59s 0.86s 0.86s 10/10
11 archil 85.8 1.35s 1.52s 1.52s 10/10
12 hopx 82.6 1.62s 1.92s 1.92s 10/10
13 codesandbox 72.8 2.70s 2.76s 2.76s 10/10
14 runloop 70.1 2.76s 3.33s 3.33s 10/10
15 cloudflare 37.0 3.83s 17.74s 17.74s 10/10

Burst

# Provider Score Median TTI P95 P99 Status
1 isorun 99.7 0.03s 0.03s 0.03s 10/10
2 northflank 97.7 0.17s 0.31s 0.31s 10/10
3 daytona 96.5 0.26s 0.49s 0.49s 10/10
4 tensorlake 96.2 0.30s 0.50s 0.50s 10/10
5 declaw 94.9 0.49s 0.55s 0.55s 10/10
6 blaxel 94.4 0.55s 0.57s 0.57s 10/10
7 upstash 94.1 0.46s 0.78s 0.78s 10/10
8 e2b 93.8 0.51s 0.78s 0.78s 10/10
9 modal 93.6 0.61s 0.69s 0.69s 10/10
10 vercel 92.4 0.67s 0.89s 0.89s 10/10
11 archil 85.7 1.39s 1.49s 1.49s 10/10
12 hopx 77.8 2.05s 2.48s 2.48s 10/10
13 runloop 69.4 3.04s 3.08s 3.08s 10/10
14 codesandbox 65.8 3.14s 3.84s 3.84s 10/10
15 cloudflare 32.9 4.51s 24.65s 24.65s 10/10

View full run · SVGs available as build artifacts

@github-actions

github-actions Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Storage Benchmark Results

1MB Files

# Provider Score Download Throughput Upload Status
1 Azure Blob Storage 97.3 0.02s 471.1 Mbps 0.02s 100/100
2 Tigris 96.5 0.02s 341.0 Mbps 0.07s 100/100
3 AWS S3 95.6 0.05s 169.9 Mbps 0.06s 100/100
4 Vercel Blob 95.3 0.06s 138.8 Mbps 0.14s 100/100
5 Cloudflare R2 94.7 0.11s 76.9 Mbps 0.22s 100/100

4MB Files

# Provider Score Download Throughput Upload Status
1 Azure Blob Storage 97.9 0.05s 629.8 Mbps 0.06s 100/100
2 AWS S3 96.4 0.08s 400.4 Mbps 0.21s 100/100
3 Tigris 96.2 0.10s 343.5 Mbps 0.14s 100/100
4 Vercel Blob 95.6 0.14s 242.9 Mbps 0.19s 100/100
5 Cloudflare R2 94.6 0.22s 155.7 Mbps 0.40s 100/100

10MB Files

# Provider Score Download Throughput Upload Status
1 Azure Blob Storage 96.8 0.17s 484.1 Mbps 0.10s 100/100
2 Tigris 95.9 0.21s 391.6 Mbps 0.37s 100/100
3 Vercel Blob 95.0 0.34s 250.3 Mbps 0.30s 100/100
4 Cloudflare R2 94.0 0.36s 236.2 Mbps 0.89s 100/100
5 AWS S3 92.2 0.54s 156.8 Mbps 0.48s 100/100

16MB Files

# Provider Score Download Throughput Upload Status
1 Azure Blob Storage 96.9 0.25s 544.1 Mbps 0.13s 100/100
2 Tigris 95.2 0.35s 383.7 Mbps 0.41s 100/100
3 Vercel Blob 94.1 0.58s 233.1 Mbps 0.45s 100/100
4 Cloudflare R2 93.4 0.58s 229.6 Mbps 0.96s 100/100
5 AWS S3 90.5 1.40s 96.1 Mbps 0.50s 100/100

View full run · SVGs available as build artifacts

Private access is a gated Vercel feature and was rejected with
"Access denied" on stores without it enabled, failing every
iteration. Public is the CDN-first default and works on all plans.
@github-actions

github-actions Bot commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Browser Throughput Benchmark Results

# Provider Score APS (med) Task (med) Task (p95) Screenshot Status
1 Kernel 56.9 4.07/s 12.28s 13.56s 296ms 3/3
2 Browserbase 50.5 3.49/s 14.31s 17.14s 228ms 3/3
3 Hyperbrowser 48.6 3.21/s 15.58s 16.67s 383ms 3/3
4 Steel 23.4 1.78/s 28.07s 31.12s 635ms 3/3

View full run · SVG available as build artifact

Comment thread .github/workflows/storage-benchmarks.yml
@superagent-security superagent-security Bot added the pr:flagged PR flagged for review by security analysis. label Jun 23, 2026

@superagent-security superagent-security Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Superagent found 2 security concern(s).

Comment thread .github/workflows/storage-benchmarks.yml
Comment thread .github/workflows/storage-benchmarks.yml
@superagent-security superagent-security Bot removed the pr:flagged PR flagged for review by security analysis. label Jun 23, 2026
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