Projects

WanderNest

A modern hostel booking platform built with Next.js 14+, featuring room bookings, experiences, Stripe payments, and an admin panel. It provides a seamless experience for both travelers looking for their next adventure and administrators managing properties.

Jun 11, 2026Live
Next.jsReactTypeScriptSupabaseStripeTailwind CSS

Overview

WanderNest 🏠

WanderNest is a comprehensive hostel booking platform for people who want:

  • Easy property discovery and room booking
  • Local tours and experiences integration
  • Secure and seamless payments
  • Full-featured admin panel for property management
  • A modern, responsive mobile-first experience

Key Features

  • Property Listings: Browse hostels and properties across Southeast Asia.
  • Room Booking: Select rooms, dates, and quantities effortlessly.
  • Experiences: Book local tours and exciting activities alongside your stay.
  • Secure Payments: Integrated with Stripe for secure test-mode transactions.
  • User Authentication: Complete flow for login, registration, and profile management using Supabase Auth.
  • Admin Panel: Comprehensive dashboard to manage properties, rooms, experiences, and track bookings.

Tech Stack

  • Frontend: Next.js 14+ (App Router) + React + TypeScript
  • Styling: Tailwind CSS + Lucide React
  • Database: Supabase (PostgreSQL)
  • Auth: Supabase Auth
  • Payments: Stripe
  • Deployment: Vercel

Architecture

The application leverages the Next.js App Router for server-side rendering and optimized SEO, while relying on Supabase as a Backend-as-a-Service (BaaS) for data and authentication. Payments are securely delegated to Stripe.

graph TD
    Client[Client Browser / Mobile] -->|HTTPS| NextJS[Next.js App Router]
    
    subgraph Frontend & API
        NextJS -->|Server Actions| NextAPI[Next.js API Routes]
        NextJS -->|RSC| UI[React Server Components]
    end

    subgraph Backend Services
        NextJS -.->|Auth & Queries| Supabase[(Supabase PostgreSQL)]
        NextAPI -->|Create Session| Stripe[Stripe Payment Gateway]
        Stripe -.->|Webhooks| NextAPI
    end

    classDef default fill:#f9f9f9,stroke:#333,stroke-width:2px;
    classDef database fill:#e1f5fe,stroke:#0288d1,stroke-width:2px;
    class Supabase database;