Chrishi Beach Club
A beach bar, restaurant, and villas at Cades Bay, Nevis, with a 360° walk-through of six luxury villas.
- Status
- LandedDelivered
- Gate
- Next.js
- Route
- Beach club site
- Operator
- Built for a client
Chrishi Beach Club is a beach bar, restaurant, and set of villas at Cades Bay on Nevis. I built it on Next.js 16 and React 19, with hand-rolled CSS, Neon Postgres through Drizzle, Resend for email, and Vercel for hosting.
Pages cover the restaurant and menus, the bar, six villas (Villa Olympia, Cades Bay Watch, The Lighthouse Suite, The Beach View Suite, The Guestroom Suite, and Tropicana Suite), water sports, vehicle rentals, events, Sunday Funday, citizenship, the club's story, and a reserve and contact page.
PassengersWho it's for
People looking at the club's restaurant, bar, villas, and events at Cades Bay, plus the club itself.
On boardWhat's inside
Restaurant and menus, bar, six villas, water sports, vehicle rentals, events, Sunday Funday, citizenship, story, and reserve/contact.
All six villas have a 360° tour, 36 rooms in all: Villa Olympia 7, Cades Bay Watch 7, The Lighthouse Suite 7, The Beach View Suite 7, The Guestroom Suite 5, and Tropicana Suite 3. The club has its own six-scene tour on the home page: entry, restaurant, bar, counter, popup, and roof.
Search metadata with JSON-LD, including the club's map pin.
Google Analytics on the site.
EquipmentUnder the hood
A 360° viewer I wrote by hand
The site has 360° tours of all six villas, 36 rooms in all, plus the beach club itself, which has its own six-scene tour on the home page.
The tours run on a viewer I wrote myself in WebGL, with no tour library. Each scene is a 4096×2048 equirectangular photo shot on an Insta360.
Doorway markers move you between rooms, and there are room tabs too. You can drag or use the arrow keys to look around, zoom with + and −, and go fullscreen, with a fallback for iOS Safari. If WebGL isn't available, it falls back to a flat panorama.
Flight logTimeline
Live at chrishibeach.com.
Like what you see?Get in touch
I'm open to full-time and contract roles, remote or on-island. Happy to walk through any of this on a call.
Check in