PizzaRush - 🍕 Быстрая и вкусная доставка пиццы прямо к вашему порогу. Этот проект создан на основе Next.js с использованием TypeScript.
- Next.js: ⚡ Фреймворк для разработки серверных и клиентских веб-приложений.
- TypeScript: 🛡️ Надежная типизация для предотвращения ошибок.
- Open Graph: 🌐 Настроенные метаданные для улучшения SEO.
- Prisma: 🗂️ ORM для удобной работы с базой данных.
- Tailwind CSS: 🎨 Утилитарный CSS-фреймворк для быстрой стилизации.
- React Hook Form: 📋 Простая и гибкая библиотека для работы с формами.
- Zod: ✅ Библиотека для проверки и типизации данных.
- Shadcn: 🖌️ Модульный дизайн-компонент для создания доступных интерфейсов.
- React Hot Toast: 🔔 Для отображения уведомлений.
- Nodemailer: ✉️ Для отправки email-сообщений.
- Axios: 🌍 HTTP-клиент для работы с API.
- React Insta Stories: 📸 Библиотека для отображения историй, аналогично Instagram Stories.
- Zustand: 🔧 Легковесная библиотека управления состоянием.
- Авторизация через Google и GitHub: 🔑 Поддержка OAuth для упрощения входа пользователей через их аккаунты Google и GitHub.
- Регистрация с подтверждением по электронной почте: 📧 После регистрации пользователи получают письмо с подтверждением для активации своего аккаунта.
- Neon: 🚀 Современный облачный хостинг PostgreSQL. Управление базой данных осуществляется через Neon Console, что позволяет масштабировать и управлять данными с высокой производительностью.
-
Склонируйте репозиторий:
git clone https://github.com/KDF25/nextjs-pizza-delivery.git
-
Перейдите в папку проекта:
cd nextjs-pizza-delivery
-
Установите зависимости:
npm install
-
Создайте файл
.env
и добавьте переменные окружения:POSTGRES_URL= POSTGRES_URL_NON_POOLING= NEXT_PUBLIC_API_URL= NEXT_BASE_URL = MAIL_NAME = MAIL_HOST = MAIL_USER = MAIL_PASS = NEXTAUTH_SECRET = GOOGLE_CLIENT_ID = GOOGLE_CLIENT_SECRET = GITHUB_ID = GITHUB_SECRET =
Для запуска в режиме разработки выполните:
npm run dev
Приложение будет доступно по адресу: http://localhost:3000
Для сборки проекта:
npm run build
Для запуска в продакшен режиме:
npm run start
src/entities
- 🏗️ Описание бизнес-сущностей приложения.src/features
- ⚡ Модули с функциональностью, изолированной по бизнес-логике.src/shared
- 🛠️ Общие модули, используемые в разных частях приложения.src/widgets
- 💡 Модули, объединяющие несколько компонентов для создания законченной функциональности.
npm run dev
- 🚀 Запуск в режиме разработки.npm run build
- 🏗️ Сборка приложения.npm run start
- 🌐 Запуск собранного приложения.npm run lint
- 🔍 Линтинг кода.npm run format
- 🧹 Форматирование кода с помощью Prettier.npm run prisma:generate
- 🔄 Генерация Prisma-клиента.npm run prisma:push
- 📥 Применение изменений в базу данных.npm run prisma:migrate
- 📜 Создание миграций.npm run prisma:studio
- 🖥️ Запуск интерфейса Prisma Studio.npm run prisma:seed
- 🌱 Выполнение файла для начального заполнения базы данных.
- Next.js: ⚡ Фреймворк для серверных и клиентских приложений.
- React: ⚛️ Основной инструмент для разработки пользовательских интерфейсов.
- TypeScript: 🛡️ Добавляет строгую типизацию к JavaScript.
- Prisma: 🗂️ ORM для удобной работы с SQL-базами данных.
- Tailwind CSS: 🎨 Утилитарный CSS-фреймворк для быстрого стилизования.
- Shadcn: 🖌️ Модульный дизайн-компонент для создания доступных интерфейсов.
- React Hot Toast: 🔔 Библиотека для всплывающих уведомлений.
- React Insta Stories: 📸 Библиотека для отображения историй, аналогично Instagram Stories.
- React Hook Form: 📋 Библиотека для работы с формами.
- Zod: ✅ Для проверки и типизации данных.
- Zustand: 🔧 Простая и мощная библиотека для управления состоянием приложения.
- Axios: 🌍 HTTP-клиент для работы с API.
- Nodemailer: ✉️ Для отправки email-сообщений.
- Lucide React: 🎨 Иконки для React.
- Clsx: 🔤 Удобная работа с классами CSS.
- Sass: 💅 Препроцессор для CSS.
Для развертывания можно использовать любую платформу, поддерживающую Next.js (например, Vercel):
- Перейдите на Vercel и создайте новый проект.
- Подключите репозиторий.
- Настройте переменные окружения.
- Нажмите Deploy.
PizzaRush © 2024. Все права защищены.