# 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 cd vine_hotel ``` 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 deployed as a static site. To deploy: 1. Build the production bundle: ```bash cd client npm run build ``` 2. Upload the contents of `client/build/` to your web server's `public_html` directory. 3. Ensure `.htaccess` is included for proper routing. ## πŸ“„ License MIT License --- **Note**: This repository contains only the frontend/website code. The CMS/backend code is excluded from this repository.