Database Setup

Follow these steps to set up the Inn of Joy database.

Step 1: Create Database Tables
Copy the SQL below and run it in your Supabase Dashboard > SQL Editor
-- Run this SQL in your Supabase Dashboard > SQL Editor

-- Create rooms table
CREATE TABLE IF NOT EXISTS rooms (
  id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
  room_name TEXT NOT NULL,
  slug TEXT UNIQUE NOT NULL,
  description TEXT DEFAULT '',
  price_per_night INTEGER NOT NULL,
  max_guests INTEGER NOT NULL DEFAULT 2,
  amenities JSONB DEFAULT '[]'::jsonb,
  images JSONB DEFAULT '[]'::jsonb,
  is_active BOOLEAN DEFAULT true,
  created_at TIMESTAMPTZ DEFAULT now(),
  updated_at TIMESTAMPTZ DEFAULT now()
);

-- Create inquiries table
CREATE TABLE IF NOT EXISTS inquiries (
  id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
  full_name TEXT NOT NULL,
  phone TEXT NOT NULL,
  email TEXT,
  check_in DATE NOT NULL,
  check_out DATE NOT NULL,
  room_type TEXT,
  num_guests INTEGER DEFAULT 1,
  special_requests TEXT,
  status TEXT DEFAULT 'New',
  created_at TIMESTAMPTZ DEFAULT now(),
  updated_at TIMESTAMPTZ DEFAULT now()
);

-- Create indexes for common queries
CREATE INDEX IF NOT EXISTS idx_rooms_slug ON rooms(slug);
CREATE INDEX IF NOT EXISTS idx_rooms_active ON rooms(is_active);
CREATE INDEX IF NOT EXISTS idx_inquiries_status ON inquiries(status);
CREATE INDEX IF NOT EXISTS idx_inquiries_created ON inquiries(created_at DESC);

-- Disable RLS for simplicity (enable with policies later if needed)
ALTER TABLE rooms ENABLE ROW LEVEL SECURITY;
ALTER TABLE inquiries ENABLE ROW LEVEL SECURITY;

-- Allow all operations via service role (API uses service role key)
CREATE POLICY "Allow all for service role" ON rooms FOR ALL USING (true) WITH CHECK (true);
CREATE POLICY "Allow all for service role" ON inquiries FOR ALL USING (true) WITH CHECK (true);
Open Supabase SQL Editor →
Step 2: Verify Tables
Check if the tables were created successfully.
Step 3: Seed Room Data
Add sample rooms to get started quickly.
Step 4: Create Admin Account
Create an admin user to manage the hotel dashboard.

After completing all steps, visit the homepage or admin login.

Call Now