Le Dream

le-dream-img

Le Dream — Hotel Website (React + Vite)

A modern, responsive hotel website built with React, Vite, and Tailwind CSS. It demonstrates a production-like front-end for showcasing rooms, amenities, and multilingual content with smooth carousels and a clean UI.

<!-- Badges -->

Vite React

Demo

Live demo: https://le-dream.vercel.app/

What the project does

  • Provides a single-page application (SPA) showcasing a hotel's pages: Home, Rooms, Amenities, Explore, Bar & Resto, Contact, and Legal pages.
  • Client-side routing with react-router-dom.
  • Multilingual UI powered by i18next and react-i18next.
  • Image carousels using swiper and icons via lucide-react.
  • Toast notifications using react-toastify.

Why this is useful

  • Good starter template for hospitality websites and marketing landing pages.
  • Demonstrates internationalization (i18n) in a React app.
  • Built with modern tooling: Vite, Tailwind, and React 19.
  • Easy to extend for booking integrations, CMS, or headless backends.

Key features

  • Multilanguage support (English, Chinese, Japanese)
  • Responsive layout and optimized images
  • Reusable UI components under src/assets/components
  • Sectioned pages that are straightforward to adapt or extend

Quick Start

Prerequisites:

  • Node.js 18+ (or a recent LTS)
  • npm, Yarn, or PNPM

Clone and run locally:

git clone https://github.com/yourusername/le-dream.git
cd le-dream
npm install
npm run dev

Open your browser to http://localhost:5173.

Available npm scripts (from package.json):

  • npm run dev — Start the Vite development server
  • npm run build — Build the production bundle
  • npm run preview — Preview the production build locally
  • npm run lint — Run ESLint

Project structure (high level)

  • src/ — Source code

    • assets/components/ — Reusable UI components (Header, Footer, Carousel, etc.)
    • assets/pages/ — Page components (Home, Rooms, Explore, etc.)
    • sections/ — Page sections used to compose pages
    • locales/ — Translation JSON files
    • i18n.js — i18next initialization
  • public/ — Static files and thumbnails

  • vite.config.js — Vite configuration

  • package.json — Project metadata and scripts

Usage examples

Import and use a component (example):

import { BookButton } from './src/assets/components/buttons/BookButton'

export default function Demo() {
  return <BookButton />
}

Switching languages is handled via i18next; see src/i18n.js and src/locales/*.json for available translations.

Where to get help

  • Open an issue on GitHub: https://github.com/yourusername/le-dream/issues
  • Email the maintainer: rashidvisda@gmail.com

Contributing

Contributions are welcome. See CONTRIBUTING.md for a short checklist and how to open a PR.

Notes:

  • Keep changes focused and follow the existing code style (ESLint + Prettier + Tailwind order).
  • Large refactors should be discussed in an issue first.

Maintainers

  • Primary contact: rashidvisda@gmail.com