An open API service indexing awesome lists of open source software.

https://github.com/codedpro/mediterranean-delight-next

Mediterranean Delight โ€“ A modern restaurant website built with Next.js 15, Tailwind CSS, and Prisma. Features include an interactive menu, reservation system, and Stripe integration for online ordering.
https://github.com/codedpro/mediterranean-delight-next

next-auth nextjs online-ordering prisma react-hook-form reservation-system restaurant-website stripe tailwindcss typescript zod

Last synced: 7 months ago
JSON representation

Mediterranean Delight โ€“ A modern restaurant website built with Next.js 15, Tailwind CSS, and Prisma. Features include an interactive menu, reservation system, and Stripe integration for online ordering.

Awesome Lists containing this project

README

          

# 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](https://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**:

```bash
git clone https://github.com/codedpro/mediterranean-delight-next.git
cd mediterranean-delight-next
```

2. **Install dependencies**:

```bash
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**:

```bash
npx prisma generate
```

5. **Run the development server**:

```bash
npm run dev
# or
yarn dev
```

Open [http://localhost:3000](http://localhost:3000) in your browser.

---

## ๐Ÿ“ Project Structure

```bash
โ”œโ”€โ”€ 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

- [Next.js](https://nextjs.org/) โ€“ The React Framework
- [Tailwind CSS](https://tailwindcss.com/) โ€“ Utility-first CSS framework
- [Prisma](https://www.prisma.io/) โ€“ Next-generation ORM
- [Stripe](https://stripe.com/) โ€“ Payment processing platform
- [NextAuth](https://next-auth.js.org/) โ€“ Authentication for Next.js
- [React Hook Form](https://react-hook-form.com/) โ€“ Form state management
- [Zod](https://zod.dev/) โ€“ TypeScript-first schema validation