Ricardo Reyes
← Home

Giraux's media platform

File manager, CDN and 360° spin viewer on Cloudflare Workers and R2. Built for Giraux Fine Jewelry in 2026.

476,851
files migrated
46 GB
of product media
97%
smaller spin-viewer page weight
93%
lower recent bills vs. planned vendor price*

*Four Cloudflare invoices issued July to October 2026 averaged $6.20, compared with the planned $89/month Sirv price. Development and maintenance time are separate. See the calculation and limits.

The problem

Giraux kept its product media on Sirv. The spin viewer loaded large image files, and our plan was about to move from $59 to $89 a month. The owners wanted another option.

Build or renew

I proposed building our own platform on Cloudflare. One Worker could serve the staff tools and public CDN, with R2 for storage. The tradeoff was taking responsibility for the software and its maintenance.

The migration ran through a throttled proxy that stayed inside Sirv's rate limits, resumable from a checkpoint, so a failed run picked up where it stopped instead of starting the 46 GB over.

What shipped

The file manager: a sidebar with upload, new folder, sort and view controls, and a grid of a diamond's spin frames with its .spin manifest
The file manager in May 2026. One diamond's 120 spin frames and the .spin manifest that sequences them.

media.giraux.com is the staff side, behind Cloudflare Access. It handles uploads, folders, search, bulk selection and CSV export. cdn.giraux.com serves the product media that giraux.com and RapNet listings embed.

Pre-generated WebP images cut measured spin-viewer page weight by 97%. The comparison is transferred page payload, 79.6 MB before and 2.5 MB after.

Diamond E5873
Ruby 9RU31B

The same viewer giraux.com and RapNet embed, 120 frames each at 1000px. Drag them.

What staff said

After the switch, staff said bulk edits were harder than in Sirv. Fair. I reworked selection across folders, bulk move/copy/rename and CSV export around their feedback.

They use it daily now.

Results

The four recent Cloudflare invoices averaged 93% below the planned monthly vendor price. A full keep-or-switch decision also needs maintenance time, switching costs and equivalent service capacity. I've put those assumptions in a separate technology-cost model.

Staff manage the library daily, and giraux.com and RapNet listings serve its spins. The production code belongs to Giraux; the cost model and its source are available to explore.