├── .env.example ├── .eslintrc.json ├── .gitignore ├── README.md ├── app ├── (auth) │ ├── layout.tsx │ ├── sign-in │ │ ├── credentials-signin-form.tsx │ │ ├── email-signin-form.tsx │ │ ├── google-signin-form.tsx │ │ └── page.tsx │ └── sign-up │ │ ├── page.tsx │ │ └── signup-form.tsx ├── (root) │ ├── @modal │ │ ├── (.)quickview │ │ │ └── product │ │ │ │ └── [slug] │ │ │ │ ├── layout.tsx │ │ │ │ ├── loading.tsx │ │ │ │ ├── page.tsx │ │ │ │ └── reload-button.tsx │ │ └── default.ts │ ├── cart │ │ ├── cart-form.tsx │ │ └── page.tsx │ ├── default.ts │ ├── layout.tsx │ ├── order │ │ └── [id] │ │ │ ├── order-details-form.tsx │ │ │ ├── page.tsx │ │ │ ├── stripe-payment-success │ │ │ └── page.tsx │ │ │ └── stripe-payment.tsx │ ├── page.tsx │ ├── payment-method │ │ ├── page.tsx │ │ └── payment-method-form.tsx │ ├── place-order │ │ ├── page.tsx │ │ └── place-order-form.tsx │ ├── product │ │ └── [slug] │ │ │ ├── page.tsx │ │ │ └── review-list.tsx │ ├── quickview │ │ └── product │ │ │ └── [slug] │ │ │ └── page.tsx │ ├── search │ │ └── page.tsx │ └── shipping-address │ │ ├── page.tsx │ │ └── shipping-address-form.tsx ├── admin │ ├── layout.tsx │ ├── main-nav.tsx │ ├── orders │ │ └── page.tsx │ ├── overview │ │ ├── charts.tsx │ │ └── page.tsx │ ├── products │ │ ├── [id] │ │ │ └── page.tsx │ │ ├── create │ │ │ └── page.tsx │ │ └── page.tsx │ └── users │ │ ├── [id] │ │ ├── page.tsx │ │ └── update-user-form.tsx │ │ └── page.tsx ├── api │ ├── auth │ │ └── [...nextauth] │ │ │ └── route.ts │ ├── uploadthing │ │ ├── core.ts │ │ └── route.ts │ └── webhooks │ │ └── stripe │ │ └── route.ts ├── globals.css ├── icon.svg ├── layout.tsx ├── loading.tsx ├── not-found.tsx └── user │ ├── layout.tsx │ ├── main-nav.tsx │ ├── orders │ └── page.tsx │ └── profile │ ├── page.tsx │ └── profile-form.tsx ├── auth.ts ├── components.json ├── components ├── shared │ ├── admin │ │ └── product-form.tsx │ ├── checkout-steps.tsx │ ├── delete-dialog.tsx │ ├── footer.tsx │ ├── header │ │ ├── cart-button.tsx │ │ ├── index.tsx │ │ ├── menu.tsx │ │ ├── mode-toggle.tsx │ │ ├── search.tsx │ │ └── user-button.tsx │ ├── map.tsx │ ├── pagination.tsx │ ├── product │ │ ├── add-to-cart.tsx │ │ ├── ecommerce-features.tsx │ │ ├── product-card.tsx │ │ ├── product-carousel.tsx │ │ ├── product-images.tsx │ │ ├── product-list.tsx │ │ ├── product-price.tsx │ │ ├── product-promotion.tsx │ │ ├── quickview-modal-wrapper.tsx │ │ └── rating.tsx │ ├── separator-or.tsx │ └── theme-provider.tsx └── ui │ ├── alert-dialog.tsx │ ├── badge.tsx │ ├── button.tsx │ ├── card.tsx │ ├── carousel.tsx │ ├── checkbox.tsx │ ├── dialog.tsx │ ├── drawer.tsx │ ├── dropdown-menu.tsx │ ├── form.tsx │ ├── input.tsx │ ├── label.tsx │ ├── radio-group.tsx │ ├── select.tsx │ ├── skeleton.tsx │ ├── table.tsx │ ├── textarea.tsx │ ├── toast.tsx │ ├── toaster.tsx │ ├── toggle-group.tsx │ ├── toggle.tsx │ └── use-toast.ts ├── db ├── drizzle.ts ├── schema.ts └── seed.ts ├── drizzle.config.ts ├── email ├── index.tsx └── purchase-receipt.tsx ├── lessons ├── 01. introduction.md ├── 02. install tools.md ├── 03. create next app.md ├── 04. create website layout.md ├── 05. list products.md ├── 06. setup drizzle orm and postgres database.md ├── 07. load products from database.md ├── 08. deploy on vercel.md ├── 09. create product details page.md ├── 10. implement authentication.md ├── 11. create new user.md ├── 12. implement add to cart.md ├── 13. create cart page.md ├── 14. get shipping address.md ├── 15. select payment method.md ├── 16. place order.md ├── 17. create order details page.md ├── 18. pay order by paypal.md ├── 19. create orders history page.md ├── 20. update user profile.md ├── 21. create admin dashboard.md ├── 22. admin orders.md ├── 23. mark orders to paid and delivered.md ├── 24. list products.md ├── 25. create update product.md ├── 26. list users.md ├── 27. edit user.md ├── 28. add home page carousel.md ├── 29. create search page.md ├── 30. rate and review products.md ├── 31. add dark and light theme.md ├── 32. pay order by Stripe.md ├── 33. email order receipt by Resend.md ├── 34. signin with magic link.md ├── 35. signin with google.md ├── 36. find shipping address on google map.md ├── 37. add product quick view modal.md └── 38. add promotion and ecom features to home page.md ├── lib ├── actions │ ├── cart.actions.ts │ ├── order.actions.ts │ ├── product.actions.ts │ ├── review.actions.ts │ └── user.actions.ts ├── constants │ └── index.ts ├── paypal.ts ├── sample-data.ts ├── uploadthing.ts ├── utils.ts └── validator.ts ├── middleware.ts ├── next.config.mjs ├── package.json ├── pnpm-lock.yaml ├── postcss.config.mjs ├── public └── assets │ ├── icons │ └── logo.svg │ └── images │ ├── app.jpg │ ├── banner-1.jpeg │ ├── banner-2.jpeg │ ├── p1-1.jpeg │ ├── p1-2.jpeg │ ├── p2-1.jpeg │ ├── p2-2.jpeg │ ├── p3-1.jpeg │ ├── p3-2.jpeg │ ├── p4-1.jpeg │ └── p4-2.jpeg ├── tailwind.config.ts ├── tsconfig.json └── types ├── index.ts └── next-auth.d.ts /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/.env.example -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["eslint:recommended", "next/core-web-vitals"] 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/README.md -------------------------------------------------------------------------------- /app/(auth)/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(auth)/layout.tsx -------------------------------------------------------------------------------- /app/(auth)/sign-in/credentials-signin-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(auth)/sign-in/credentials-signin-form.tsx -------------------------------------------------------------------------------- /app/(auth)/sign-in/email-signin-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(auth)/sign-in/email-signin-form.tsx -------------------------------------------------------------------------------- /app/(auth)/sign-in/google-signin-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(auth)/sign-in/google-signin-form.tsx -------------------------------------------------------------------------------- /app/(auth)/sign-in/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(auth)/sign-in/page.tsx -------------------------------------------------------------------------------- /app/(auth)/sign-up/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(auth)/sign-up/page.tsx -------------------------------------------------------------------------------- /app/(auth)/sign-up/signup-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(auth)/sign-up/signup-form.tsx -------------------------------------------------------------------------------- /app/(root)/@modal/(.)quickview/product/[slug]/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/@modal/(.)quickview/product/[slug]/layout.tsx -------------------------------------------------------------------------------- /app/(root)/@modal/(.)quickview/product/[slug]/loading.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/@modal/(.)quickview/product/[slug]/loading.tsx -------------------------------------------------------------------------------- /app/(root)/@modal/(.)quickview/product/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/@modal/(.)quickview/product/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(root)/@modal/(.)quickview/product/[slug]/reload-button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/@modal/(.)quickview/product/[slug]/reload-button.tsx -------------------------------------------------------------------------------- /app/(root)/@modal/default.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/@modal/default.ts -------------------------------------------------------------------------------- /app/(root)/cart/cart-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/cart/cart-form.tsx -------------------------------------------------------------------------------- /app/(root)/cart/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/cart/page.tsx -------------------------------------------------------------------------------- /app/(root)/default.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/default.ts -------------------------------------------------------------------------------- /app/(root)/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/layout.tsx -------------------------------------------------------------------------------- /app/(root)/order/[id]/order-details-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/order/[id]/order-details-form.tsx -------------------------------------------------------------------------------- /app/(root)/order/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/order/[id]/page.tsx -------------------------------------------------------------------------------- /app/(root)/order/[id]/stripe-payment-success/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/order/[id]/stripe-payment-success/page.tsx -------------------------------------------------------------------------------- /app/(root)/order/[id]/stripe-payment.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/order/[id]/stripe-payment.tsx -------------------------------------------------------------------------------- /app/(root)/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/page.tsx -------------------------------------------------------------------------------- /app/(root)/payment-method/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/payment-method/page.tsx -------------------------------------------------------------------------------- /app/(root)/payment-method/payment-method-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/payment-method/payment-method-form.tsx -------------------------------------------------------------------------------- /app/(root)/place-order/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/place-order/page.tsx -------------------------------------------------------------------------------- /app/(root)/place-order/place-order-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/place-order/place-order-form.tsx -------------------------------------------------------------------------------- /app/(root)/product/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/product/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(root)/product/[slug]/review-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/product/[slug]/review-list.tsx -------------------------------------------------------------------------------- /app/(root)/quickview/product/[slug]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/quickview/product/[slug]/page.tsx -------------------------------------------------------------------------------- /app/(root)/search/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/search/page.tsx -------------------------------------------------------------------------------- /app/(root)/shipping-address/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/shipping-address/page.tsx -------------------------------------------------------------------------------- /app/(root)/shipping-address/shipping-address-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/(root)/shipping-address/shipping-address-form.tsx -------------------------------------------------------------------------------- /app/admin/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/layout.tsx -------------------------------------------------------------------------------- /app/admin/main-nav.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/main-nav.tsx -------------------------------------------------------------------------------- /app/admin/orders/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/orders/page.tsx -------------------------------------------------------------------------------- /app/admin/overview/charts.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/overview/charts.tsx -------------------------------------------------------------------------------- /app/admin/overview/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/overview/page.tsx -------------------------------------------------------------------------------- /app/admin/products/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/products/[id]/page.tsx -------------------------------------------------------------------------------- /app/admin/products/create/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/products/create/page.tsx -------------------------------------------------------------------------------- /app/admin/products/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/products/page.tsx -------------------------------------------------------------------------------- /app/admin/users/[id]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/users/[id]/page.tsx -------------------------------------------------------------------------------- /app/admin/users/[id]/update-user-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/users/[id]/update-user-form.tsx -------------------------------------------------------------------------------- /app/admin/users/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/admin/users/page.tsx -------------------------------------------------------------------------------- /app/api/auth/[...nextauth]/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/api/auth/[...nextauth]/route.ts -------------------------------------------------------------------------------- /app/api/uploadthing/core.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/api/uploadthing/core.ts -------------------------------------------------------------------------------- /app/api/uploadthing/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/api/uploadthing/route.ts -------------------------------------------------------------------------------- /app/api/webhooks/stripe/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/api/webhooks/stripe/route.ts -------------------------------------------------------------------------------- /app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/globals.css -------------------------------------------------------------------------------- /app/icon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/icon.svg -------------------------------------------------------------------------------- /app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/layout.tsx -------------------------------------------------------------------------------- /app/loading.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/loading.tsx -------------------------------------------------------------------------------- /app/not-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/not-found.tsx -------------------------------------------------------------------------------- /app/user/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/user/layout.tsx -------------------------------------------------------------------------------- /app/user/main-nav.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/user/main-nav.tsx -------------------------------------------------------------------------------- /app/user/orders/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/user/orders/page.tsx -------------------------------------------------------------------------------- /app/user/profile/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/user/profile/page.tsx -------------------------------------------------------------------------------- /app/user/profile/profile-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/app/user/profile/profile-form.tsx -------------------------------------------------------------------------------- /auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/auth.ts -------------------------------------------------------------------------------- /components.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components.json -------------------------------------------------------------------------------- /components/shared/admin/product-form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/admin/product-form.tsx -------------------------------------------------------------------------------- /components/shared/checkout-steps.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/checkout-steps.tsx -------------------------------------------------------------------------------- /components/shared/delete-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/delete-dialog.tsx -------------------------------------------------------------------------------- /components/shared/footer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/footer.tsx -------------------------------------------------------------------------------- /components/shared/header/cart-button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/header/cart-button.tsx -------------------------------------------------------------------------------- /components/shared/header/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/header/index.tsx -------------------------------------------------------------------------------- /components/shared/header/menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/header/menu.tsx -------------------------------------------------------------------------------- /components/shared/header/mode-toggle.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/header/mode-toggle.tsx -------------------------------------------------------------------------------- /components/shared/header/search.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/header/search.tsx -------------------------------------------------------------------------------- /components/shared/header/user-button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/header/user-button.tsx -------------------------------------------------------------------------------- /components/shared/map.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/map.tsx -------------------------------------------------------------------------------- /components/shared/pagination.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/pagination.tsx -------------------------------------------------------------------------------- /components/shared/product/add-to-cart.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/add-to-cart.tsx -------------------------------------------------------------------------------- /components/shared/product/ecommerce-features.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/ecommerce-features.tsx -------------------------------------------------------------------------------- /components/shared/product/product-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/product-card.tsx -------------------------------------------------------------------------------- /components/shared/product/product-carousel.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/product-carousel.tsx -------------------------------------------------------------------------------- /components/shared/product/product-images.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/product-images.tsx -------------------------------------------------------------------------------- /components/shared/product/product-list.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/product-list.tsx -------------------------------------------------------------------------------- /components/shared/product/product-price.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/product-price.tsx -------------------------------------------------------------------------------- /components/shared/product/product-promotion.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/product-promotion.tsx -------------------------------------------------------------------------------- /components/shared/product/quickview-modal-wrapper.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/quickview-modal-wrapper.tsx -------------------------------------------------------------------------------- /components/shared/product/rating.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/product/rating.tsx -------------------------------------------------------------------------------- /components/shared/separator-or.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/separator-or.tsx -------------------------------------------------------------------------------- /components/shared/theme-provider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/shared/theme-provider.tsx -------------------------------------------------------------------------------- /components/ui/alert-dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/alert-dialog.tsx -------------------------------------------------------------------------------- /components/ui/badge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/badge.tsx -------------------------------------------------------------------------------- /components/ui/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/button.tsx -------------------------------------------------------------------------------- /components/ui/card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/card.tsx -------------------------------------------------------------------------------- /components/ui/carousel.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/carousel.tsx -------------------------------------------------------------------------------- /components/ui/checkbox.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/checkbox.tsx -------------------------------------------------------------------------------- /components/ui/dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/dialog.tsx -------------------------------------------------------------------------------- /components/ui/drawer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/drawer.tsx -------------------------------------------------------------------------------- /components/ui/dropdown-menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/dropdown-menu.tsx -------------------------------------------------------------------------------- /components/ui/form.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/form.tsx -------------------------------------------------------------------------------- /components/ui/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/input.tsx -------------------------------------------------------------------------------- /components/ui/label.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/label.tsx -------------------------------------------------------------------------------- /components/ui/radio-group.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/radio-group.tsx -------------------------------------------------------------------------------- /components/ui/select.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/select.tsx -------------------------------------------------------------------------------- /components/ui/skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/skeleton.tsx -------------------------------------------------------------------------------- /components/ui/table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/table.tsx -------------------------------------------------------------------------------- /components/ui/textarea.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/textarea.tsx -------------------------------------------------------------------------------- /components/ui/toast.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/toast.tsx -------------------------------------------------------------------------------- /components/ui/toaster.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/toaster.tsx -------------------------------------------------------------------------------- /components/ui/toggle-group.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/toggle-group.tsx -------------------------------------------------------------------------------- /components/ui/toggle.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/toggle.tsx -------------------------------------------------------------------------------- /components/ui/use-toast.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/components/ui/use-toast.ts -------------------------------------------------------------------------------- /db/drizzle.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/db/drizzle.ts -------------------------------------------------------------------------------- /db/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/db/schema.ts -------------------------------------------------------------------------------- /db/seed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/db/seed.ts -------------------------------------------------------------------------------- /drizzle.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/drizzle.config.ts -------------------------------------------------------------------------------- /email/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/email/index.tsx -------------------------------------------------------------------------------- /email/purchase-receipt.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/email/purchase-receipt.tsx -------------------------------------------------------------------------------- /lessons/01. introduction.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/01. introduction.md -------------------------------------------------------------------------------- /lessons/02. install tools.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/02. install tools.md -------------------------------------------------------------------------------- /lessons/03. create next app.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/03. create next app.md -------------------------------------------------------------------------------- /lessons/04. create website layout.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/04. create website layout.md -------------------------------------------------------------------------------- /lessons/05. list products.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/05. list products.md -------------------------------------------------------------------------------- /lessons/06. setup drizzle orm and postgres database.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/06. setup drizzle orm and postgres database.md -------------------------------------------------------------------------------- /lessons/07. load products from database.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/07. load products from database.md -------------------------------------------------------------------------------- /lessons/08. deploy on vercel.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/08. deploy on vercel.md -------------------------------------------------------------------------------- /lessons/09. create product details page.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/09. create product details page.md -------------------------------------------------------------------------------- /lessons/10. implement authentication.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/10. implement authentication.md -------------------------------------------------------------------------------- /lessons/11. create new user.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/11. create new user.md -------------------------------------------------------------------------------- /lessons/12. implement add to cart.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/12. implement add to cart.md -------------------------------------------------------------------------------- /lessons/13. create cart page.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/13. create cart page.md -------------------------------------------------------------------------------- /lessons/14. get shipping address.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/14. get shipping address.md -------------------------------------------------------------------------------- /lessons/15. select payment method.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/15. select payment method.md -------------------------------------------------------------------------------- /lessons/16. place order.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/16. place order.md -------------------------------------------------------------------------------- /lessons/17. create order details page.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/17. create order details page.md -------------------------------------------------------------------------------- /lessons/18. pay order by paypal.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/18. pay order by paypal.md -------------------------------------------------------------------------------- /lessons/19. create orders history page.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/19. create orders history page.md -------------------------------------------------------------------------------- /lessons/20. update user profile.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/20. update user profile.md -------------------------------------------------------------------------------- /lessons/21. create admin dashboard.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/21. create admin dashboard.md -------------------------------------------------------------------------------- /lessons/22. admin orders.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/22. admin orders.md -------------------------------------------------------------------------------- /lessons/23. mark orders to paid and delivered.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/23. mark orders to paid and delivered.md -------------------------------------------------------------------------------- /lessons/24. list products.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/24. list products.md -------------------------------------------------------------------------------- /lessons/25. create update product.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/25. create update product.md -------------------------------------------------------------------------------- /lessons/26. list users.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/26. list users.md -------------------------------------------------------------------------------- /lessons/27. edit user.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/27. edit user.md -------------------------------------------------------------------------------- /lessons/28. add home page carousel.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/28. add home page carousel.md -------------------------------------------------------------------------------- /lessons/29. create search page.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/29. create search page.md -------------------------------------------------------------------------------- /lessons/30. rate and review products.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/30. rate and review products.md -------------------------------------------------------------------------------- /lessons/31. add dark and light theme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/31. add dark and light theme.md -------------------------------------------------------------------------------- /lessons/32. pay order by Stripe.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/32. pay order by Stripe.md -------------------------------------------------------------------------------- /lessons/33. email order receipt by Resend.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/33. email order receipt by Resend.md -------------------------------------------------------------------------------- /lessons/34. signin with magic link.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/34. signin with magic link.md -------------------------------------------------------------------------------- /lessons/35. signin with google.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/35. signin with google.md -------------------------------------------------------------------------------- /lessons/36. find shipping address on google map.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/36. find shipping address on google map.md -------------------------------------------------------------------------------- /lessons/37. add product quick view modal.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/37. add product quick view modal.md -------------------------------------------------------------------------------- /lessons/38. add promotion and ecom features to home page.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lessons/38. add promotion and ecom features to home page.md -------------------------------------------------------------------------------- /lib/actions/cart.actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/actions/cart.actions.ts -------------------------------------------------------------------------------- /lib/actions/order.actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/actions/order.actions.ts -------------------------------------------------------------------------------- /lib/actions/product.actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/actions/product.actions.ts -------------------------------------------------------------------------------- /lib/actions/review.actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/actions/review.actions.ts -------------------------------------------------------------------------------- /lib/actions/user.actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/actions/user.actions.ts -------------------------------------------------------------------------------- /lib/constants/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/constants/index.ts -------------------------------------------------------------------------------- /lib/paypal.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/paypal.ts -------------------------------------------------------------------------------- /lib/sample-data.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/sample-data.ts -------------------------------------------------------------------------------- /lib/uploadthing.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/uploadthing.ts -------------------------------------------------------------------------------- /lib/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/utils.ts -------------------------------------------------------------------------------- /lib/validator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/lib/validator.ts -------------------------------------------------------------------------------- /middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/middleware.ts -------------------------------------------------------------------------------- /next.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/next.config.mjs -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /postcss.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/postcss.config.mjs -------------------------------------------------------------------------------- /public/assets/icons/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/icons/logo.svg -------------------------------------------------------------------------------- /public/assets/images/app.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/app.jpg -------------------------------------------------------------------------------- /public/assets/images/banner-1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/banner-1.jpeg -------------------------------------------------------------------------------- /public/assets/images/banner-2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/banner-2.jpeg -------------------------------------------------------------------------------- /public/assets/images/p1-1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/p1-1.jpeg -------------------------------------------------------------------------------- /public/assets/images/p1-2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/p1-2.jpeg -------------------------------------------------------------------------------- /public/assets/images/p2-1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/p2-1.jpeg -------------------------------------------------------------------------------- /public/assets/images/p2-2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/p2-2.jpeg -------------------------------------------------------------------------------- /public/assets/images/p3-1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/p3-1.jpeg -------------------------------------------------------------------------------- /public/assets/images/p3-2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/p3-2.jpeg -------------------------------------------------------------------------------- /public/assets/images/p4-1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/p4-1.jpeg -------------------------------------------------------------------------------- /public/assets/images/p4-2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/public/assets/images/p4-2.jpeg -------------------------------------------------------------------------------- /tailwind.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/tailwind.config.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/tsconfig.json -------------------------------------------------------------------------------- /types/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/types/index.ts -------------------------------------------------------------------------------- /types/next-auth.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basir/next-pg-shadcn-ecommerce/HEAD/types/next-auth.d.ts --------------------------------------------------------------------------------