page:guides:hono:object client

Configure S3-compatible access for Hono

Summary

Object storage client for a Hono app on Ample. Verified on Hono: bucket credentials delivered as encrypted S3_* environment variables and a validated PutObject/GetObject round-trip linked to a database row (upload=ok linked=ok). Build and start: npm install and npm run start with @hono/node-server on the node-22 template.

Representative Queries

Resource Requirements

Infrastructure Requirements

  1. Compute
    • Status: verified
    • Summary: Apps run in isolated x86_64 Firecracker microVMs that auto-pause when idle and wake on request; sizes are the priced VM sizes.
    • Learn more
  2. S3-compatible object storage
    • Status: verified
    • Summary: Buckets are S3-compatible with issued credentials; PutObject and GetObject are verified by canary. Other S3 operations are not verified.
    • Learn more

Prerequisites

Workflow Steps

  1. Build and start

    npm install and npm run start with @hono/node-server on the node-22 template; the server must bind 0.0.0.0 on PORT.
  2. Create the bucket and pass its credentials

    Create it once with ample bucket create, then pass endpoint, region, bucket and keys with --env; use path-style addressing.
    ample deploy . --name  --public --env S3_ENDPOINT=... --env S3_REGION=... --env S3_BUCKET=... --env S3_ACCESS_KEY_ID=... --env S3_SECRET_ACCESS_KEY=...  
    
  3. Verify

    Fetch the live URL and /p/browser-file-uploads on the example; on failure read the build and runtime logs.
    ample logs  --kind build  
    

Limitations

Cost Estimate

Evidence Summary

Next Actions