Skip to content

lizmery/ecommerce-app

Repository files navigation

Ecommerce App

A fully functional e-commerce shop where the products are only viewable by registered customers. This fullstack app features two separate dashboards based on the user role (customer vs admin). Customers can edit their profile, access the products page, purchase and download paid-for products, and view all of their orders. Admins can add, edit, and delete products, delete and view all users, edit user roles, and view all customers and sales/orders.

View Live

Technologies Used

  • Next.js 14
  • Typescript
  • TailwindCSS
  • Auth.js
  • Stripe
  • Prisma
  • Vercel Postgres
  • Vercel Blob Storage
  • Shadcn UI (Components)
  • Resend (Emails)
  • Zod (Validation Library)

Features

  • Admin and Customer Dashboard
  • Authentication, Authorization, and Session Management (Auth.js)
  • Checkout using Stripe
  • Send Emails w/ Resend
  • Product Downloads
  • Product Image & Product File Uploads (admin users only)
  • Input Validation w/ Zod
  • CRUD Operations

Screenshots

Home Page

screencapture-ecommerce-app-dun-omega-vercel-app-2024-06-29-13_21_40 (1)

Customer Dashboard

Screen Shot 2024-06-29 at 3 40 27 PM

Admin Dashboard

screencapture-ecommerce-app-dun-omega-vercel-app-admin-2024-06-29-15_44_06 Screen Shot 2024-06-29 at 3 44 38 PM

Future Implementations

  • “Forgot Password” functionality
  • Shopping Cart: ability to purchase more than one product at a time
  • Customer Dashboard: ability to edit profile image
  • Admin Dashboard: ability to add new users
  • Implement a rewards program feature