# 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 **https://oldvinehotel.com** ## ✨ 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 1. **Clone the repository** ```bash git clone https://github.com/t-sharabi/oldvine.git cd oldvine ``` 2. **Install dependencies** ```bash cd client npm install ``` 3. **Start development server** ```bash npm start ``` The website will open at `http://localhost:3060` ### Building for Production ```bash 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 files - `client/src/locales/` - Translation files To update content: 1. Edit the JSON files in `client/public/static-data/` 2. Edit translations in `client/src/locales/` 3. 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) 1. **Clone and build:** ```bash git clone https://github.com/t-sharabi/oldvine.git cd oldvine/client npm install npm run build ``` 2. **Upload `client/build/` contents** to your web server 3. **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](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.