01Case study
Golden Land
Real Estate
Solo build that migrated a real-estate platform off a legacy CMS with zero data loss: 7,953 listings, 57 agents, 37K+ images. Public listings plus a full admin dashboard, with image uploads wired straight to Cloudflare R2.


02Overview
The problem
Golden Land ran on an aging ApostropheCMS platform, with years of real inventory locked inside it. The stack was holding the business back, but the data was too valuable to lose.
The goal was a full rebuild in Next.js that carried the entire legacy dataset across intact, then removed every technical bottleneck between a staff member writing a listing and a buyer finding it.
03What was built
01
Legacy migration
Moved the entire dataset off an aging ApostropheCMS platform with zero data loss: 7,953 properties, 57 agents, and 37K+ images.
02
Property listings
A complete browsable catalogue with property and agent detail pages — buyers find the right property without friction.
03
Staff admin dashboard
One internal dashboard where staff manage listings, agents, and contacts, so a listing goes from draft to live without touching a server.
04
Media pipeline
Images upload directly to Cloudflare R2, bypassing Vercel's upload-size limit entirely. No storage ceiling, no redeployment.
04The stack
- next.js
- react
- typescript
- cloudflare r2