Skip to content

Omar-Abuzaid-stack/bin-thani-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Bin Thani Real Estate Website

A luxury real estate website built with React, Node.js, and SQLite.

Features

  • 🏠 Property Listings with advanced filtering
  • 🤖 AI Chatbot with CRM lead capture
  • 📊 Google Sheets CRM Integration
  • 🌍 Multi-language Support (English/Arabic with RTL)
  • 📱 Responsive Design
  • 🧮 Mortgage Calculator
  • 📍 Google Maps Integration

Quick Start

Frontend

cd client
npm install
npm run dev

Backend

cd server
npm install
node index.js

The website will be available at:

Google Sheets CRM Setup

To enable Google Sheets integration for leads:

  1. Create a Google Cloud Project:

  2. Enable APIs:

    • Enable Google Sheets API
    • Enable Google Drive API
  3. Create Service Account:

    • Go to IAM & Admin > Service Accounts
    • Create a new service account with "Editor" role
    • Generate a new JSON key
  4. Download Credentials:

    • Save the JSON file as credentials.json in the server/ folder
  5. Create Google Sheet:

    • Create a new Google Sheet
    • Copy the spreadsheet ID from the URL (between /d/ and /edit)
    • Share the sheet with your service account email (found in credentials.json)
  6. Configure Environment:

    cd server
    cp .env.example .env  # if exists
    # Edit .env and add:
    GOOGLE_SHEET_ID=your_spreadsheet_id_here
  7. Run Setup Script:

    node setup-google-sheets.js

Language Toggle

The website supports English and Arabic with full RTL layout:

  • Click the globe icon in the navbar to switch languages
  • Language preference is saved in localStorage

Tech Stack

  • Frontend: React, Vite, Framer Motion
  • Backend: Node.js, Express, SQLite
  • AI: Mistral API for chatbot

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors