├── client ├── vercel.json ├── postcss.config.js ├── public │ ├── favicon.ico │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── images │ │ ├── pizza.png │ │ ├── screen1.png │ │ ├── chef-pizza.png │ │ └── pizza-jumbo-bg.jpg │ ├── apple-touch-icon.png │ ├── android-chrome-192x192.png │ ├── android-chrome-512x512.png │ ├── vite.svg │ └── site.webmanifest ├── tailwind.config.js ├── src │ ├── App.jsx │ ├── components │ │ ├── layout │ │ │ ├── Layout.jsx │ │ │ └── Footer.jsx │ │ └── ui │ │ │ ├── PizzaMenu │ │ │ ├── PizzaList.jsx │ │ │ └── PizzaItem.jsx │ │ │ ├── Admin │ │ │ ├── Dashboard │ │ │ │ ├── SideBar │ │ │ │ │ ├── SideBarToggleButton.jsx │ │ │ │ │ └── SideBar.jsx │ │ │ │ ├── InventoryTable.jsx │ │ │ │ ├── MainContent.jsx │ │ │ │ └── Lists │ │ │ │ │ ├── UsersList.jsx │ │ │ │ │ ├── StaffList.jsx │ │ │ │ │ ├── PizzasList.jsx │ │ │ │ │ └── InventoryList.jsx │ │ │ └── Auth │ │ │ │ ├── LoginForm.jsx │ │ │ │ └── RegisterForm.jsx │ │ │ ├── Cart │ │ │ ├── CartButton.jsx │ │ │ ├── AddToCartButton.jsx │ │ │ └── CartModal │ │ │ │ ├── CartItemList.jsx │ │ │ │ └── CartModal.jsx │ │ │ ├── Loader.jsx │ │ │ ├── CheckoutSteps │ │ │ ├── CurrentCheckoutStep.jsx │ │ │ ├── RazorPayPaymentButton.jsx │ │ │ ├── PaymentStep.jsx │ │ │ └── ShippingStep.jsx │ │ │ ├── Profile │ │ │ ├── Profile.jsx │ │ │ ├── ProfileBtnAndDropOnNav.jsx │ │ │ └── EditProfileForm.jsx │ │ │ ├── Button.jsx │ │ │ ├── Home │ │ │ ├── Jumbotron.jsx │ │ │ ├── FeaturedPizzasSection.jsx │ │ │ └── HowItWorksSection.jsx │ │ │ ├── Message.jsx │ │ │ ├── Auth │ │ │ ├── ForgetPassword │ │ │ │ ├── EmailForm.jsx │ │ │ │ ├── OTPForm.jsx │ │ │ │ └── PasswordForm.jsx │ │ │ ├── UserLoginForm.jsx │ │ │ └── VerficationModal.jsx │ │ │ └── UserOrdersTable.jsx │ ├── index.css │ ├── redux │ │ ├── store.js │ │ ├── slices │ │ │ ├── pizzaSlice.js │ │ │ ├── inventorySlice.js │ │ │ └── orderSlice.js │ │ └── asyncThunks │ │ │ ├── pizzaThunks.js │ │ │ ├── inventoryThunks.js │ │ │ └── orderThunks.js │ ├── screens │ │ ├── HomeScreen.jsx │ │ ├── User │ │ │ ├── ForgetPasswordScreen.jsx │ │ │ ├── UserLoginScreen.jsx │ │ │ ├── UserRegisterScreen.jsx │ │ │ ├── CheckoutScreen.jsx │ │ │ ├── UserOrdersScreen.jsx │ │ │ └── ProfileScreen.jsx │ │ ├── Admin │ │ │ ├── AdminLoginScreen.jsx │ │ │ ├── AdminRegisterScreen.jsx │ │ │ └── AdminDashboardScreen.jsx │ │ ├── AboutScreen.jsx │ │ └── MenuScreen.jsx │ └── main.jsx ├── README.md ├── .eslintrc.cjs ├── package.json ├── index.html └── vite.config.js ├── server ├── vercel.json ├── utils │ ├── generateToken.js │ └── inventoryUtils.js ├── schemas │ ├── adminUserSchema.js │ ├── pizzaSchema.js │ ├── userSchema.js │ ├── inventorySchema.js │ └── orderSchema.js ├── config │ └── db.js ├── middlewares │ ├── errorMiddlewares.js │ ├── nodemailerMiddleware.js │ └── authMiddlewares.js ├── routes │ ├── pizzaRoutes.js │ ├── inventoryRoutes.js │ ├── orderRoutes.js │ ├── adminUserRoutes.js │ └── userRoutes.js ├── package.json ├── data │ ├── users.js │ ├── pizzas.js │ └── inventory.js ├── seeder.js └── index.js ├── .gitignore └── package.json /client/vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "routes": [{ "src": "/[^.]+", "dest": "/", "status": 200 }] 3 | } 4 | -------------------------------------------------------------------------------- /client/postcss.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /client/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/favicon.ico -------------------------------------------------------------------------------- /client/public/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/favicon-16x16.png -------------------------------------------------------------------------------- /client/public/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/favicon-32x32.png -------------------------------------------------------------------------------- /client/public/images/pizza.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/images/pizza.png -------------------------------------------------------------------------------- /client/public/images/screen1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/images/screen1.png -------------------------------------------------------------------------------- /client/public/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/apple-touch-icon.png -------------------------------------------------------------------------------- /client/public/images/chef-pizza.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/images/chef-pizza.png -------------------------------------------------------------------------------- /client/public/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/android-chrome-192x192.png -------------------------------------------------------------------------------- /client/public/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/android-chrome-512x512.png -------------------------------------------------------------------------------- /client/public/images/pizza-jumbo-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itxSaaad/pizza-palette-app-mern-OIBSIP-task-1/HEAD/client/public/images/pizza-jumbo-bg.jpg -------------------------------------------------------------------------------- /server/vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 2, 3 | "builds": [{ "src": "index.js", "use": "@vercel/node" }], 4 | "routes": [{ "src": "/(.*)", "dest": "/index.js" }] 5 | } 6 | -------------------------------------------------------------------------------- /client/tailwind.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | export default { 3 | content: ['./index.html', './src/**/*.{js,ts,jsx,tsx}'], 4 | theme: { 5 | extend: {}, 6 | }, 7 | plugins: [], 8 | }; 9 | -------------------------------------------------------------------------------- /client/src/App.jsx: -------------------------------------------------------------------------------- 1 | import { Outlet } from 'react-router-dom'; 2 | 3 | import Layout from './components/layout/Layout'; 4 | 5 | function App() { 6 | return ( 7 | 8 | 9 | 10 | ); 11 | } 12 | 13 | export default App; 14 | -------------------------------------------------------------------------------- /client/src/components/layout/Layout.jsx: -------------------------------------------------------------------------------- 1 | import PropTypes from 'prop-types'; 2 | 3 | import Footer from './Footer'; 4 | import MainNavBar from './MainNavBar'; 5 | 6 | function Layout({ children }) { 7 | return ( 8 | <> 9 | 10 | {children} 11 |