The Old Vine Hotel - Website
A modern, responsive hotel website built with React.js, featuring multilingual support (English, Arabic, French) and a fully static deployment.
🌐 Live Website
✨ Features
- 🎨 Modern, responsive design
- 🌐 Multilingual support (EN, AR, FR)
- 🏨 Room gallery with categories
- 📸 Photo galleries (Hotel & Restaurant)
- 📍 Contact page with Google Maps
- 📱 Mobile-optimized
- ⚡ Fully static (no backend required)
- 🎯 SEO-friendly
🛠️ Technology Stack
- Frontend: React.js with Material-UI
- Routing: React Router DOM
- Internationalization: i18next
- Styling: Material-UI (MUI) components
- Build Tool: Create React App
- Deployment: Static hosting (cPanel/GoDaddy)
📁 Project Structure
vine_hotel/
├── client/ # React frontend
│ ├── public/ # Static assets (images, JSON data)
│ ├── src/ # Source code
│ │ ├── components/ # Reusable components
│ │ ├── pages/ # Page components
│ │ ├── locales/ # Translation files
│ │ └── utils/ # Utilities
│ └── build/ # Production build (generated)
├── docs/ # Documentation
└── scripts/ # Build/deployment scripts
🚀 Getting Started
Prerequisites
- Node.js (v16 or higher)
- npm or yarn
Installation
-
Clone the repository
git clone https://github.com/t-sharabi/oldvine.git cd oldvine -
Install dependencies
cd client npm install -
Start development server
npm startThe website will open at
http://localhost:3060
Building for Production
cd client
npm run build
The production build will be in client/build/ directory.
📝 Content Management
The website uses static JSON files for content, located in:
client/public/static-data/- Content data filesclient/src/locales/- Translation files
To update content:
- Edit the JSON files in
client/public/static-data/ - Edit translations in
client/src/locales/ - Rebuild the site:
npm run build
🌍 Languages
- English (en) - Default
- Arabic (ar) - العربية
- French (fr) - Français
Users can switch languages using the language selector in the header.
📦 Deployment
The website is fully portable and can be deployed to any static hosting service.
Quick Deploy (3 Steps)
-
Clone and build:
git clone https://github.com/t-sharabi/oldvine.git cd oldvine/client npm install npm run build -
Upload
client/build/contents to your web server -
Done! The website is live.
Supported Hosting Services
✅ cPanel/Shared Hosting (GoDaddy, Bluehost, etc.)
✅ VPS/Cloud Servers (DigitalOcean, AWS, Azure)
✅ Static Hosting (Netlify, Vercel, GitHub Pages)
✅ CDN Services (Cloudflare Pages, AWS S3 + CloudFront)
Detailed Deployment Guide
See DEPLOYMENT_GUIDE.md for:
- Step-by-step instructions for each hosting type
- Server configuration (Apache, Nginx, IIS)
- Troubleshooting tips
- Post-deployment verification checklist
📄 License
MIT License
Note: This repository contains only the frontend/website code. The CMS/backend code is excluded from this repository.