Skip to content

woxer77/pizza

Repository files navigation


Logo

Pizza Store

An interactive pizza ordering platform that allows users to build custom pizzas by choosing dough, size, and ingredients. Users can filter, sort, and search products, add items to the cart, order without signing in, and pay through a real payment provider, with SSR ensuring instant product display and modal product views for a seamless experience.

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Usage
  3. Roadmap
  4. Contact

About The Project

Pizza Store Screen Shot

Pizza Store is a modern web platform designed to make ordering pizza convenient, interactive, and personalized. Users can build custom pizzas, choose dough, size, and ingredients, browse ready-made options, and complete orders quickly with or without an account.

Key Features:

  • Interactive main page with instant product display using SSR, filters, sorting, and search for easy navigation between products.
  • Custom pizza builder allowing users to select dough, size, and ingredients to create their own unique pizzas.
  • Shopping cart with the ability to place orders without registration, or securely log in via NextAuth for a personalized experience.
  • Real payment integration for seamless and secure checkout.
  • Modal product views implemented with parallel routes for quick previews without leaving the page.
  • Intuitive interface design focused on user experience, making browsing, selecting, and ordering pizzas fast and enjoyable.
  • Fully responsive layout powered by TailwindCSS, ensuring a smooth experience across devices.

Built With

  • TypeScript
  • Next.js
  • Prisma
  • TailwindCSS
  • shadcn-ui
  • NextAuth
  • Zustand

(back to top)

Usage

1. Open the Website

Visit the platform in your browser.

2. Choose a Pizza or Product

Browse the available pizzas and select one you like.

  • Click on the pizza card to open a modal window and create a custom pizza.

3. Build a Custom Pizza

In the modal (or dedicated page), customize your pizza by selecting:

  • Dough type: Traditional or Thin
  • Size: 20, 25, 30, or 35 cm
  • Additional ingredients: Choose any toppings you like

Once satisfied, add the pizza to your cart.

pizza-modal-customizer

4. Manage Your Cart

Open the sidebar of the cart by clicking on the corresponding button in the upper right corner of the main page (in the header). Add the desired quantity of products and review your selections in the cart before proceeding to checkout.

5. Checkout and Payment

Fill in all required fields on the checkout page, including delivery and contact information.
Click Pay to be redirected to the payment provider. Confirm your payment to complete the order.

6. Track Your Order

After payment, you can view the status of your order on the corresponding page to see updates until it is delivered.

(back to top)

Roadmap

  • Next.js parallel routes modal
  • Orders for unauthorized guests
  • Create admin dashboard
  • Add different images for each pizza size
  • Implement user profile with order history and re-order option

(back to top)

Contact

Denis Ohrimenko - woxer77@gmail.com

Project Link: https://github.com/woxer77/pizza

(back to top)

About

An e-commerce platform with dynamic pizza customization, secure payment, and server-side logic on Next.js

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published