Cruisly
A next-generation cruise booking experience—offering live itineraries, ship profiles, and secure bookings in one place.
My Role
Full-Stack Web Developer
Scope
End-to-end build & deploy
Stack
Next.js, Supabase, Tailwind CSS, Cloudflare
Project Overview
My Role
- Frontend: Next.js with ISR for SEO-friendly, real-time cruise listings.
- Backend: Supabase for PostgreSQL data storage, authentication, and saved cruise management.
- Integration: Widgety API for live cruise itineraries, ship data, and media.
- Deployment: Hosted on Vercel with global CDN for fast worldwide access.
Key Features
🛳 Live Cruise Data
Real-time itineraries, pricing, and availability from the Widgety API.
📍 Destination Search
Filter cruises by location, cruise line, date, or departure port.
⭐ Saved Cruises
Bookmark favorite cruises securely in your Supabase account.
Architecture
Frontend
- Next.js with Incremental Static Regeneration for performance
- Tailwind CSS for responsive, accessible design
- Dynamic UI for itinerary and booking flows
Backend
- Supabase PostgreSQL for cruise, user, and booking data
- Supabase Auth for secure sign-up/login
- Widgety API for live cruise itineraries, ship details, and media
What I Optimised
- Reduced API load times with ISR caching and Supabase persistence.
- Minimized redundant Widgety API calls via cached responses.
- Streamlined booking and saving workflows with Supabase Auth integration.
Outcome
Tech & Tools
Next.jsSupabaseWidgety APIPostgreSQLTailwind CSSVercel