Skip to content

Latest commit

 

History

History
108 lines (77 loc) · 3.07 KB

File metadata and controls

108 lines (77 loc) · 3.07 KB

Mediterranean Delight 🍽️

Mediterranean Delight is a full-featured restaurant website showcasing authentic Mediterranean cuisine. Built with Next.js 15, it offers an interactive menu, reservation system, and online ordering capabilities, providing a seamless experience for customers.

🌐 Live Preview: mediterranean-delight-next.vercel.app


🚀 Features

  • Interactive Menu: Browse signature dishes with detailed descriptions and pricing.
  • Reservation System: Book tables directly through the website.
  • Online Ordering: Secure checkout powered by Stripe.
  • Authentication: User login and registration with NextAuth.
  • Responsive Design: Optimized for all devices.
  • SEO Friendly: Enhanced visibility on search engines.

🛠️ Tech Stack

  • Framework: Next.js 15.3.1
  • Language: TypeScript
  • Styling: Tailwind CSS 4
  • Database ORM: Prisma 6.6.0
  • Authentication: NextAuth
  • Payment Processing: Stripe
  • Form Handling: React Hook Form, Zod, @hookform/resolvers
  • Email Services: Nodemailer
  • Date Utilities: date-fns

📦 Installation

  1. Clone the repository:

    git clone https://github.com/codedpro/mediterranean-delight-next.git
    cd mediterranean-delight-next
  2. Install dependencies:

    npm install
    # or
    yarn install
  3. Set up environment variables:

    Create a .env.local file and add the necessary environment variables as specified in .env.example.

  4. Generate Prisma client:

    npx prisma generate
  5. Run the development server:

    npm run dev
    # or
    yarn dev

    Open http://localhost:3000 in your browser.


📁 Project Structure

├── components/        # Reusable UI components
├── pages/             # Next.js pages
├── prisma/            # Prisma schema and migrations
├── public/            # Static assets
├── styles/            # Global styles and Tailwind configurations
├── utils/             # Utility functions
├── types/             # TypeScript type definitions
├── .env.example       # Example environment variables
├── tailwind.config.js # Tailwind CSS configuration
└── package.json       # Project metadata and scripts

🧪 Scripts

  • npm run dev – Start the development server
  • npm run build – Build for production
  • npm run start – Start the production server
  • npm run lint – Run ESLint to analyze code quality

🙌 Acknowledgments