Skip to content

A classical ecommerce app with features such as authentication, product search and filter, cart, orders, reviews, editing profile, and contact customer service.

Notifications You must be signed in to change notification settings

nikkizhou/Nikkis-EShop

Repository files navigation

Motivation

The motivation for this classical ecommerce app is to build a bigger project where I get to practice what I've learnt and in the same time add new techs (docker, AWS, prisma...) I've been interested in.

Tech stack:

Typescript, Nextjs, React, ReduxToolKit, Auth0, Prisma, PostgreSQL,
Docker: Containerizing the app, easier for development
AWS RDS: Running postgresSQL
AWS s3: Storing Users' profile photos
Nodemailer: Sending user feedback from contact page & Sending order info to user from cart page


Features

Product Page:

 ✔️ Search products by keyword
 ✔️ Filter products by categories
 ✔️ Add product to cart
 ✔️ Check reviews for one product

Cart Page:

 ✔️ Remove product or change quantity

For logged in users For unauthenticated users
✔️ Cart items are stored in: Database Local Storage
✔️ After checking out, the order info will be: Added to user's profile page Sent to user's email

Contact Page:

 ✔️ The user feedback will be sent to an email

Profile Page:

 ✔️ View and modify user profile
 ✔️ View shopping history (orders)
 ✔️ Rate/add review for a specific product in the user's orders


Learnings:

  • See the big picture:
    In the planning stage of the project, it's wise to think about which techs/frameworks would fit better considering the size and other aspects of the project. For example if to use statemanagement tools like redux or useContext
  • Think out of the box:
    Sometimes when a problem shows up it could be tricky to check only the error message. Sometimes the cause of the error could be something totally irrelavent to the error message.

Future Features:

⬜ Business side
⬜ CMS - contentful
⬜ Stripe for simulating payment
⬜ Upgrade to Nextjs 13

About

A classical ecommerce app with features such as authentication, product search and filter, cart, orders, reviews, editing profile, and contact customer service.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages