System Overview

SpinStream is a Cloudflare Workers-based platform for minting, registering, and managing digital music artifacts on-chain.

Stripe Checkout Worker
Authority
â–¼ â–¶
Mint Worker
Execution
â–¼
Ledger Worker
Polygon
Auth / Admin Worker
Access
OnlyUno Registry
Registry

Integration Points

FromToPurpose
Stripe WorkerMint WorkerProxy /api/upload-media and /api/mint
Stripe WorkerLedger WorkerRecord artifact hash on-chain
Mint WorkerStripe WorkerCheck access / payment status
Mint WorkerLedger WorkerSubmit on-chain record
FrontendStripe WorkerCheckout, webhooks, session confirm
FrontendMint WorkerUpload media, mint artifact
FrontendOnlyUno RegistryIngest record, query, render card

Worker Explorer

Click a worker to expand its full details.

Environment Variables

All secrets and KV bindings used across the worker fleet. Variables marked required must be set before deploying.

Deployment

Deploy order matters — Ledger and Auth workers have no upstream dependencies.

1Ledger Worker — no dependencies
2Auth / Admin Worker — no dependencies
3Mint Worker — needs Ledger URL + Stripe origin
4Stripe Checkout Worker — needs Mint URL + Ledger secrets
5OnlyUno Registry — no dependencies

Quick Commands

# Install Wrangler
npm install -g wrangler
wrangler login

# Deploy a worker (run inside its directory)
wrangler deploy

# Set a secret
wrangler secret put SECRET_NAME

# Create a KV namespace
wrangler kv:namespace create BINDING_NAME

Cloudflare Pages (this site)

SettingValue
Production branchmain
Build commandleave blank
Publish directory/ (root)

See docs/deployment.md for full step-by-step instructions.

Diagrams & Screenshots

These screenshots were part of the original Word document and show each worker's Cloudflare dashboard variable configuration. Add the image files to /assets/diagrams/ to display them here.