Hello, object store: it's just a bucket

An object store is a flat map from a key string to an immutable blob of bytes that you PUT once and GET back forever — and 'forever' and 'infinitely' are promises the machinery underneath has to earn.

Scene 01

Hello, object store: it's just a bucket

  1. Watch
  2. Try it
  3. Predict
  4. Capture
clientPUT(key, bytes)GET(key)PUTGETbucketflat namespace — no folder tree3 objectsempty bucketpeek inside OFF
What to watch for

A client stores some bytes under a name, then asks for that name back later. Watch the box on the right fill up, then hand the same bytes back. That box is the whole product — for now it looks like magic.

Continue unlocks when the animation finishes.
Implementation

Highlighted lines are the ones running in the diagram right now.

Client.put
write some bytes under a key into a bucket
# store bytes under a name; no folder is created
s3.put_object(bucket, key, bytes)
# key is one flat string: "logs/2026/app.log" != a path
Client.get
read exactly those bytes back by key
# returns the exact bytes last stored under key
bytes = s3.get_object(bucket, key)

Where this sits in Build an S3-style distributed object store

Scene 01 of 12, in the The stakes act — What an object store promises — and the durability problem.. Bucket, object, key, PUT, GET — the flat key→bytes model, before we earn the word "forever."

Up next. If 'forever' is a promise and not a fact, the first thing it has to survive is the hardware underneath — and that hardware is millions of disks that are failing right now.

All 12 scenes in Build an S3-style distributed object store · Every curriculum

Built with Arqly
Every scene in Build an S3-style distributed object store builds on the one before it.All 12 Build an S3-style distributed object store scenes